Откуда в Ubuntu 16.04 берется файл /etc/php/7.0/apache2/php.ini?
dpkg -S /etc/php/7.0/apache2/php.ini
ничего не возвращает.
dpkg -S /etc/php/7.0/apache2/
показывает, что каталог установлен пакетом libapache2-mod-php7.0, но
dpkg-query -L libapache2-mod-php7.0
не упоминает "php.ini". Я предполагаю, что этот файл копируется во время процесса после установки. Есть ли способ определить, при какой установке пакета создается этот файл?
Когда вы часто ищете, как что-то попало в вашу систему, вы можете просто попробовать такую команду grep 'php.ini' /var/lib/dpkg/info/*
. В /var/lib/dpkg/info/
содержит файлы, относящиеся к пакетам, которые включают packagename.list
который используется dpkg -S, packagename.conffiles
который представляет собой список конфигураций и файлов для различных сценариев до / после установки / удаления, таких как packagename.actionname
.
# grep 'php.ini' /var/lib/dpkg/info/*
/var/lib/dpkg/info/libapache2-mod-php7.0.postinst: phpini="/etc/php/7.0/apache2/php.ini"
/var/lib/dpkg/info/libapache2-mod-php7.0.postinst: ucf /usr/lib/php/7.0/php.ini-production.apache2 $phpini
/var/lib/dpkg/info/libapache2-mod-php7.0.postinst: ucf /usr/lib/php/7.0/php.ini-production $phpini
/var/lib/dpkg/info/libapache2-mod-php7.0.postrm: phpini=/etc/php/7.0/apache2/php.ini
/var/lib/dpkg/info/php7.0-cli.postinst: phpini="/etc/php/7.0/cli/php.ini"
...
# cat /var/lib/dpkg/info/libapache2-mod-php7.0.postinst
...
if [ "$1" = "configure" ]; then
phpini="/etc/php/7.0/apache2/php.ini"
if [ "apache2" = "cli" ]; then
ucf /usr/lib/php/7.0/php.ini-production.apache2 $phpini
else
ucf /usr/lib/php/7.0/php.ini-production $phpini
fi
ucfr libapache2-mod-php7.0 $phpini
...
В любом случае для этого конкретного запроса мы видим, что php.ini добавляется через UCF из /usr/lib/php/7.0/php.ini-production
. UCF - один из немногих инструментов, которые могут использоваться пакетами Debian для поддержки файлов конфигурации. UCF может принимать некоторые значения от пользователей для объединения, он может обнаруживать и автоматически обновлять или объединять конфигурации в некоторых ситуациях и т. Д.