Искажение rm
опасно. Как только Вы находитесь на 'поле, которому не настраивали те псевдонимы, Вы нанесете некоторый ущерб.
До "предотвращают меня от случайного удаления каталога", это - цель -r
флаг для начала.
Не переопределяйте команды как этот, Вы никогда не знаете то, что сценарии предположений собираются сделать. Если Вы должны, выбрать имя кроме rm
, иначе измените что-то в своем рабочем процессе, который препятствует тому, чтобы Вы использовали rm -rf
с игнорированием.
Если это правда, то что такого особенного в dpkg, что недоступно с другими командами?
Другие команды не являются заменой пакетного менеджера, вот что делает dpkg таким особенным. Вы действительно можете извлечь содержимое всего пакета и бросить его в корневую директорию, но это не значит, что они будут работать правильно. У вас нет возможности отслеживать зависимости, определять, какой пакет установил какие файлы, сценарии установки и удаления после/предварительной установки и многие другие изящные возможности, которые предоставляют менеджеры пакетов.
В этом параграфе они имели в виду, что в случае большой ошибки вы можете загрузить файлы, извлечь их и восстановить систему, как импровизированную замену нужному инструменту:
Это на первый взгляд тривиальное свойство важно для переносимости и аварийного восстановления
Таким образом, важность DPKG велика, но они ввели средства защиты от сбоев, чтобы в случае аварии вы могли довольно быстро восстановиться.
.В Руководстве администратора Debian сказано:
К счастью, вы знаете формат пакета и поэтому можете скачать .deb-файл пакета dpkg и установить его вручную...
Это значит, что deb-файлы можно скачать вручную (или скопировать с носителя), а затем установить вручную, извлекая файлы из deb-файла с помощью tar, gzip,.... (в случае отсутствия программы dpkg)
Вы спрашиваете:
Если это правда, что такого особенного в dpkg, что недоступно с другими командами?
Со страницы dpkg man page:
dpkg - это утилита для установки, сборки, удаления и управления пакетами Debian.
Из man-страницы tar:
Tar хранит и извлекает файлы из ленточного или дискового архива.
Из man-страницы gzip:
Gzip уменьшает размер именованных файлов с помощью кодирования Lempel-Ziv. (LZ77)
Итак, вкратце dpkg позволяет распаковывать и извлекать, а также запускать сценарии установки, проверять зависимости между пакетами, удалять пакеты, очищать конфигурационные файлы... и многое другое.
Это означает, что если вы удалите dpkg
, вы можете скачать его .deb
файл из репозитория и вручную распаковать и установить dpkg
.deb
файл. Но вы должны использовать dpkg
для поддержки базы данных пакетного менеджера. Используя ar
и tar
и gzip
, база данных менеджера пакетов (apt
) не обновляется, чтобы отразить изменения.
Для поддержания стабильной системы, пожалуйста, используйте dpkg
, если нет абсолютной необходимости.
По сути, так происходит начальная настройка: все пакеты с пометкой Essential
и их зависимости извлекаются с помощью ar и tar извне вновь установленную систему в новый каталог.
Полученное дерево файловой системы содержит все, что необходимо для chroot
в него и запуска dpkg
. Первый вызов переустанавливает все пакеты Essential
, перезаписывая файлы с тем же содержимым и регистрируя установленные пакеты.