
При необходимости очистки системы от PHP важно учитывать, что в Ubuntu этот язык может быть установлен сразу в нескольких версиях и с различными модулями. Простое удаление пакета php не гарантирует полного удаления всех зависимостей и конфигурационных файлов.
Для корректного удаления потребуется использовать apt с ключами remove или purge, проверять список установленных расширений и сопутствующих пакетов, а также очищать конфигурацию веб-сервера, если PHP был интегрирован в Apache или Nginx.
Важно также уделить внимание файлам в каталогах /etc/php/, которые могут сохраняться даже после деинсталляции. Их ручное удаление гарантирует отсутствие конфликтов при установке новой версии или при переходе на альтернативные технологии.
Отключение сторонних репозиториев с PHP

Многие устанавливают PHP через PPA, например ppa:ondrej/php. Чтобы исключить дальнейшие обновления из этого источника, нужно отключить репозиторий.
Проверьте список подключённых репозиториев:
ls /etc/apt/sources.list.d/
Файлы с упоминанием php или ondrej относятся к стороннему PPA. Их можно временно деактивировать, изменив расширение:
sudo mv /etc/apt/sources.list.d/ondrej-ubuntu-php*.list /etc/apt/sources.list.d/ondrej-ubuntu-php*.list.disabled
После этого обновите индекс пакетов:
sudo apt update
Если требуется полностью удалить репозиторий, используйте:
sudo add-apt-repository --remove ppa:ondrej/php
Проверка после удаления выполняется командой:
apt policy | grep php
При отсутствии упоминаний стороннего PPA система будет использовать только стандартные репозитории Ubuntu.
Удаление пакетов PHP через apt
Для удаления установленных пакетов PHP используется пакетный менеджер apt. Перед началом желательно проверить список установленных модулей:
dpkg -l | grep php
Чтобы удалить базовый интерпретатор PHP определённой версии:
sudo apt remove php8.1
Если нужно удалить все связанные пакеты:
sudo apt remove 'php*'
После удаления пакетов рекомендуется очистить неиспользуемые зависимости:
sudo apt autoremove
Полное удаление с конфигурационными файлами выполняется так:
sudo apt purge 'php*'
Порядок действий:
- Посмотреть установленные модули с помощью
dpkg -l | grep php. - Удалить отдельные версии или все пакеты через
apt removeилиapt purge. - Запустить
apt autoremoveдля очистки зависимостей. - Проверить результат повторным вызовом
dpkg -l | grep php.
Очистка зависимостей и ненужных библиотек

После удаления пакетов PHP в системе могут оставаться зависимости, которые больше не используются. Чтобы освободить место, выполните:
Автоматическое удаление пакетов:
sudo apt autoremove --purge
Эта команда удалит библиотеки, установленные вместе с PHP, но не требуемые другими приложениями.
Очистка кэша пакетов:
sudo apt clean
Данный шаг стирает все загруженные архивы из /var/cache/apt/archives, что может вернуть сотни мегабайт.
Проверка оставшихся библиотек:
dpkg -l | grep php
sudo apt purge имя_пакета
Удаление конфигураций:
sudo rm -rf /etc/php
Команда уберёт каталоги с настройками, которые не стираются автоматически при удалении пакетов.
Удаление конфигурационных файлов PHP
После удаления пакетов PHP в системе остаются каталоги и конфигурационные файлы, которые не удаляются автоматически. Чтобы полностью очистить систему, необходимо удалить их вручную.
- Основные конфигурации находятся в
/etc/php/. Для каждой установленной версии создаётся отдельная папка:/etc/php/7.4/,/etc/php/8.1/и т.д. - Внутри каждой версии имеются подкаталоги
apache2,cli,fpmи другие. Они содержат файлыphp.ini, а также директорииconf.dс модулями.
Удалите все версии конфигураций одной командой:
sudo rm -rf /etc/php/
Дополнительно проверьте наличие остаточных файлов:
/var/lib/php/– временные файлы сессий./var/log/php*– журналы работы./usr/lib/php/– служебные скрипты и расширения.
Очистите их вручную, если они больше не нужны:
sudo rm -rf /var/lib/php/ /var/log/php* /usr/lib/php/
После этих действий в системе не останется ни конфигураций, ни вспомогательных каталогов PHP.
Проверка отсутствия PHP после удаления

Для подтверждения, что PHP полностью удалён, выполните команду:
php -v
Дополнительно проверьте, что пакеты PHP не установлены:
dpkg -l | grep php
Отсутствие строк в результате указывает на удаление всех связанных компонентов.
При использовании apt можно убедиться в чистоте системы командой:
apt list —installed | grep php
Если PHP применялся с Apache или Nginx, проверьте отсутствие модулей:
apache2ctl -M | grep php и nginx -V 2>&1 | grep php
Нулевой результат поиска гарантирует отсутствие подключённых расширений.
Удаление оставшихся директорий и логов PHP

После удаления пакетов PHP на Ubuntu могут остаться конфигурационные файлы, директории с кэшем и логи. Для их полного удаления выполните проверку стандартных путей:
| Директория/Файл | Описание | Команда для удаления |
|---|---|---|
| /etc/php/ | Основные конфигурационные файлы PHP, версии 7.x и 8.x | sudo rm -rf /etc/php/ |
| /var/log/php* | Логи ошибок и предупреждений PHP | sudo rm -f /var/log/php* |
| /var/lib/php/ | Сессионные файлы и кэш | sudo rm -rf /var/lib/php/ |
| /usr/lib/php/ | Модули и расширения PHP, установленные через пакетный менеджер | sudo rm -rf /usr/lib/php/ |
| /usr/share/php/ | Общие библиотеки PHP и зависимости для скриптов | sudo rm -rf /usr/share/php/ |
После удаления директорий рекомендуется очистить остаточные ссылки в системных пакетах:
sudo apt autoremove --purge
Для проверки оставшихся файлов можно использовать команду поиска:
sudo find / -name '*php*' -type f
Все найденные файлы, относящиеся к удаленным версиям PHP, безопасно удаляются через rm. Это обеспечит полное очищение системы от старых конфигураций и логов.
Вопрос-ответ:
Как полностью удалить PHP с Ubuntu без оставления конфигурационных файлов?
Чтобы удалить PHP полностью, сначала нужно определить установленные версии с помощью команды php -v или dpkg —get-selections | grep php. После этого выполняют удаление пакетов через sudo apt purge php* и затем очищают ненужные зависимости с помощью sudo apt autoremove. Важно также проверить наличие конфигурационных директорий, например /etc/php/, и при необходимости удалить их вручную.
Что произойдет с веб-сервером Apache после удаления PHP?
После удаления PHP модули, которые отвечают за обработку скриптов PHP, будут удалены. Apache продолжит работать, но при попытке открыть PHP-страницы сервер будет выдавать ошибки или показывать код скрипта как текст. Чтобы вернуть обработку PHP, потребуется установить другую версию или заново настроить модули.
Можно ли удалить только определённую версию PHP, оставив другие установленные версии?
Да, Ubuntu позволяет удалить отдельные версии PHP. Для этого нужно использовать команду вроде sudo apt purge php7.4*, если требуется удалить версию 7.4. Остальные версии при этом останутся нетронутыми. После удаления желательно проверить, какая версия активна с помощью update-alternatives —config php и при необходимости перенастроить выбор.
Какие риски существуют при удалении PHP с системы, на которой работают сайты?
Основной риск заключается в том, что сайты и приложения на PHP перестанут работать, пока не будет установлена другая версия. Также возможны проблемы с зависимостями: некоторые пакеты могут требовать PHP для работы. Чтобы избежать сбоев, рекомендуется заранее проверить, какие сервисы используют PHP, и сделать резервные копии конфигураций и данных.
Как проверить, что PHP полностью удалён после выполнения команд удаления?
Проверку проводят несколькими способами. Во-первых, команда php -v не должна возвращать информацию о версии. Во-вторых, можно использовать dpkg —get-selections | grep php — список пакетов должен быть пустым. Также полезно проверить директории /etc/php/ и /usr/lib/php/; если они удалены или пусты, значит остаточных файлов нет.
Как полностью удалить PHP из Ubuntu, чтобы не осталось конфликтов с другими версиями?
Чтобы удалить PHP полностью, сначала нужно остановить веб-сервер и все связанные службы, использующие PHP. Затем через терминал выполняют команду `sudo apt purge php*`, которая удаляет все пакеты PHP, включая модули. После этого полезно выполнить `sudo apt autoremove` для очистки неиспользуемых зависимостей. Наконец, проверяют отсутствие PHP командой `php -v`, чтобы убедиться, что интерпретатор больше не установлен.
После удаления PHP в Ubuntu остались конфигурационные файлы. Как от них избавиться?
Даже после удаления пакетов конфигурационные файлы могут сохраняться. Их можно удалить вручную. Обычно они находятся в папках `/etc/php/` и `/var/lib/php/`. Для очистки можно использовать команды `sudo rm -rf /etc/php/` и `sudo rm -rf /var/lib/php/`. После этого проверяют, что все файлы удалены, чтобы избежать конфликтов при установке другой версии PHP в будущем.
