Зависание на “Тестирование запущенной транзакции” при попытке установить php-soap

Вопрос или проблема

У меня есть CentOS 5, и я пытаюсь выполнить yum install php-soap, но установщик повисает, и последний шаг – Running Transaction Test.

Я выяснил, что проблема в NFS-шарах. Смотрите здесь или здесь или здесь. Я пытался размонтировать все, что появилось при вводе cat /etc/mtab | grep nfs. Я также пытался использовать umount -a -t nfs. Затем я выполнил команду установки. Но это не сработало.

strace yum -y update показывает мне много строк, но я не могу из этого получить смысл.

Кроме того, я пробовал

/bin/rm /var/lib/rpm/__db.*
cd /var/cache/yum
/bin/rm -rf *
yum clean all
yum update

но все еще повисает.

Мне нужно удалить монтирования с другого сервера к этой машине?

Просто выполните эти шаги:
1. Убейте все процессы RPM и yum (rhn_check, yum, rpm, rhn-applet):

ps -axwww | grep rpm

В списке процессов первое число в каждой строке – это PID. Для всех перечисленных PID, кроме связанного с grep:

kill -9

Повторите вышеописанные шаги для каждой из перечисленных программ.

  1. Удалите любые файлы блокировки RPM (/var/lib/rpm/__db*):

rm -rf /var/lib/rpm/__db*

  1. Пересоберите базу данных RPM:

rpm –rebuilddb

Хорошего времени.

Ответ или решение

При установке пакета php-soap на CentOS 5 с помощью команды yum install php-soap, иногда возникает проблема, когда установка зависает на этапе "Running Transaction Test". Это довольно распространенная ситуация, которая может быть вызвана различными факторами, в частности, использованием NFS (Network File System).

Проблема

Ваша проблема, похоже, связана с зависанием процесса, который отвечает за проверку транзакции. Это часто происходит из-за того, что система пытается получить доступ к файлам на NFS-ресурсах, которые могут быть временно недоступны или вызывают конфликты. Ваша попытка размонтировать NFS-ресурсы не решила проблему, что указывает на более серьезные неисправности в системной конфигурации или в самом yum/rpm.

Решение

Чтобы устранить эту проблему, выполните следующие шаги:

  1. Завершите все процессы RPM и YUM:

    • Введите команду:
      ps -axwww | grep rpm

      Это покажет вам список процессов RPM. Обратите внимание на PID (идентификатор процесса) всех ненужных процессов и завершите их, используя:

      kill -9 <PID>
  2. Удалите файлы блокировки RPM:

    • Эти файлы могут мешать нормальной работе системы. Для их удаления выполните:
      rm -rf /var/lib/rpm/__db*
  3. Перестройте базу данных RPM:

    • После удаления файлов блокировки вам следует восстановить базу данных RPM, выполнив команду:
      rpm --rebuilddb
  4. Очистите кэш yum:

    • Возможно, потребуется очистить кэш yum, поскольку устаревшие или поврежденные метаданные могут вызвать проблемы. Для этого используйте:
      yum clean all
  5. Попробуйте переустановить пакет:

    • После выполнения вышеуказанных действий попробуйте снова установить пакет:
      yum install php-soap

Дополнительные советы

  • Проверка NFS: Возможно, стоит проверить, стабильны ли NFS-монтирования. Если сервер, на котором расположен NFS, временно недоступен, это может вызвать зависания.

  • Логи: Проверьте системные журналы (/var/log/messages или /var/log/yum.log), поскольку в них могут быть указаны причины, по которым yum не может завершить операцию.

  • Обновление системного ПО: Учитывая, что вы используете устаревшую версию CentOS 5, рассмотрите возможность обновления системы до более новой версии. Это обеспечит не только исправление ошибок в пакетах, но и улучшит безопасность системы.

Заключение

Если после выполнения всех указанных шагов проблема все еще не решена, возможно, стоит рассмотреть возможности использования альтернативных инструментов для управления пакетами, таких как dnf в новых версиях CentOS, или обратиться в специализированные форумы для получения дополнительной помощи.

Оцените материал
Добавить комментарий

Капча загружается...