Обновить php с 5.2.14 (скомпилировано из исходного кода) до 5.3 (через yum install)

Я предварительно настроил свой сервер, загрузив php с php.net и используя команду make, установив make install, чтобы установить его на мой сервер apache centos.

Теперь я хочу обновить, и я не уверен, как это сделать.

Если я сделаю то, что сказано здесь: http://www.webtatic.com/packages/php53/ Он попытается обновить php до 5.3.8. это не проблема для меня, но я обеспокоен тем, что это не будет работать, потому что у меня php 5.2.14 установлен через компиляцию, а не через YUM

Что я должен сделать - есть ли способ сохранить текущее состояние сервера, чтобы отменить изменения в случае его поломки?

У кого-нибудь есть опыт с этим?

Спасибо

Джейсон

2 ответа

Решение

Если вы хотите переключиться на поддерживаемые пакеты, то после компиляции из исходного кода безопаснее всего сначала удалить все файлы из предыдущей установки. Обратите внимание, что некоторые из этих файлов могли быть отредактированы вами (например, php.ini) поэтому сначала вы должны сделать резервную копию всех из них.

Для этого загрузите оригинальный исходный код (5.2.14), скомпилируйте и установите его снова, но на этот раз выполните команду configure с --prefix=/home/jason/build/ и создать build/ каталог в вашем доме. Когда ты бежишь make installвсе файлы будут установлены в каталог сборки. Бег cd ~/build/; find . -type f > ~/php-5.2.14-file-list.txt предоставит вам список всех файлов, которые вы установили при первоначальной компиляции PHP.

После того, как вы удалили все эти файлы, проверьте все каталоги, которые он установил (cd ~/build/; find . -type d) и для каждого из них, если он пуст, вы можете удалить его.

После этого вы можете безопасно переключаться на RPM, не опасаясь установки двух разных версий PHP по разным путям в вашей системе.

Не рекомендуется устанавливать один и тот же пакет дважды: один из исходного кода и один из yum. В этом случае пакет может быть установлен в двух разных местах (дубликаты файлов). Это может вызвать у вас проблемы и замешательство.

Я предлагаю вам попробовать обновить его, загрузив новый исходный код и собрав его, как вы делали это раньше. Ваша система не будет изменена, если вы не введете make install,

Другие вопросы по тегам