Мне пришлось удалить phpmyadmin с рабочего сервера, чтобы найти его и использовать его:
sudo dpkg -P phpmyadmin
Ну, это работало нормально, но, похоже, все остальные в Ubuntu вместо этого используют продувку
sudo apt-get purge phpmyadmin
Я сделал что-то не так? Любые последствия, о которых я должен знать (в конце концов, это мой рабочий сервер). Все ли биты phpmyadmin действительно удалены через dpkg -P?
dpkg
и apt-get
- это 2 разных способа установки программного обеспечения. В основном, apt-get, aptitude и synaptic построены поверх программы управления пакетами dpkg в Debian. Все они выполняют одну и ту же основную функцию - управление пакетами, но имеют некоторые дополнительные функции. Одна из дополнительных возможностей apt-get заключается в том, что он устанавливает зависимости, а dpkg - нет.
Относительно -p / purge ...
-P
в dpkg
означает --purge
и удалит все, включая расчеты и файлы конфигурации. Из руководства:
-r, --remove, -P, --purge package...|-a|--pending
Remove an installed package. -r or --remove remove everything
except conffiles. This may avoid having to reconfigure the pack‐
age if it is reinstalled later. (Conffiles are configuration
files that are listed in the DEBIAN/conffiles control file). -P
or --purge removes everything, including conffiles. If -a or
--pending is given instead of a package name, then all packages
unpacked, but marked to be removed or purged in file
/var/lib/dpkg/status, are removed or purged, respectively. Note:
some configuration files might be unknown to dpkg because they
are created and handled separately through the configuration
scripts. In that case, dpkg won't remove them by itself, but the
package's postrm script (which is called by dpkg), has to take
care of their removal during purge. Of course, this only applies
to files in system directories, not configuration files written
to individual users' home directories.
Removing of a package consists of the following steps:
1. Run prerm script
2. Remove the installed files
3. Run postrm script
То же самое относится к purge
в apt-get
.
remove
remove is identical to install except that packages are removed
instead of installed. Note the removing a package leaves its
configuration files in system. If a plus sign is appended to the
package name (with no intervening space), the identified package
will be installed instead of removed.
purge
purge is identical to remove except that packages are removed and
purged (any configuration files are deleted too).
В основном это тот же вариант. Имейте в виду: удаление зависимостей не происходит с dpkg. apt-get удаляет зависимости
Документация из комментариев Лекенштейна: