Dpkg: установка пакетов

Для начала рассмотрим установку пакетов. Если нам необходимо установить единичный пакет, поступаем так:

$ dpkg -i path2/packagename.deb

и дело в шляпе -- через считанные мгновения пакет packagename.deb будет установлен: это обеспечивает опция -i (от install) вслед за командой dpkg. Дабы в дальнейшем не повторяться, замечу, что все действия по установке и удалению пакетов требуют полномочий суперпользователя, приобретаемых временно командой su или, как это принято в Ubuntu и его дериватах, sudo.

Разумеется, успешной установка пакета будет только при соблюдении следующих условий:

  1. физическом наличии его в пределах досягаемости с локальной машины (на подключенной файловой системе, смонтированном компакт-диске или ином носителе);
  2. знании точного пути (path2) к нужному файлу пакета (имя его, кстати, также указывается полностью, в отличие от того, что мы увидим при использовании aptили aptitude) ;
  3. отсутствии неудовлетворенных зависимостей.

Из первого условия следует, что dpkg удобно использовать при доустановке компонентов с инсталляционного CD/DVD (или установке заблаговременно скачанных пакетов). Второе условие самоочевидно. Ну а третье также выполнимо без особого труда: в случае нарушения зависимостей dpkg выдаст сообщение об ошибке с полным перечнем того, что нужно установить для ее устранения, причем в списке будут перечислены только обязательные зависимости. И достаточно все необходимые пакеты поместить в командную строку:

$ sudo dpkg -i path2/packagename1.deb ... path2/packagename#.deb

для того, чтобы они были установлены единой операцией (если, конечно, все эти пакеты имеются в наличии).

Другое часто требующееся применение команды dpkg -- удаление ненужных пакетов. Это делается двояко: команда

$ sudo dpkg -r packagename

удалит пакет, но сохранит настроечные его файлы, а команда

$ sudo dpkg -P packagename

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

Обратим внимание -- в аргументах обеих команд фигурирует уже не полное имя пакета, а только его значимая часть. Это распространяется на все случаи использования dpkg (и других команд ее семейства), когда речь идет об уже установленных пакетах.


Теги: , , ,