Я просто пошел дальше и добавил PHP7 на свой сервер, следуя руководству, используя PPA ondej. Теперь я хочу удалить старый php, так что я, очевидно, сделал sudo apt-get remove --purge php5
, и казалось, что все прошло хорошо, за исключением того, что он не удален. Если я делаю php -v
, я получаю версию 7, но я все еще могу сделать php5 -v
и получить 5.6 или php5.6 -v
и получить то же самое. Когда я делаю sudo apt-get remove php5
(или php5.6), теперь получаю, что пакет не установлен, но, очевидно, так как я могу выполнить команду.
x@x-server:~$ php -v
PHP 7.0.6-1+donate.sury.org~trusty+1 (cli) ( NTS )
Copyright (c) 1997-2016 The PHP Group
Zend Engine v3.0.0, Copyright (c) 1998-2016 Zend Technologies
with Zend OPcache v7.0.6-dev, Copyright (c) 1999-2016, by Zend Technologies
x@x-server:~$ php5 -v
PHP 5.6.21-1+donate.sury.org~trusty+1 (cli)
Copyright (c) 1997-2016 The PHP Group
Zend Engine v2.6.0, Copyright (c) 1998-2016 Zend Technologies
with Zend OPcache v7.0.6-dev, Copyright (c) 1999-2016, by Zend Technologies
x@x-server:~$ php5.6 -v
PHP 5.6.21-1+donate.sury.org~trusty+2 (cli)
Copyright (c) 1997-2016 The PHP Group
Zend Engine v2.6.0, Copyright (c) 1998-2016 Zend Technologies
with Zend OPcache v7.0.6-dev, Copyright (c) 1999-2016, by Zend Technologies
x@x-server:~$ sudo apt-get remove --purge php5 php5.6
Reading package lists... Done
Building dependency tree
Reading state information... Done
Package 'php5.6' is not installed, so not removed
Package 'php5' is not installed, so not removed
0 upgraded, 0 newly installed, 0 to remove and 3 not upgraded.
x@x-server:~$
Как я могу полностью удалить php5?
И только потому, что я знаю, что кто-то спросит - я хочу удалить его, потому что я вижу, что из-за него запущены некоторые процессы, которые я не могу хочу иметь.
1192 root 20 0 358756 30920 23568 S 0.0 2.1 0:00.12 apache2
1238 root 20 0 309316 29708 23448 S 0.0 2.0 0:00.11 php-fpm7.0
1176 root 20 0 166212 17848 14408 S 0.0 1.2 0:00.07 php-fpm5.6
1226 www-data 20 0 359312 15488 7656 S 0.0 1.1 0:00.09 apache2
1227 www-data 20 0 359008 14028 6380 S 0.0 1.0 0:00.00 apache2
1228 www-data 20 0 359008 13496 5856 S 0.0 0.9 0:00.00 apache2
1229 www-data 20 0 358788 9324 1964 S 0.0 0.6 0:00.00 apache2
1230 www-data 20 0 358788 9324 1964 S 0.0 0.6 0:00.00 apache2
1377 www-data 20 0 358788 9324 1964 S 0.0 0.6 0:00.00 apache2
1242 www-data 20 0 309316 8496 2236 S 0.0 0.6 0:00.00 php-fpm7.0
1243 www-data 20 0 309316 8496 2236 S 0.0 0.6 0:00.00 php-fpm7.0
1299 root 20 0 105680 6540 5468 S 0.0 0.4 0:00.06 sshd
1178 www-data 20 0 166212 5580 2140 S 0.0 0.4 0:00.00 php-fpm5.6
1179 www-data 20 0 166212 5580 2140 S 0.0 0.4 0:00.00 php-fpm5.6
Пакет, названный php5
или php5.6
, является просто метапакетом, который вытягивает один из доступных веб-SAPIs (apache2, fpm или cgi). Самый легкий путь, как удалить полную стопку пакетов, состоит в том, чтобы удалить php5-common
и/или php5.6-common
пакет, поскольку все остальное зависит от него, например:
apt-get purge php5-common
другая опция состояла бы в том, чтобы использовать подстановочную поддержку в apt-get
и сделать:
apt-get purge 'php5*'
Попытайтесь работать склонный - добираются, автоудаляют. Я думаю, что Вы видите, Диспетчер процессов FastCGI, который, возможно, был установлен с базовым PHP5, но не удален как часть удаления. Сбой настолько склонного - добирается, удаляют php5.6-fpm - чистка - автоудаляет. Вы уже работаете, v7 fpm так не должен видеть отрицательные воздействия.
Можно полностью удалить все пакеты PHP с этой командой:
sudo apt-get purge `dpkg -l | grep php| awk '{print $2}' |tr "\n" " "`