Управления пакетами

Материал из Википедии - свободной энциклопедии.

Вернутся в раздел советов


Содержание

Введение

Для управления системой портeжей в Gentoo используйте пакет gentoolkit.

emerge gentoolkit

В этот пакет входят следующие программы:

euse 
Утилита редактирования флагов USE.
equery 
Показывает различную информацию об установленных пакетах. Замена etcat и qpkg.
revdep-rebuild 
Находит неработающие бинарники и устанавливает необходимые для их работы пакеты.

equery

Обзор

Утилита equery обладает следующими возможностями:

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

Использование

Синтаксис команды equery таков:


equery <глобальные опции> команда <локальные опции>

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


equery --help

Для того, чтоб прочитать что делает та или иная команда наберите


equery команда --help

Под pkgspec помощи equery подразумевается полное имя пакета + категория и версия, причем категорию и версию указывать необязательно.


Ускорения поиска пакетов

Поиск пакетов с помощью

emerge -s занимает довольно много времени.

А поиск с учетом описания пакетов

emerge -S на Celeron 700Mhz занимает около 10 минут.

Поэтому, для таких целей лучше использовать утилиту esearch из одноименного пакета, которая создает индексный файл, который использует при поиске. Подобным образом работает утилита slocate.

emerge esearch

Для создания индексного файла запустите команду eupdatedb под рутом:

su - -c eupdatedb

После того как индексный файл создан, можно заниматся поиском.

esearch <regexp>


esearch -S <regexp>

Также, эта утилита позволяет конфигурировать формат вывода, поэтому ее можно использовать в sh-скриптах или просто для облегчения жизни. Например, можно легко установить все desklet'ы имеющиеся в дереве портежей

emerge `esearch -o '%p ' ^desklet`


man esearch подробно описывает как можно конфигурировать формат вывода.

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

esync

После окончания синхронизации индексный файл будет обновлен и вам будет показан список обновившхся пакетов.


Примеры использования

  • Чтобы получить полный список установленных пакетов и версию
qpkg -I -v
  • Посмотреть дубликаты программ с версией
qpkg --dups -v
  • Узнать, какому пакету принадлежит /bin/ls
equery b /bin/ls
Команды equery и qpkg различаются информативностью результатов.
  • Чтобы посмотреть с какими флагами был установлен пакет samba
equery uses samba
  • Чтобы узнать, какие файлы принадлежат пакету net-tools
equery files net-tools | sort | less
  • Посмотреть дерево зависимостей пакета
equery depgraph bash
  • Чтобы удалить пакет
emerge -C пакет
  • Чтобы удалить из системы все ненужные пакеты
emerge depclean (ОЧЕНЬ ОПАСНАЯ ОПЕРАЦИЯ, которая может привести к удалению нужных пакетов)
  • Чтобы собрать бинарный пакет, уже проинсталлированый на вашей системе, для переноса на другую систему или повторного инсталлирования
quickpkg пакет


Личные инструменты
advertisement