Как полностью удалить библиотеки php?

хотя это может показаться четкая идея, на самом деле существует неоднозначность в понимании пользователя. Это учетная запись Пользователя, намеренно скрытых от экрана входа в систему, потому что он используется только для специальных целей (но человеком) человека-пользователя? Как насчет [ф11] пользователя (uid 999) на альбоме? И гостевая учетная запись в Ubuntu создаются на лету и уничтожены после выхода; они люди? Больше примеров может быть найдено.

, следовательно, это логично, что несколько неэквивалентных ответы уже даны. Решение сейдж Хэмблин бега [ф12] люди пользователя делать, и если вы пишете сценарий, вы должны, вероятно, просто использовать, что.

, что делает [от f13] более надежные

но, возможно, у вас есть пользователи, которые были удалены, но чьи домашние каталоги все еще существуют в [ф14], и вы должны избегать их перечисление. Или может по каким другим причинам необходимо обеспечить только записи в [ф15], которым соответствуют реальные счета перечислены.

в таком случае, я предлагаю передает имена все в [ф16] в решение Сейдж Хэмблин это!Д3] (для получения [ф18] записи пользователей с такими именами), а затем выделить и отобразить только поле "имя пользователя" (с [зг19], [20 фунтов] или [клавиши f21], в соответствии с вашими предпочтениями). Любой из этих:

[Ф1] [Ф2] [Ф3]

это должно работать так, как Вы не должны иметь учетные записи пользователей с пробелом или управляющие символы в их именах; [зг19]; и если вы это сделаете, у вас большие проблемы. Таким образом, обычные проблемы с парсингом [ф22] неприменимы. Но даже если это действительно так вот, если вы считаете команду замены с [ф23] неэстетичных или просто плохая привычка, возможно, Вы предпочтете:

[Ф4] [ф5] [ф6]

это не учесть пробелы и управляющие символы либо. Я обеспечиваю их только потому, что [ф24] выглядит не так, даже когда это правильно, и так натирает многие пользователи неправильно. обычные проблемы с парсингом [ф22] не, и в тех ситуациях, разборе [ф26] обычно только чуть меньше плохого. В этой ситуации, однако, в связи с ограничением на то, что символы могут возникать практически в имена, они оба в порядке.

объяснение, преимущества, и недостатки

я использую getent в основном потому, что она принимает имя пользователя в качестве аргумента, чтобы запретить его выход, но и потому, что это немного более универсальный, чем изучение [ф28] напрямую, в случае проверки подлинности объектов и пароль базы данных, предоставляются услуги сети.

этот метод имеет дополнительное преимущество над ls /home, что в системах с отдельным [ф30] раздела [ф31] обычно появляется при выходе [f32 из].

с тем более надежный способ представлен выше, lost+found появится только если есть пользователь (человек или нет) под названием lost+found, что маловероятно. Но если вы вводите команду, а не писать сценарий, [ф35] прекрасно-вы знаете, у вас нет пользователя под названием [f36 в].

нечасто, этот метод (в любой из указанных выше вариантов) будет производить неудовлетворительный выход:

с более надежный способ представлен выше, lost+found появится только если есть пользователь (человек или нет) под названием lost+found, что маловероятно. если вы создали дополнительные каталоги в [f39 расстройства], что на самом деле не кто-нибудь домашнем каталоге пользователя, и они имеют такое же имя, как существующей не-человека-потребителя ... или состоят из слов, разделенных пробелами, одно или более из которых имеет то же имя, что существующий нечеловеческих пользователей-тогда какая-то негуманоидная пользователи могут быть включены в выходные данные. (Этот метод может быть реализован с помощью цикла и отдельных [ф40] вызовы, так что разбиение не дает ложных вывода. Но сложность не является оправданным; принципиально, если вы используете [ф41] как нечто иное, чем место для домашних каталогов пользователей, этот метод не будет производить надежную продукцию.)

делает жидкости проверять проще

если вы решите пойти с методом, который проверяет идентификаторы пользователей, чтобы они в вероятном диапазоне для организаций, представляющих людей, как принято отвечать или [ф20], то я предлагаю это для краткости:

[ф7]

это использует принято отвечать (-P), чтобы показать:

[и D40] если вы создали дополнительные каталоги в [f39 расстройства], что на самом деле не кто-нибудь домашнем каталоге пользователя, и они имеют такое же имя, как существующей не-человека-потребителя ... или состоят из слов, разделенных пробелами, одно или более из которых имеет то же имя, что существующий нечеловеческих пользователей-тогда какая-то негуманоидная пользователи могут быть включены в выходные данные. (Этот метод может быть реализован с помощью цикла и отдельных [ф40] вызовы, так что разбиение не дает ложных вывода. Но сложность не является оправданным; принципиально, если вы используете [ф41] как нечто иное, чем место для домашних каталогов пользователей, этот метод не будет производить надежную продукцию.) но если вы вводите команду, а не писать сценарий, [ф35] нормально ... ты знаешь, у тебя нет пользователя под названием [f36 в]. и поля uid, состоящее из 4 цифр (:\d{4}:). [!и D40]

это, таким образом, значительно короче и несколько проще вариант техники в принятой ответ. (Метод, описанный там нормально работает, и у него есть преимущество портативный номера – систем GNU/Linux, чей [f55, которая] не поддерживает -P.)

пересмотреть "человека" ЮИД диапазоне

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

возможный компромисс в списке пользователей в диапазоне от жидкости, которые на самом деле будучи назначен на вновь созданный, не"система" пользователей. Вы можете проверить это в [от f60]:

[ф8]

есть два способа, чтобы список пользователей, чьи идентификаторы в диапазоне от 1000 до 29999:

на [F9] [F10]для

1
задан 24 August 2017 в 22:57

4 ответа

aptitude является альтернативой apt-get, что упрощает сопоставление нескольких имен пакетов с использованием шаблонов с регулярным выражением.

Например, чтобы просмотреть все установленные пакеты, имена пакетов которых содержат термин " php ":

aptitude search ~iphp
Редактировать: при использовании оболочки zsh процитируйте аргумент, чтобы он не разбился на тильде:
sudo aptitude search "~iphp"

Или удалить их:

sudo aptitude remove ~iphp

или

sudo aptitude purge ~iphp

Обратитесь к этой ссылке для получения дополнительной информации о синтаксисе поиска aptitude.

Примечание: aptitude является более мощным, чем apt-get, и поэтому делает вам легче надеть систему. Всегда проверяйте, какие пакеты он планирует удалить, установить или понизить, прежде чем подтвердить, что он должен идти дальше. Например, иногда, чтобы удовлетворить ваш запрос на удаление пакета, aptitude нужно будет удалить кучу других пакетов, которые зависят от него.

Если вам интересно, что вызвало установку пакетов php в в первую очередь, вы можете выполнить некоторые детективные работы, выполнив поиск обратных зависимостей для пакета: какие пакеты зависят от пакета. Рекомендуемые зависимости устанавливаются по умолчанию, но можно переопределить это и установить пакет без зависимостей «рекомендует» или удалить некоторые «рекомендации» без удаления исходного пакета.

Чтобы отобразить пакеты, которые в настоящее время которые также зависят от, скажем, php5-fpm:

aptitude why php5-fpm

Это должно работать большую часть времени, но по разным причинам иногда может быть невозможно, чтобы система сообщила, что вызвало автоматически установлена ​​- возможно, это было когда-то зависимость от чего-то, но после обновления она больше не зависела и т. д.

Если вы получаете command not found при попытке использовать aptitude, вам нужно установить его на свой системы, например:

sudo apt-get install aptitude

Примечание: в прошлом было общеизвестно, что люди не должны использовать apt-get и aptitude взаимозаменяемо, чтобы фактически модифицировать систему, поскольку они не могли отслеживать которые были автоматически установлены друг на друга. Это уже не проблема (как минимум 3 года назад), и оба они используют тот же способ записи, какие пакеты были автоматически установлены.

зависят от

3
ответ дан 24 May 2018 в 06:21
  • 1
    Тестирование этих команд в zsh, я получаю ошибку zsh: no such user or named directory: iphp - вам нужно указать " ~iphp. – Wilf 7 July 2014 в 09:15

вы можете использовать чистку, autoremove & amp; remove 'я использую autoremove в качестве примера для этого'

$ sudo apt-get autoremove php*

вы также можете использовать aptitude

$ sudo aptitude remove php*

проверить установленные пакеты

$ sudo apt-cahe policy php*
[d3 ], если все они отсутствуют, поэтому все приложения php не установлены

, если есть установленный пакет, вы можете удалить его с помощью

$ sudo apt-get autoremove 'packagename'
1
ответ дан 24 May 2018 в 06:21

Используйте эту команду для своей проблемы:

sudo apt-get -y purge php*
0
ответ дан 24 May 2018 в 06:21
  • 1
    OP уже попробовал sudo apt-get remove php*, который является той же командой с другим вариантом, и привел к ошибке из-за расширения zsh, отличного от bash, так что это, скорее всего, закончится той же ошибкой. Кроме того, использование -y - не очень хорошая идея, так как хорошо проверить, что делает apt, прежде чем он делает что-то глупое ... – Wilf 7 July 2014 в 08:35

Если у вас есть Apache (или какой-либо другой веб-сервер), вы можете поместить этот код в корневой каталог Apache (обычно / var / www /) в файл с именем [somename] .php:

<?php

        phpinfo();

?>

Затем вы можете получить к нему доступ из веб-браузера, перейдя в http://localhost/[somename].php. Если этот файл запущен, он сообщит вам, если и какая версия php установлена ​​в системе. Вы также можете запустить эту команду:

apt-cache policy php5

, чтобы узнать, установлен ли ваш php5.

Если эти команды показывают, что php установлен, вы можете удалить его, используя:

apt-get purge php*

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

-1
ответ дан 24 May 2018 в 06:21
  • 1
    Это не отвечает на вопрос: OP уже знает, что установлен php5-fpm - сам пакет php5 может быть установлен или не установлен вместе с ним, но это не имеет значения. – thomasrutter 7 July 2014 в 09:16

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

Похожие вопросы: