Чтение онлайн

на главную - закладки

Жанры

Linux Mint и его Cinnamon. Очерки применителя

Федорчук Алексей Викторович

Шрифт:

ls /usr/sbin/dpkg* /usr/bin/dpkg*

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

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

так:

$ dpkg -i path2/packagename.deb

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

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

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

2. знании точного пути (path2) к нужному файлу пакета (имя его, кстати, должно быть указано полностью);

3. отсутствии неудовлетворенных зависимостей.

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

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

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

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

$ sudo dpkg -r packagename

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

$ sudo dpkg -P packagename

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

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

Следующая сфера деятельности команд семейства dpkg — получение информации о пакетах. И здесь первое дело — это получение списка пакетов, установленных в системе:

$ dpkg -l

Что

в моей системе даёт примерно такой вывод:

ii accountsservice 0.6.35-0ubuntu7.1 amd64 query and manipulate user account information

ii acl 2.2.52-1 amd64 Access control list utilities

ii zsh 5.0.2-3ubunt amd64 shell with lots of features

ii zsh-common 5.0.2-3ubunt all architecture independent files for Z

ii zsh-doc 5.0.2-3ubunt all zsh documentation - info/HTML format

ii zsh-lovers 0.8.3-0ubunt all tips, tricks and examples for the zs

До появления интегрированной утилиты apt команда dpkg -l была чуть ли не единственным способом получения списка установленных пакетов. Или, по крайней мере, самым простым.

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

$ dpkg-query --help

Они следующие:

• -s или --status — вывод детального статуса пакета, включающий:

• имя пакета, собственно статус (установлен ли он) и приоритет;

• секция репозитория, к которой пакета относится (например, editors — для текстовых редакторов);

• размер пакета в установленном виде;

• имя майнтайнера, архитектура, для которой пакет собран, и номер версии;

• описание зависимостей и конфликтов;

• краткое (в один абзац) описание пакета.

• -p или --print-avail — практически то же самое, но в форме, приспособленной для печати;

• -l или --list — тоже своего рода описание статуса, включающее сведения о том, установлен ли пакет, нуждается ли он в обновлении, нет ли ошибок в его настройке, и так далее;

• -W или --show — просто вывод номера версии в форме:

 $ dpkg-query -W nano

nano 1.3.8-2

• -L или --listfiles — полный список файлов, относящихся к данному пакету, в форме:

 /.

/etc

/etc/nanorc

/usr

/usr/share

/usr/share/doc

/usr/share/doc/nano

и так далее (пример для текстового редактора nano);

• -S или --search — поиск пакета, к которому относится некий файл, указанный в качестве аргумента; может выполнить и обратную задачу — поиск всех файлов, принадлежащих данному пакету, вывод в этом случае оказывается аналогичным dpkg-query -L.

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

Поделиться:
Популярные книги

Истинная со скидкой для дракона

Жарова Анита
Любовные романы:
любовно-фантастические романы
5.00
рейтинг книги
Истинная со скидкой для дракона

Герцог и я

Куин Джулия
1. Бриджертоны
Любовные романы:
исторические любовные романы
8.92
рейтинг книги
Герцог и я

На границе империй. Том 9. Часть 5

INDIGO
18. Фортуна дама переменчивая
Фантастика:
космическая фантастика
попаданцы
5.00
рейтинг книги
На границе империй. Том 9. Часть 5

Росток

Ланцов Михаил Алексеевич
2. Хозяин дубравы
Фантастика:
попаданцы
альтернативная история
фэнтези
7.00
рейтинг книги
Росток

Демон

Парсиев Дмитрий
2. История одного эволюционера
Фантастика:
рпг
постапокалипсис
5.00
рейтинг книги
Демон

Огромный. Злой. Зеленый

Новикова Татьяна О.
1. Большой. Зеленый... ОРК
Любовные романы:
любовно-фантастические романы
5.40
рейтинг книги
Огромный. Злой. Зеленый

Запечатанный во тьме. Том 1. Тысячи лет кача

NikL
1. Хроники Арнея
Фантастика:
уся
эпическая фантастика
фэнтези
5.00
рейтинг книги
Запечатанный во тьме. Том 1. Тысячи лет кача

Тайны ордена

Каменистый Артем
6. Девятый
Фантастика:
боевая фантастика
попаданцы
7.48
рейтинг книги
Тайны ордена

Кодекс Охотника. Книга VI

Винокуров Юрий
6. Кодекс Охотника
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Кодекс Охотника. Книга VI

Неудержимый. Книга XXI

Боярский Андрей
21. Неудержимый
Фантастика:
попаданцы
аниме
фэнтези
5.00
рейтинг книги
Неудержимый. Книга XXI

Возлюби болезнь свою

Синельников Валерий Владимирович
Научно-образовательная:
психология
7.71
рейтинг книги
Возлюби болезнь свою

На границе империй. Том 5

INDIGO
5. Фортуна дама переменчивая
Фантастика:
боевая фантастика
попаданцы
7.50
рейтинг книги
На границе империй. Том 5

Виконт, который любил меня

Куин Джулия
2. Бриджертоны
Любовные романы:
исторические любовные романы
9.13
рейтинг книги
Виконт, который любил меня

Академия проклятий. Книги 1 - 7

Звездная Елена
Академия Проклятий
Фантастика:
фэнтези
8.98
рейтинг книги
Академия проклятий. Книги 1 - 7