Управление пакетами: различия между версиями
Нет описания правки |
Нет описания правки |
||
Строка 4: | Строка 4: | ||
{{:Команды RPM}} | {{:Команды RPM}} | ||
<noinclude> | <noinclude> | ||
=Статьи по отдельности= | |||
*[[Команды APT]] | |||
*[[Команды RPM]] | |||
*[[Downgrade]] | |||
*[[Synaptic]] | |||
{{Category navigation|title=Управление пакетами|category=Управление пакетами|sortkey=*}} | {{Category navigation|title=Управление пакетами|category=Управление пакетами|sortkey=*}} | ||
</noinclude> | </noinclude> |
Версия от 18:54, 22 мая 2023
Команды APT
Все пакеты, из которых в систему ставятся программы, драйвера, ядра и пр. хранятся в специальных сетевых хранилищах - репозиториях. Они состоят из двух частей - индексов и хранилища. Сначала получаются файлы индексов, содержащие список всех пакетов и ссылки на них и, используя полученные индексы, пакеты скачиваются из хранилища во временный каталог и, по завершении загрузки, устанавливаются в систему или обновляются.
С помощью специальных команд Вы можете:
- получить индексы
- обновить все установленные пакеты
- установить новые пакеты
- удалить установленные пакеты
- найти пакеты в репозитории
Эта "специальные команды" используются в консольной утилите APT. Все операции с пакетами с помощью этой утилиты проводятся в консольной строке. В ряде случаев это удобнее, а в некоторых просто является единственно возможным вариантом ввиду возможности рестарта некоторых ключевых компонент. В этом случае команда на обновление должна делаться в консоли, либо с использованием screen.
Для ее работы нужны права суперпользователя. Хотя, для операции поиска, достаточно обычных прав пользователя.
Команды apt-get
Программа использует следующий синтаксис:
apt-get [параметры] команда
apt-get [параметры] install|remove пакет1 [пакет2 ...]
apt-get [параметры] source пакет1 [пакет2 ...]
Более подробно мы рассмотрим ее далее.
Обновление информации о репозиториях
Первым делом нужно получить индексы, содержащие актуальные наборы пакетов и ссылки на них.
- при поиске новой версии пакета
- установке пакетов
- обновлении установленных пакетов
- использовании apt-cache
Делается это следующей командой:
# apt-get update
Пример запуска:
# apt-get update
Получено: 1 http://ftp.altlinux.org p10/branch/x86_64 release [4223B]
Получено: 2 http://ftp.altlinux.org p10/branch/x86_64-i586 release [1665B]
Получено: 3 http://ftp.altlinux.org p10/branch/noarch release [2844B]
Получено 8732B за 0s (259kB/s).
Найдено http://ftp.altlinux.org p10/branch/x86_64/classic pkglist
Найдено http://ftp.altlinux.org p10/branch/x86_64/classic release
Найдено http://ftp.altlinux.org p10/branch/x86_64/gostcrypto pkglist
Найдено http://ftp.altlinux.org p10/branch/x86_64/gostcrypto release
Найдено http://ftp.altlinux.org p10/branch/x86_64-i586/classic pkglist
Найдено http://ftp.altlinux.org p10/branch/x86_64-i586/classic release
Найдено http://ftp.altlinux.org p10/branch/noarch/classic pkglist
Найдено http://ftp.altlinux.org p10/branch/noarch/classic release
Чтение списков пакетов... Завершено
Построение дерева зависимостей... Завершено
После выполнения команды, apt обновит свой кеш новой информацией.
Обновление системы
Чтобы обновить систему до актуального состояния (кроме ядра), используйте следующую команду:
# apt-get dist-upgrade
Пример запуска:
# apt-get dist-upgrade
Чтение списков пакетов... Завершено
Построение дерева зависимостей... Завершено
Подсчет обновлений... Завершено
Следующие пакеты будут ОБНОВЛЕНЫ:
firefox libnss
2 будет обновлено, 0 новых установлено, 0 пакетов будет удалено и 0 не будет обновлено.
Необходимо получить 59,2MB архивов.
После распаковки потребуется дополнительно 2888kB дискового пространства.
Продолжить? [Y/n] y
Получено: 1 http://ftp.altlinux.org p10/branch/x86_64/classic libnss 3.89.0-alt1:p10+319679.40.8.1@1684328466 [1290kB]
Получено: 2 http://ftp.altlinux.org p10/branch/x86_64/classic firefox 112.0.2-alt0.p10.1:p10+319679.140.8.2@1684342590 [57,9MB]
Получено 59,2MB за 2s (20,6MB/s).
Совершаем изменения...
Подготовка... #################################################################################################### [100%]
Обновление / установка...
1: libnss-3.89.0-alt1 #################################################################################################### [ 25%]
2: firefox-112.0.2-alt0.p10.1 #################################################################################################### [ 50%]
Очистка / удаление...
3: firefox-110.0.1-alt0.p10.1 #################################################################################################### [ 75%]
4: libnss-3.88.1-alt1 #################################################################################################### [100%]
Завершено.
Установка пакетов
Установка пакетов производится следующей командой:
# apt-get install имя_пакета
Например:
# apt-get install chromium
Программа автоматически найдет и установит все необходимые для пакета зависимости.
Так же Вы можете указать сразу несколько или большое количество пакетов через пробел.
# apt-get install firefox gimp vlc
Пример запуска:
# apt-get install stellarium
Чтение списков пакетов... Завершено
Построение дерева зависимостей... Завершено
Следующие НОВЫЕ пакеты будут установлены:
stellarium
0 будет обновлено, 1 новых установлено, 0 пакетов будет удалено и 0 не будет обновлено.
Необходимо получить 212MB архивов.
После распаковки потребуется дополнительно 334MB дискового пространства.
Получено: 1 http://ftp.altlinux.org p10/branch/x86_64/classic stellarium 0.21.0-alt1.1:sisyphus+279564.100.1.3@1626602684 [212MB]
Получено 212MB за 10s (20,9MB/s).
Совершаем изменения...
Подготовка... #################################################################################################### [100%]
Обновление / установка...
1: stellarium-0.21.0-alt1.1 #################################################################################################### [100%]
Завершено.
Дополнительные варианты
- Установка RPM-пакета из файловой системы:
# apt-get install /home/user/Загрузки/whois-5.5.0-alt1.x86_64.rpm
- Установка пакета по его URL:
# apt-get install http://ftp.altlinux.org/pub/distributions/ALTLinux/Sisyphus/files/x86_64/RPMS/whois-5.5.0-alt1.x86_64.rpm
- Установка по имени исполняемого файла или библиотеки:
# apt-get install /usr/bin/whois
# apt-get install /usr/lib64/lib3dkit.so.1
Некоторые ситуации
Пакет установлен, в репозитории новая версия, запускается повторная установка
- Если пакет уже установлен и в подключённом репозитории нет обновлений для данного пакета, система сообщит об уже установленном пакете последней версии.
# apt-get install supertuxkart
Чтение списков пакетов... Завершено
Построение дерева зависимостей... Завершено
Последняя версия supertuxkart уже установлена.
0 будет обновлено, 0 новых установлено, 0 пакетов будет удалено и 0 не будет обновлено.
- Если в репозитории присутствует более новая версия или новое обновление - программа начнёт процесс установки.
- Менеджер apt, при установки пакета проверяет все зависимости и если необходимо обновить пакеты или заменить - предложит провести необходимые действия
# apt-get install alterator
Чтение списков пакетов... Завершено
Построение дерева зависимостей... Завершено
Следующие дополнительные пакеты будут установлены:
alterator-l10n rpm-macros-alterator
Следующие пакеты будут ОБНОВЛЕНЫ:
alterator alterator-l10n rpm-macros-alterator
3 будет обновлено, 0 новых установлено, 0 пакетов будет удалено и 178 не будет обновлено.
Необходимо получить 630kB архивов.
После распаковки потребуется дополнительно 4686B дискового пространства.
Продолжить? [Y/n]
Починка сломанной системы
Если у Вас по некоторым причинам (зависание, отключение электричества и пр.) была нарушена работа APT и система говорит что нужно выполнить "починку", воспользуйтесь следующей командой:
# apt-get install -f
Переустановка пакетов
Чтобы принудительно переустановить указанные пакеты, выполните следующую команду:
# apt-get install --reinstall имена пакетов
Пример использования:
# apt-get install --reinstall supertuxkart
Чтение списков пакетов... Завершено
Построение дерева зависимостей... Завершено
0 будет обновлено, 0 новых установлено, 1 пакетов будет переустановлено, 0 пакетов будет удалено и 2 не будет обновлено.
Необходимо получить 25,2MB архивов.
После распаковки потребуется дополнительно 0B дискового пространства.
Продолжить? [Y/n] y
Получено: 1 http://ftp.altlinux.org p10/branch/x86_64/classic supertuxkart 1.4-alt1:p10+310551.200.2.1@1669897162 [25,2MB]
Получено 25,2MB за 1s (20,7MB/s).
Совершаем изменения...
Подготовка... #################################################################################################### [100%]
Обновление / установка...
1: supertuxkart-1.4-alt1 #################################################################################################### [100%]
Завершено.
Скачивание пакетов в кэш без установки
Чтобы скачать пакеты без установки, используйте следующую команду:
# apt-get install -d пакеты
Пример использования:
# apt-get install -d boswars
Чтение списков пакетов... Завершено
Построение дерева зависимостей... Завершено
Следующие дополнительные пакеты будут установлены:
liblua5.1 liblua5.1-preinstall libtolua++-lua5.1
Следующие НОВЫЕ пакеты будут установлены:
boswars liblua5.1 liblua5.1-preinstall libtolua++-lua5.1
0 будет обновлено, 4 новых установлено, 0 пакетов будет удалено и 2 не будет обновлено.
Необходимо получить 74,8MB архивов.
После распаковки потребуется дополнительно 92,1MB дискового пространства.
Продолжить? [Y/n] y
Получено: 1 http://ftp.altlinux.org p10/branch/x86_64/classic liblua5.1-preinstall 5.1.5-alt17:sisyphus+278018.100.1.2@1625976910 [10,8kB]
Получено: 2 http://ftp.altlinux.org p10/branch/x86_64/classic liblua5.1 5.1.5-alt17:sisyphus+278018.100.1.2@1625976910 [93,9kB]
Получено: 3 http://ftp.altlinux.org p10/branch/x86_64/classic libtolua++-lua5.1 1.0.93-alt5:sisyphus+249325.100.1.1@1585937317 [15,8kB]
Получено: 4 http://ftp.altlinux.org p10/branch/x86_64/classic boswars 2.7-alt1_24.svn160110:sisyphus+264006.100.1.2@1609002965 [74,7MB]
Получено 74,8MB за 3s (18,9MB/s).
Скачивание пакетов завершено в режиме 'только скачать'.
Удаление пакетов
Примечание
Удаление пакета не намного сложнее, чем установка. Достаточно знать имя пакета, который необходимо удалить и обращать внимание на сообщения системы apt.
Чтобы что-то удалить, необходимо знать, что можно удалить. Например пакеты программ, которыми Вы перестали пользоваться или программ из дистрибутива, которыми Вы не пользовались вообще.
При удалении пакетов имеется простое правило, которому желательно следовать:
- Не все пакеты, которыми вы не пользуетесь, являются ненужными.
Правило говорит о том, что программа, которой вы пользуетесь, может явно использовать пакет, который вы хотите удалить. Обычно зависимости выставлены корректно, и система apt всегда предупредит, какие пакеты придётся удалить дополнительно при удалении указанного. Не стоит пытаться удалить общесистемные пакеты, вы можете необратимо испортить нормальное функционирование операционной системы. В таких случаях apt настоятельно спросит, действительно ли пользователь уверен в своих действиях.
Например:
# apt-get remove coreutils
<большой список пакетов>
...
WARNING: The following essential packages will be removed
This should NOT be done unless you know exactly what you are doing!
...
You are about to do something potentially harmful
To continue type in the phrase 'Yes, do as I say!'
Команды
Удаление пакетов происходит аналогично установке:
# apt-get remove имя_пакета
# apt-get remove 0ad
И так же Вы можете указать несколько или большое количество пакетов через пробел.
# apt-get remove 0ad supertuxkart boswars
Пример запуска:
# apt-get remove supertuxkart boswars
Чтение списков пакетов... Завершено
Построение дерева зависимостей... Завершено
Следующие пакеты будут УДАЛЕНЫ:
boswars supertuxkart
0 будет обновлено, 0 новых установлено, 2 пакетов будет удалено и 0 не будет обновлено.
Необходимо получить 0B архивов.
После распаковки будет освобождено 160MB дискового пространства.
Продолжить? [Y/n] y
Совершаем изменения...
Подготовка... #################################################################################################### [100%]
Очистка / удаление...
1: supertuxkart-1.4-alt1 #################################################################################################### [ 50%]
2: boswars-2.7-alt1_24.svn160110 #################################################################################################### [100%]
Завершено.
# rpm -qa | grep часть_названия
Пример:
# rpm -qa | grep tux
supertuxkart-data-1.4-alt1.noarch
tuxcmd-0.6.70-alt2.x86_64
supertux2-0.6.3-alt2.x86_64
supertuxkart-1.4-alt1.x86_64
supertux2-data-0.6.3-alt2.noarch
Удаление неиспользуемых пакетов
Чтобы удалить лишние пакеты, которые не используются в системе выполните следующую команду:
# apt-get autoremove
# apt-get autoremove
Чтение списков пакетов... Завершено
Построение дерева зависимостей... Завершено
Calculating Autoremove... Завершено
Следующие пакеты будут УДАЛЕНЫ:
ImageMagick-tools advancecomp libjpeg-utils liblua5.1 liblua5.1-preinstall libmcpp libtolua++-lua5.1 optipng supertuxkart-data
0 будет обновлено, 0 новых установлено, 9 пакетов будет удалено и 0 не будет обновлено.
Необходимо получить 0B архивов.
После распаковки будет освобождено 729MB дискового пространства.
Продолжить? [Y/n] y
Совершаем изменения...
Подготовка... #################################################################################################### [100%]
Очистка / удаление...
1: libtolua++-lua5.1-1.0.93-alt5 #################################################################################################### [ 11%]
2: liblua5.1-5.1.5-alt17 #################################################################################################### [ 22%]
3: liblua5.1-preinstall-5.1.5-alt17 #################################################################################################### [ 33%]
4: supertuxkart-data-1.4-alt1 #################################################################################################### [ 44%]
5: optipng-0.7.7-alt1 #################################################################################################### [ 56%]
6: libmcpp-2.7.2-alt3 #################################################################################################### [ 67%]
7: libjpeg-utils-2:2.0.6-alt3 #################################################################################################### [ 78%]
8: advancecomp-2.1-alt1_16 #################################################################################################### [ 89%]
9: ImageMagick-tools-6.9.12.64-alt1 #################################################################################################### [100%]
Завершено.
Удаление ранее скачанных пакетов
Все пакеты, которые Вы устанавливаете или обновляете, скачиваются в папку кэша и хранятся на диске в папке /var/cache/apt/archives. После долгого времени использования системы они могут занимать много места. Так как объём свободного пространства на жёстком диске конечен, может возникнуть ситуация, когда apt не сможет сохранить полученные по сети пакеты, и установка будет прервана, о чём система apt известит пользователя. Чтобы избежать такой ситуации, требуется очистка диска от старых установленных пакетов.
Чтобы очистить кэш скачанных пакетов воспользуйтесь командой:
# apt-get clean
Команда не очень информативна:
# apt-get clean
Если после выполнения данной операции, система apt, всё равно прерывает установку по причине нехватки места на диске - значит, диск скорее всего занят пользовательскими файлами. Попробуйте удалить (перенести) ненужные файлы или удалить ненужные вам программы и приложения.
Удаление пакета с конфигурацией
Программа во время работы создает конфигурационные файлы в каталоге /etc, в которых хранит некоторые настройки, произведенные во время работы. Если Вы хотите переустановить программу так, чтобы эти файлы были удалены, Вы можете воспользоваться следующей командой:
# apt-get remove --purge имя_пакета
Пример выполения:
# apt-get remove --purge wine
Чтение списков пакетов... Завершено
Построение дерева зависимостей... Завершено
Следующие пакеты будут УДАЛЕНЫ:
i586-wine.32bit* wine*
0 будет обновлено, 0 новых установлено, 2 пакетов будет удалено и 2 не будет обновлено.
Необходимо получить 0B архивов.
После распаковки будет освобождено 900MB дискового пространства.
Продолжить? [Y/n] y
Совершаем изменения...
Подготовка... #################################################################################################### [100%]
Очистка / удаление...
1: i586-wine-1:7.22.1-alt1 #################################################################################################### [ 50%]
2: wine-1:7.22.1-alt1 #################################################################################################### [100%]
Завершено.
Проверка зависимостей
Чтобы удостовериться в отсутствии неудовлетворённых зависимостей введите команду:
# apt-get check
# apt-get check
Чтение списков пакетов... Завершено
Построение дерева зависимостей... Завершено
Удаление дубликатов
Чтобы удалить задублированные пакеты, выполните команду:
# apt-get dedup
Параметры
В конце команды Вы можете указать следующие параметры:
-qq Не показывать ничего кроме сообщений об ошибках
-d Получить пакеты и выйти БЕЗ их установки или распаковки. Для команд "apt-get install" и "apt-get dist-upgrade"
-s Симуляция установки
-y Автоматически отвечать "да" на все вопросы
-f Исправление неудовлетворенных зависимостей. Обычно используется с командой "apt-get install"
-m Начать установку пакетов, если их часть была недоступна и не скачалась. Для команд "apt-get install" и "apt-get dist-upgrade".
-u Показать список обновляемых пакетов
-D При удалении пакета удалить все его зависимости. Для команды "apt-get remove"
-V Показывать номера версий пакетов
Отладка
Чтобы разобраться в причинах конфликтов и отказе APT'а выполнять ваши команды, чтобы отправить баг в багзиллу или в список рассылки, используйте ключ -oDebug::pkgProblemResolver=1, например, так:
# apt-get install -oDebug::pkgProblemResolver=1 PACKAGES
# apt-get dist-upgrade -oDebug::pkgProblemResolver=1
Команды apt-repo
apt-repo — утилита для управления списком репозиториев APT. Она существует с 2011 года и включена в дистрибутивы начиная с P7.
Если утилита оказалась у Вас не установлена, установите её следующей командой:
# apt-get install apt-repo
Вывод текущих репозиториев
Чтобы вывести список репозиториев, подключенных в системе, достаточно просто ввести команду:
# apt-repo
rpm [p10] http://ftp.altlinux.org/pub/distributions/ALTLinux/ p10/branch/x86_64 classic gostcrypto
rpm [p10] http://ftp.altlinux.org/pub/distributions/ALTLinux/ p10/branch/x86_64-i586 classic
rpm [p10] http://ftp.altlinux.org/pub/distributions/ALTLinux/ p10/branch/noarch classic
Если указать параметр -a, будут показаны все доступные репозитории (неактивные будут закомментированы ‘#’
Полный вывод: |
---|
# apt-repo -a
rpm [p10] http://ftp.altlinux.org/pub/distributions/ALTLinux p10/branch/x86_64 classic
rpm [p10] http://ftp.altlinux.org/pub/distributions/ALTLinux p10/branch/noarch classic
rpm [p10] http://ftp.altlinux.org/pub/distributions/ALTLinux p10/branch/x86_64-i586 classic
# rpm-src [p10] ftp://ftp.altlinux.org/pub/distributions/ALTLinux/ p10/branch/x86_64 classic gostcrypto
# rpm-src [p10] ftp://ftp.altlinux.org/pub/distributions/ALTLinux/ p10/branch/x86_64-i586 classic
# rpm-src [p10] ftp://ftp.altlinux.org/pub/distributions/ALTLinux/ p10/branch/noarch classic
#rpm [p10] http://ftp.altlinux.org/pub/distributions/ALTLinux/ p10/branch/x86_64 classic gostcrypto
#rpm [p10] http://ftp.altlinux.org/pub/distributions/ALTLinux/ p10/branch/x86_64-i586 classic
#rpm [p10] http://ftp.altlinux.org/pub/distributions/ALTLinux/ p10/branch/noarch classic
# rpm-src [p10] rsync://ftp.altlinux.org/ALTLinux/ p10/branch/x86_64 classic gostcrypto
# rpm-src [p10] rsync://ftp.altlinux.org/ALTLinux/ p10/branch/x86_64-i586 classic
# rpm-src [p10] rsync://ftp.altlinux.org/ALTLinux/ p10/branch/noarch classic
# rpm [p10] ftp://ftp.heanet.ie/mirrors/ftp.altlinux.org/ p10/branch/x86_64 classic gostcrypto
# rpm [p10] ftp://ftp.heanet.ie/mirrors/ftp.altlinux.org/ p10/branch/x86_64-i586 classic
# rpm-src [p10] ftp://ftp.heanet.ie/mirrors/ftp.altlinux.org/ p10/branch/noarch classic
# rpm-src [p10] http://ftp.heanet.ie/mirrors/ftp.altlinux.org/ p10/branch/x86_64 classic gostcrypto
# rpm-src [p10] http://ftp.heanet.ie/mirrors/ftp.altlinux.org/ p10/branch/x86_64-i586 classic
# rpm [p10] http://ftp.heanet.ie/mirrors/ftp.altlinux.org/ p10/branch/noarch classic
# rpm [p10] rsync://ftp.heanet.ie/mirrors/ftp.altlinux.org/ p10/branch/x86_64 classic gostcrypto
# rpm [p10] rsync://ftp.heanet.ie/mirrors/ftp.altlinux.org/ p10/branch/x86_64-i586 classic
# rpm [p10] rsync://ftp.heanet.ie/mirrors/ftp.altlinux.org/ p10/branch/noarch classic
# rpm [p10] ftp://distrib-coffee.ipsl.jussieu.fr/pub/linux/altlinux/ p10/branch/x86_64 classic gostcrypto
# rpm [p10] ftp://distrib-coffee.ipsl.jussieu.fr/pub/linux/altlinux/ p10/branch/x86_64-i586 classic
# rpm [p10] ftp://distrib-coffee.ipsl.jussieu.fr/pub/linux/altlinux/ p10/branch/noarch classic
# rpm [p10] http://distrib-coffee.ipsl.jussieu.fr/pub/linux/altlinux/ p10/branch/x86_64 classic gostcrypto
# rpm [p10] http://distrib-coffee.ipsl.jussieu.fr/pub/linux/altlinux/ p10/branch/x86_64-i586 classic
# rpm [p10] http://distrib-coffee.ipsl.jussieu.fr/pub/linux/altlinux/ p10/branch/noarch classic
# rpm [p10] rsync://distrib-coffee.ipsl.jussieu.fr/pub/linux/altlinux/ p10/branch/x86_64 classic gostcrypto
# rpm [p10] rsync://distrib-coffee.ipsl.jussieu.fr/pub/linux/altlinux/ p10/branch/x86_64-i586 classic
# rpm [p10] rsync://distrib-coffee.ipsl.jussieu.fr/pub/linux/altlinux/ p10/branch/noarch classic
# rpm [p10] ftp://mirror.yandex.ru/altlinux/ p10/branch/x86_64 classic gostcrypto
# rpm [p10] ftp://mirror.yandex.ru/altlinux/ p10/branch/x86_64-i586 classic
# rpm [p10] ftp://mirror.yandex.ru/altlinux/ p10/branch/noarch classic
# rpm [p10] http://mirror.yandex.ru/altlinux/ p10/branch/x86_64 classic gostcrypto
# rpm [p10] http://mirror.yandex.ru/altlinux/ p10/branch/x86_64-i586 classic
# rpm [p10] http://mirror.yandex.ru/altlinux/ p10/branch/noarch classic
# rpm [p10] rsync://mirror.yandex.ru/altlinux/ p10/branch/x86_64 classic gostcrypto
# rpm [p10] rsync://mirror.yandex.ru/altlinux/ p10/branch/x86_64-i586 classic
# rpm [p10] rsync://mirror.yandex.ru/altlinux/ p10/branch/noarch classic
|
Удаление репозиториев
Чтобы удалить все активные источники репозиториев, выполните следующую команду:
# apt-repo rm all
Проверяем:
# apt-repo
Ничего нет.
При указании ключевого слова all, за которым следует необязательный <тип>, удаляются все активные источники указанного типа:
- ‘branch’ или ‘branches’ - удаляются все ветки,
- ‘task’ или ‘tasks’ - удаляются все хранилища задач,
- ‘cdrom’ или ‘cdroms’ - удаляются все источники типа cdrom.
Чтобы удалить репозитории конкретной платформы, введите следующую команду:
# apt-repo rm источник
Например:
# apt-repo rm p10
Добавить репозитории конкретной платформы
Чтобы добавить репозитории конкретной платформы, выполните следующую команду:
# apt-repo add платформа
Пример:
# apt-repo add p10
Проверяем:
# apt-repo
rpm [p10] http://ftp.altlinux.org/pub/distributions/ALTLinux p10/branch/x86_64 classic
rpm [p10] http://ftp.altlinux.org/pub/distributions/ALTLinux p10/branch/noarch classic
rpm [p10] http://ftp.altlinux.org/pub/distributions/ALTLinux p10/branch/x86_64-i586 classic
Добавить репозиторий задачи (task)
Чтобы добавить репозитории конкретной задачи, выполните следующую команду:
# apt-repo add task номер_задачи
Пример:
# apt-repo add task 329850
Проверяем:
# apt-repo
rpm [p10] http://ftp.altlinux.org/pub/distributions/ALTLinux p10/branch/x86_64 classic
rpm [p10] http://ftp.altlinux.org/pub/distributions/ALTLinux p10/branch/noarch classic
rpm [p10] http://ftp.altlinux.org/pub/distributions/ALTLinux p10/branch/x86_64-i586 classic
rpm http://git.altlinux.org repo/329850/x86_64 task
Удалить все существующие источники и добавить репозитории конкретной платформы
Выполните команду:
apt-repo set ветка
Пример:
# apt-repo
rpm [p9] http://ftp.altlinux.org/pub/distributions/ALTLinux p9/branch/x86_64 classic
rpm [p9] http://ftp.altlinux.org/pub/distributions/ALTLinux p9/branch/noarch classic
rpm [p9] http://ftp.altlinux.org/pub/distributions/ALTLinux p9/branch/x86_64-i586 classic
# apt-repo set p10
# apt-repo
rpm [p10] http://ftp.altlinux.org/pub/distributions/ALTLinux p10/branch/x86_64 classic
rpm [p10] http://ftp.altlinux.org/pub/distributions/ALTLinux p10/branch/noarch classic
rpm [p10] http://ftp.altlinux.org/pub/distributions/ALTLinux p10/branch/x86_64-i586 classic
Удалить источники cdrom и tasks
Удалить все источники типа cdrom и все хранилища задач (tasks) выполните следующую команду:
apt-repo clean
Пример выполнения:
# apt-repo
rpm [p10] http://ftp.altlinux.org/pub/distributions/ALTLinux p10/branch/x86_64 classic
rpm [p10] http://ftp.altlinux.org/pub/distributions/ALTLinux p10/branch/noarch classic
rpm [p10] http://ftp.altlinux.org/pub/distributions/ALTLinux p10/branch/x86_64-i586 classic
rpm http://git.altlinux.org repo/8537/x86_64 task
# apt-repo clean
# apt-repo
rpm [p10] http://ftp.altlinux.org/pub/distributions/ALTLinux p10/branch/x86_64 classic
rpm [p10] http://ftp.altlinux.org/pub/distributions/ALTLinux p10/branch/noarch classic
rpm [p10] http://ftp.altlinux.org/pub/distributions/ALTLinux p10/branch/x86_64-i586 classic
Обновление кэша APT
Чтобы запустить команду apt-get update для обновления кэша APT из активных источников можно ввести следующую команду:
# apt-repo update
# apt-repo update
Получено: 1 http://ftp.altlinux.org p10/branch/x86_64 release [4223B]
Получено: 2 http://ftp.altlinux.org p10/branch/noarch release [2844B]
Получено: 3 http://ftp.altlinux.org p10/branch/x86_64-i586 release [1665B]
Получено 8732B за 5s (1716B/s).
Получено: 1 http://ftp.altlinux.org p10/branch/x86_64/classic pkglist [23,3MB]
Получено: 2 http://ftp.altlinux.org p10/branch/x86_64/classic release [137B]
Получено: 3 http://ftp.altlinux.org p10/branch/noarch/classic pkglist [6422kB]
Получено: 4 http://ftp.altlinux.org p10/branch/noarch/classic release [137B]
Получено: 5 http://ftp.altlinux.org p10/branch/x86_64-i586/classic pkglist [17,1MB]
Получено: 6 http://ftp.altlinux.org p10/branch/x86_64-i586/classic release [142B]
Получено 46,8MB за 19s (2434kB/s).
Чтение списков пакетов... Завершено
Построение дерева зависимостей... Завершено
Обновление всех пакетов
Чтобы выполнить обновление всех пакетов, можно так же, вместо apt-get dist-upgrade выполнить следующую команду:
# apt-repo upgrade
Она сразу проверит обновления и предложит их установить.
# apt-repo upgrade
Получено: 1 http://ftp.altlinux.org p10/branch/x86_64 release [4223B]
Получено: 2 http://ftp.altlinux.org p10/branch/noarch release [2844B]
Получено: 3 http://ftp.altlinux.org p10/branch/x86_64-i586 release [1665B]
Получено 8732B за 5s (1725B/s).
Найдено http://ftp.altlinux.org p10/branch/x86_64/classic pkglist
Найдено http://ftp.altlinux.org p10/branch/x86_64/classic release
Найдено http://ftp.altlinux.org p10/branch/noarch/classic pkglist
Найдено http://ftp.altlinux.org p10/branch/noarch/classic release
Найдено http://ftp.altlinux.org p10/branch/x86_64-i586/classic pkglist
Найдено http://ftp.altlinux.org p10/branch/x86_64-i586/classic release
Чтение списков пакетов... Завершено
Построение дерева зависимостей... Завершено
Чтение списков пакетов... Завершено
Построение дерева зависимостей... Завершено
Подсчет обновлений... Завершено
Следующие пакеты будут ОБНОВЛЕНЫ:
appstream-data curl libcolorcorrect5 libcrypto1.1 libcurl libheif libjasper libkfontinst5 libkfontinstui5
libkrdb5 libkworkspace55 libnotificationmanager1 libplasma-geolocation-interface5 libpq5 libssl1.1
libtaskmanager6 libweather_ion7 openssl plasma5-workspace plasma5-workspace-common plasma5-workspace-qml
polkit-kde-plasma-workspace sddm-theme-breeze
Следующие НОВЫЕ пакеты будут установлены:
libgsasl libidn libntlm
23 будет обновлено, 3 новых установлено, 0 пакетов будет удалено и 0 не будет обновлено.
Необходимо получить 65,0MB архивов.
После распаковки потребуется дополнительно 968kB дискового пространства.
Продолжить? [Y/n] n
Команды apt-cache
apt-cache - инструмент для поиска и извлечения полезной информации из индекса подключенных репозиториев, получаемого командой apt-get update
Поиск по выражению или части названия пакета
$ apt-cache search часть_названия
Пример выполнения:
[petr@comp-alt-petr ~]$ apt-cache search tux
extreme-tuxracer - High speed arctic racing game based on Tux Racer
freedroidrpg - Isometric action game with RPG elements
ghc8.6.4-clock - High-resolution clock functions: monotonic, realtime, cputime.
<...>
i586-tuxcmd-gvfs - GVFS module for Tux Commander file manager
i586-tuxcmd-modules - Modules for Tux Commander file manager
i586-tuxpaint - A drawing program for young children
i586-tuxvsclippy - Tux vs Clippy originated as an xbox game
Вывод подробной информации о пакете(ах)
$ apt-cache show пакет_или_пакеты_через_пробел
Пример выполнения:
$ apt-cache show stellarium
Package: stellarium
Section: Education
Installed Size: 334355418
Maintainer: Arseny Maslennikov <arseny@altlinux.org>
Version: 0.21.0-alt1.1:sisyphus+279564.100.1.3@1626602684
Pre-Depends: rpmlib(SetVersions), rpmlib(PayloadIsXz)
Depends: /lib64/ld-linux-x86-64.so.2, libQt5Core.so.5()(64bit) (>= set: ), libQt5Widgets.so.5(Qt_5)(64bit), libc.so.6(GLIBC_2.11)(64bit), libc.so.6(GLIBC_2.14)(64bit), libc.so.6(GLIBC_2.15)(64bit), libc.so.6(GLIBC_2.2.5)(64bit), libc.so.6(GLIBC_2.3)(64bit), libc.so.6(GLIBC_2.3.4)(64bit), libc.so.6(GLIBC_2.4)(64bit), libc.so.6(GLIBC_2.7)(64bit), libgcc_s.so.1(GCC_3.0)(64bit), libm.so.6(GLIBC_2.2.5)(64bit), libm.so.6(GLIBC_2.27)(64bit), libm.so.6(GLIBC_2.29)(64bit), libpthread.so.0(GLIBC_2.2.5)(64bit), libstdc++.so.6(CXXABI_1.3)(64bit), libstdc++.so.6(CXXABI_1.3.8)(64bit), libstdc++.so.6(GLIBCXX_3.4)(64bit), libstdc++.so.6(GLIBCXX_3.4.11)(64bit), libstdc++.so.6(GLIBCXX_3.4.14)(64bit), libstdc++.so.6(GLIBCXX_3.4.15)(64bit), libstdc++.so.6(GLIBCXX_3.4.20)(64bit), libstdc++.so.6(GLIBCXX_3.4.21)(64bit), libstdc++.so.6(GLIBCXX_3.4.22)(64bit), libstdc++.so.6(GLIBCXX_3.4.9)(64bit), libz.so.1()(64bit) (>= set:kgb6dgbWdAhpAO8J790tGE6), rtld(GNU_HASH), rtld(GNU_UNIQUE)
Provides: stellarium (= 0.21.0-alt1.1:sisyphus+279564.100.1.3)
Architecture: x86_64
Size: 211602196
MD5Sum: 94be05fb3050f0d0f41a6846d7439844
Filename: stellarium-0.21.0-alt1.1.x86_64.rpm
Description: Astronomical Sky Simulator
Stellarium is a free software available for Windows, Linux/Unix and MacOSX.
It renders 3D photo-realistic skies in real time. With stellarium, you
really see what you can see with your eyes, binoculars or a small
telescope.
Changelog:
* Ср апр 28 2021 Arseny Maslennikov <arseny@altlinux.org> 0.21.0-alt1.1
- NMU: spec: adapted to new cmake macros.
* Чт апр 01 2021 Grigory Ustinov <grenka@altlinux.org> 0.21.0-alt1
- Build new version.
* Чт янв 14 2021 Grigory Ustinov <grenka@altlinux.org> 0.20.4-alt1
- Build new version.
* Пн сен 28 2020 Grigory Ustinov <grenka@altlinux.org> 0.20.3-alt1
- Build new version.
* Чт июн 25 2020 Grigory Ustinov <grenka@altlinux.org> 0.20.2-alt1
- Build new version.
* Пн апр 27 2020 Grigory Ustinov <grenka@altlinux.org> 0.20.1-alt1
- Build new version.
* Пн мар 30 2020 Grigory Ustinov <grenka@altlinux.org> 0.20.0-alt1
- Build new version.
* Вт дек 24 2019 Grigory Ustinov <grenka@altlinux.org> 0.19.3-alt1
Проверка системы на наличие неудовлетворённых зависимостей
$ apt-cache unmet
Вывод списка установленных пакетов, непосредственно зависящих от указанного
$ apt-cache showpkg имя_пакета
Пример выполнения:
$ apt-cache showpkg bash
Package: bash
Versions:
4.4.23-alt1:sisyphus+221902.500.4.1@1550587242(/var/lib/apt/lists/ftp.altlinux.org_pub_distributions_ALTLinux_p10_branch_noarch_base_pkglist.classic)(/var/lib/rpm/Packages)
Reverse Depends:
i586-steam.32bit,bash 4.4
i586-playonlinux.32bit,bash
wondershaper,bash
wgetpaste,bash
python3-module-tpm2-pkcs11,bash
texlive-collection-basic,bash
syslog-ng-debun,bash
<...>
drawswf,bash
dracut,bash 4
clickhouse-test,bash
ceph-common,bash
burp,bash
bash3,bash 3.2.57-alt4
bash-devel,bash 4.4.23-alt1:sisyphus+221902.500.4.1
awesome,bash
atsar_linux,bash
apachkconfig,bash
afl,bash
Dependencies:
4.4.23-alt1:sisyphus+221902.500.4.1@1550587242 - /bin/bash4 (0 (null)) /bin/rbash4 (0 (null)) /usr/bin/bash4bug (0 (null)) sh (5 4.4.23-alt1:sisyphus+221902.500.4.1)
Provides:
4.4.23-alt1:sisyphus+221902.500.4.1@1550587242 - bash /bin/bash
Reverse Provides:
bash 4.4.23-alt1:sisyphus+221902.500.4.1@1550587242
Вывод графа зависимостей указанного пакета
$ apt-cache depends имя_пакета
Пример выполнения:
$ apt-cache depends supertuxkart
supertuxkart-1.4-alt1:p10+310551.200.2.1@1669897162
Требует: supertuxkart-data >= 1.4
Требует: </lib64/ld-linux-x86-64.so.2>
glibc-core-6:2.32-alt5:p10+307861.300.4.1@1666645909
Требует: </usr/bin/convert>
ImageMagick-tools-6.9.12.64-alt1:p10+307930.100.3.1@1665675916
GraphicsMagick-ImageMagick-compat-1.3.36-alt1.1:sisyphus+279676.100.1.2@1626659058
Требует: advancecomp
Требует: coreutils
Требует: findutils
Требует: gawk
Требует: <libSDL2-2.0.so.0()(64bit)>
libSDL2-2.0.18-alt2:p10+293067.140.5.1@1643829073
Требует: <libbluetooth.so.3()(64bit)>
libbluez-5.66-alt1:p10+312153.100.3.1@1672814289
Требует: <libc.so.6(GLIBC_2.11)(64bit)>
glibc-core-6:2.32-alt5:p10+307861.300.4.1@1666645909
Требует: <libc.so.6(GLIBC_2.14)(64bit)>
glibc-core-6:2.32-alt5:p10+307861.300.4.1@1666645909
Требует: <libc.so.6(GLIBC_2.15)(64bit)>
glibc-core-6:2.32-alt5:p10+307861.300.4.1@1666645909
Требует: <libc.so.6(GLIBC_2.16)(64bit)>
glibc-core-6:2.32-alt5:p10+307861.300.4.1@1666645909
Требует: <libc.so.6(GLIBC_2.17)(64bit)>
glibc-core-6:2.32-alt5:p10+307861.300.4.1@1666645909
<...>
Требует: <libstdc++.so.6(GLIBCXX_3.4.19)(64bit)>
libstdc++6-10.3.1-alt2:sisyphus+277353.100.2.1@1625525890
Требует: <libstdc++.so.6(GLIBCXX_3.4.20)(64bit)>
libstdc++6-10.3.1-alt2:sisyphus+277353.100.2.1@1625525890
Требует: <libstdc++.so.6(GLIBCXX_3.4.21)(64bit)>
libstdc++6-10.3.1-alt2:sisyphus+277353.100.2.1@1625525890
Требует: <libstdc++.so.6(GLIBCXX_3.4.22)(64bit)>
libstdc++6-10.3.1-alt2:sisyphus+277353.100.2.1@1625525890
Требует: <libstdc++.so.6(GLIBCXX_3.4.26)(64bit)>
libstdc++6-10.3.1-alt2:sisyphus+277353.100.2.1@1625525890
Требует: <libstdc++.so.6(GLIBCXX_3.4.9)(64bit)>
libstdc++6-10.3.1-alt2:sisyphus+277353.100.2.1@1625525890
Требует: <libvorbisfile.so.3()(64bit)>
libvorbis-1.3.7-alt1:sisyphus+275738.100.1.1@1624751601
Требует: <libz.so.1()(64bit)>
zlib-1.2.13-alt1:p10+318109.100.2.1@1682690580
Требует: optipng
Требует: <python3(os)>
python3-base-3.9.16-alt1:p10+317117.100.3.1@1679922167
Требует: <python3(re)>
python3-base-3.9.16-alt1:p10+317117.100.3.1@1679922167
Требует: <python3(shutil)>
python3-base-3.9.16-alt1:p10+317117.100.3.1@1679922167
Требует: <rtld(GNU_HASH)>
glibc-core-6:2.32-alt5:p10+307861.300.4.1@1666645909
Требует: <rtld(GNU_UNIQUE)>
glibc-core-6:2.32-alt5:p10+307861.300.4.1@1666645909
Требует: sed
Вывод обратного графа зависимостей от указанного пакета для всего индекса
$ apt-cache whatdepends имя_пакета
Пример выполнения:
[petr@comp-alt-petr ~]$ apt-cache whatdepends 0ad-data
0ad-data-1:0.0.26-alt0_3_alpha:p10+307479.200.5.1@1665496739
0ad-1:0.0.26-alt0_1_alpha.p10:p10+307479.400.5.1@1665497068
Требует: 0ad-data >= 0.0.26-alt0_1_rc1
Вывод списка установленных пакетов, отсутствующих в репозитории (возможно устаревших)
$ apt-cache list-extras
Пример выполнения:
$ apt-cache list-extras
kernel-modules-r8125-un-def#9.003.05-alt1.331592.1:p10+307900.1700.2.1@1665419938
kernel-modules-rtl8821ce-un-def#5.5.2-alt4.331592.1:p10+307900.2600.2.1@1665420146
kernel-modules-drm-un-def#1:5.15.72-alt1:p10+307900.100.2.1@1665419124
kernel-modules-rtw89-un-def#0.0-alt1.git.250c6f4.331592.1:p10+307900.3000.2.1@1665420201
kernel-modules-staging-un-def#1:5.15.72-alt1:p10+307900.100.2.1@1665419124
kernel-modules-nvidia-un-def#525.105.17-alt1.393500.1:p10+320306.1000.2.1@1683912114
kernel-modules-rtw89-un-def#0.0-alt4.git.4f3464d.393500.1:p10+320306.1500.1.1@1683831143
anydesk
openvpn-gostcrypto
kernel-modules-rtl8188fu-un-def#1.0-alt1.331592.1:p10+307900.2100.2.1@1665419998
kernel-modules-rtl8723bu-un-def#4.3.6.11-alt1.331592.1:p10+307900.2300.2.1@1665420055
kernel-modules-nvidia-un-def#515.65.01-alt1.331592.1:p10+307900.1500.2.1@1665419859
apt-conf-branch-gostcrypto
kernel-modules-virtualbox-un-def#6.1.44-alt1.393500.1:p10+320306.2100.1.1@1683831292
kernel-modules-rtl8821cu-un-def#5.4.1-alt3.331592.1:p10+307900.2700.2.1@1665420176
kernel-modules-drm-un-def#1:6.1.28-alt1:p10+320306.100.1.1@1683830382
kernel-modules-staging-un-def#1:6.1.28-alt1:p10+320306.100.1.1@1683830382
kernel-modules-rtl8812au-un-def#7502.20210405-alt1.331592.1:p10+307900.2500.2.1@1665420115
kernel-modules-rtl8821ce-un-def#5.5.2-alt4.393500.1:p10+320306.1400.1.1@1683831116
kernel-image-un-def#1:5.15.72-alt1:p10+307900.100.2.1@1665419380
kernel-image-un-def#1:6.1.28-alt1:p10+320306.100.1.1@1683830625
kernel-modules-virtualbox-un-def#6.1.38-alt1.331592.1:p10+307900.3500.2.1@1665420364
kernel-modules-rtl8812au-un-def#1:5.6.4.2-alt1.393500.1:p10+320306.1300.1.1@1683831086
Вывод списка установленных пакетов, от которых не зависят никакие другие пакеты
Возможно, установленных по зависимостям, которые уже неактуальны, однако, прежде чем их удалять, стоит взвесить все ЗА и ПРОТИВ.
$ apt-cache list-nodeps
Пример выполнения:
$ apt-cache list-nodeps
fonts-ttf-google-noto-emoji-color
pam-limits-desktop
accountsservice
libgtkglext
vkd3d-utils
memtest86+
kernel-modules-r8125-un-def#9.003.05-alt1.331592.1:p10+307900.1700.2.1@1665419938
alterator-notes
ocl-nvidia
xorg-conf-synaptics
branding-xalt-kworkstation-bootloader
pm-utils
minidlna
<...>
xkill
udev-rule-generator-net
i2c-tools
fonts-ttf-google-crosextra-carlito
doublecmd-qt
screen
alterator-services
apt-scripts
kde5-printing
i586-xorg-dri-nouveau.32bit
Фильтрация запросов
APT в ALT Linux по умолчанию ищет информацию не только в названиях пакетов, но и в описаниях, вследствие чего выводится более подробная информация. Уточнить запрос можно фильтрацией вывода, например, так:
$ apt-cache search bash | grep -E ^bash
Пример вывода:
$ apt-cache search bash | grep -E ^bash
bash-builtin-lockf - lockf bash builtin
bash-devel - Bash loadable builtins development files
bash3 - The GNU Bourne Again SHell (Bash)
bash3-devel - Bash loadable builtins development files
bash4 - The GNU Bourne Again SHell (Bash)
bash4-devel - Bash loadable builtins development files
bashdb - BASH with Debugger and Improved Debug Support and Error Handling
bash-completion - bash-completion offers programmable completion for bash
bash - The GNU Bourne Again SHell (/bin/bash)
bash3-doc - Documentation for the GNU Bourne Again SHell
bash3-examples - Examples for the GNU Bourne Again SHell
bash4-doc - Documentation for the GNU Bourne Again SHell
bash4-examples - Examples for the GNU Bourne Again SHell
bashrc - bashrc files for the GNU Bourne Again SHell (Bash)
bash-completion-cmake - bash completion for CMake
bash-completion-fzf - Bash completion for fzf
bash-completion-gammu - bash completion for gammu
bash-completion-libsixel - Bash completion for libsixel
bash-completion-mercurial - Bash completion for mercurial
bash-completion-mpv - Bash completion for mpv
bash-completion-nvme - Bash completion for nvme
bash-completion-source-highlight - Bash completion for source-highlight
bash-completion-util-linux - Bash completion for util-linux utils
bash-completion-xss-lock - bash completion for xss-lock
либо так:
Программа будет искать только по названиям пакетов:
$ apt-cache search --names-only ^bash
Пример вывода:
$ apt-cache search --names-only ^bash
bash-builtin-lockf - lockf bash builtin
bash-devel - Bash loadable builtins development files
bash3 - The GNU Bourne Again SHell (Bash)
bash3-devel - Bash loadable builtins development files
bash4 - The GNU Bourne Again SHell (Bash)
bash4-devel - Bash loadable builtins development files
bashdb - BASH with Debugger and Improved Debug Support and Error Handling
lldpd - Link Layer Discovery Protocol Daemon
bash-completion - bash-completion offers programmable completion for bash
bash - The GNU Bourne Again SHell (/bin/bash)
bash3-doc - Documentation for the GNU Bourne Again SHell
bash3-examples - Examples for the GNU Bourne Again SHell
bash4-doc - Documentation for the GNU Bourne Again SHell
bash4-examples - Examples for the GNU Bourne Again SHell
bashrc - bashrc files for the GNU Bourne Again SHell (Bash)
bash-completion-cmake - bash completion for CMake
bash-completion-fzf - Bash completion for fzf
bash-completion-gammu - bash completion for gammu
bash-completion-libsixel - Bash completion for libsixel
bash-completion-mercurial - Bash completion for mercurial
bash-completion-mpv - Bash completion for mpv
bash-completion-nvme - Bash completion for nvme
quilt - Scripts for working with series of patches
bash-completion-source-highlight - Bash completion for source-highlight
bash-completion-util-linux - Bash completion for util-linux utils
bash-completion-xss-lock - bash completion for xss-lock
Команды apf
apf - autonomous package finder - автономный поисковик пакетов - это утилита командной строки для поиска пакета, содержащего заданный файл, или для перечисления содержимого пакета, доступного в репозитории.
Поиск пакетов по шаблону сопоставления файлов
apf search /путь/до/файла
Пример использования:
$ apf search /usr/share/alsa/alsa.conf
libalsa
alsa-plugins
pipewire
alsa-plugins-pulse
Аналог данной команды:
apf find /путь/до/файла
$ apf find /usr/share/alsa/alsa.conf
libalsa
alsa-plugins
pipewire
alsa-plugins-pulse
Поиск файлов по имени пакета содержащего указанное имя
apf list имя
$ apf list ffmpeg
tkffmpeg: /usr/bin/tkffmpeg
python3-module-ha-ffmpeg: /usr/lib/python3/site-packages/ha_ffmpeg-2.0-py3.8.egg-info
python3-module-ha-ffmpeg: /usr/lib/python3/site-packages/ha_ffmpeg-2.0-py3.8.egg-info/PKG-INFO
python3-module-ha-ffmpeg: /usr/lib/python3/site-packages/ha_ffmpeg-2.0-py3.8.egg-info/SOURCES.txt
python3-module-ha-ffmpeg: /usr/lib/python3/site-packages/ha_ffmpeg-2.0-py3.8.egg-info/dependency_links.txt
python3-module-ha-ffmpeg: /usr/lib/python3/site-packages/ha_ffmpeg-2.0-py3.8.egg-info/not-zip-safe
python3-module-ha-ffmpeg: /usr/lib/python3/site-packages/ha_ffmpeg-2.0-py3.8.egg-info/requires.txt
python3-module-ha-ffmpeg: /usr/lib/python3/site-packages/ha_ffmpeg-2.0-py3.8.egg-info/top_level.txt
python3-module-ha-ffmpeg: /usr/lib/python3/site-packages/haffmpeg
python3-module-ha-ffmpeg: /usr/lib/python3/site-packages/haffmpeg/__init__.py
python3-module-ha-ffmpeg: /usr/lib/python3/site-packages/haffmpeg/__pycache__
python3-module-ha-ffmpeg: /usr/lib/python3/site-packages/haffmpeg/__pycache__/__init__.cpython-38.opt-1.pyc
python3-module-ha-ffmpeg: /usr/lib/python3/site-packages/haffmpeg/__pycache__/__init__.cpython-38.opt-2.pyc
python3-module-ha-ffmpeg: /usr/lib/python3/site-packages/haffmpeg/__pycache__/__init__.cpython-38.pyc
python3-module-ha-ffmpeg: /usr/lib/python3/site-packages/haffmpeg/__pycache__/camera.cpython-38.opt
<...>
python3-module-ha-ffmpeg: /usr/lib/python3/site-packages/haffmpeg/__pycache__/tools.cpython-38.opt-1.pyc
python3-module-ha-ffmpeg: /usr/lib/python3/site-packages/haffmpeg/__pycache__/tools.cpython-38.opt-2.pyc
python3-module-ha-ffmpeg: /usr/lib/python3/site-packages/haffmpeg/__pycache__/tools.cpython-38.pyc
python3-module-ha-ffmpeg: /usr/lib/python3/site-packages/haffmpeg/camera.py
python3-module-ha-ffmpeg: /usr/lib/python3/site-packages/haffmpeg/core.py
python3-module-ha-ffmpeg: /usr/lib/python3/site-packages/haffmpeg/sensor.py
python3-module-ha-ffmpeg: /usr/lib/python3/site-packages/haffmpeg/tools.py
tkffmpeg: /usr/share/applications/tkffmpeg.desktop
ffmpeg-doc: /usr/share/doc/ffmpeg-doc-4.4.3
ffmpeg-doc: /usr/share/doc/ffmpeg-doc-4.4.3/faq.html
ffmpeg-doc: /usr/share/doc/ffmpeg-doc-4.4.3/fate.html
ffmpeg-doc: /usr/share/doc/ffmpeg-doc-4.4.3/ffmpeg-all.html
ffmpeg-doc: /usr/share/doc/ffmpeg-doc-4.4.3/ffmpeg-bitstream-filters.html
Аналог данной команды
$ apf show имя
Пример выполнения:
$ apf show ffmpeg
tkffmpeg: /usr/bin/tkffmpeg
python3-module-ha-ffmpeg: /usr/lib/python3/site-packages/ha_ffmpeg-2.0-py3.8.egg-info
python3-module-ha-ffmpeg: /usr/lib/python3/site-packages/ha_ffmpeg-2.0-py3.8.egg-info/PKG-INFO
python3-module-ha-ffmpeg: /usr/lib/python3/site-packages/ha_ffmpeg-2.0-py3.8.egg-info/SOURCES.txt
python3-module-ha-ffmpeg: /usr/lib/python3/site-packages/ha_ffmpeg-2.0-py3.8.egg-info/dependency_links.txt
python3-module-ha-ffmpeg: /usr/lib/python3/site-packages/ha_ffmpeg-2.0-py3.8.egg-info/not-zip-safe
python3-module-ha-ffmpeg: /usr/lib/python3/site-packages/ha_ffmpeg-2.0-py3.8.egg-info/requires.txt
python3-module-ha-ffmpeg: /usr/lib/python3/site-packages/ha_ffmpeg-2.0-py3.8.egg-info/top_level.txt
python3-module-ha-ffmpeg: /usr/lib/python3/site-packages/haffmpeg
python3-module-ha-ffmpeg: /usr/lib/python3/site-packages/haffmpeg/__init__.py
python3-module-ha-ffmpeg: /usr/lib/python3/site-packages/haffmpeg/__pycache__
<...>
python3-module-ha-ffmpeg: /usr/lib/python3/site-packages/haffmpeg/__pycache__/__init__.cpython-38.opt-1.pyc
python3-module-ha-ffmpeg: /usr/lib/python3/site-packages/haffmpeg/__pycache__/__init__.cpython-38.opt-2.pyc
python3-module-ha-ffmpeg: /usr/lib/python3/site-packages/haffmpeg/__pycache__/__init__.cpython-38.pyc
python3-module-ha-ffmpeg: /usr/lib/python3/site-packages/haffmpeg/__pycache__/camera.cpython-38.opt-1.pyc
python3-module-ha-ffmpeg: /usr/lib/python3/site-packages/haffmpeg/__pycache__/camera.cpython-38.opt-2.pyc
python3-module-ha-ffmpeg: /usr/lib/python3/site-packages/haffmpeg/__pycache__/camera.cpython-38.pyc
python3-module-ha-ffmpeg: /usr/lib/python3/site-packages/haffmpeg/__pycache__/core.cpython-38.opt-1.pyc
python3-module-ha-ffmpeg: /usr/lib/python3/site-packages/haffmpeg/__pycache__/core.cpython-38.opt-2.pyc
python3-module-ha-ffmpeg: /usr/lib/python3/site-packages/haffmpeg/__pycache__/core.cpython-38.pyc
python3-module-ha-ffmpeg: /usr/lib/python3/site-packages/haffmpeg/__pycache__/sensor.cpython-38.opt-1.pyc
python3-module-ha-ffmpeg: /usr/lib/python3/site-packages/haffmpeg/__pycache__/sensor.cpython-38.opt-2.pyc
python3-module-ha-ffmpeg: /usr/lib/python3/site-packages/haffmpeg/__pycache__/sensor.cpython-38.pyc
python3-module-ha-ffmpeg: /usr/lib/python3/site-packages/haffmpeg/__pycache__/tools.cpython-38.opt-1.pyc
python3-module-ha-ffmpeg: /usr/lib/python3/site-packages/haffmpeg/__pycache__/tools.cpython-38.opt-2.pyc
python3-module-ha-ffmpeg: /usr/lib/python3/site-packages/haffmpeg/__pycache__/tools.cpython-38.pyc
python3-module-ha-ffmpeg: /usr/lib/python3/site-packages/haffmpeg/camera.py
python3-module-ha-ffmpeg: /usr/lib/python3/site-packages/haffmpeg/core.py
python3-module-ha-ffmpeg: /usr/lib/python3/site-packages/haffmpeg/sensor.py
python3-module-ha-ffmpeg: /usr/lib/python3/site-packages/haffmpeg/tools.py
Обновление базы
# apf update
Пример выполнения:
# apf update
Fetching /var/cache/apf/index.x86_64 from rsync://rsync.altlinux.ru/ALTLinux/p10/branch/x86_64/base/contents_index
Welcome to ALT Linux Team public rsync archive!
contents_index
180.104.552 100% 87,63MB/s 0:00:01 (xfr#1, to-chk=0/1)
Fetching /var/cache/apf/index.noarch from rsync://rsync.altlinux.ru/ALTLinux/p10/branch/noarch/base/contents_index
Welcome to ALT Linux Team public rsync archive!
contents_index
467.629.229 100% 136,55MB/s 0:00:03 (xfr#1, to-chk=0/1)
Fetching /var/cache/apf/index.i586 from rsync://rsync.altlinux.ru/ALTLinux/p10/branch/i586/base/contents_index
Welcome to ALT Linux Team public rsync archive!
contents_index
140.974.426 100% 87,41MB/s 0:00:01 (xfr#1, to-chk=0/1)
Команды RPM
RPM - система управления пакетами в дистрибутивах Linux.
Установка пакета из файла
Для установки программы из пакета (например, которой нет в репозитории), воспользуйтесь следующей конструкцией:
# rpm -i package.rpm
где package.rpm - нужный Вам файл.
Пример выполнения команды:
[root@comp-alt-petr]# rpm -i mytetra_1.42.2-alt2.rpm
В конце команды Вы можете указать дополнительные опции:
- --nodeps не проверять зависимости пакета
- --replacepkgs или --reinstall переустановить пакет
Подробный вывод
Для того, чтобы отображался прогресс установки, используйте дополнительные параметры -v и -h.
- -v - выводить более детальные сообщения
- -h - выводить "#" по мере установки пакета (используется с -v)
# rpm -ivh package.rpm
Пример выполнения команды:
# rpm -ivh mytetra_1.42.2-alt2.rpm
Подготовка... #################################################################################################### [100%]
Обновление / установка...
1: mytetra-1.42.2-alt2 #################################################################################################### [100%]
Running /usr/lib/rpm/posttrans-filetriggers
Принудительная установка старой версии пакета
Следующая команда заменит или установит пакет независимо от наличия и версий пакетов, вплоть до понижения версии.
# rpm -Uvh --oldpackage foo-1.0-i586.rpm
Принудительная установка без удовлетворения зависимостей
# rpm -Uvh --nodeps foo-1.0-i586.rpm
Обновление пакета
Если у Вас пакет с более свежей версией, чем та, что установлена в системе, то Вы можете обновить его двумя способами:
С принудительной установкой
Пакет будет обновлён указанным. Если он не стоит в системе, то будет установлен.
# rpm -Uvh foo-1.0-i586.rpm
Пример выполнения команды:
# rpm -Uvh usbids-20230519-alt1.noarch.rpm
Подготовка... #################################################################################################### [100%]
Обновление / установка...
1: usbids-20230519-alt1 #################################################################################################### [ 50%]
Очистка / удаление...
2: usbids-20230428-alt1 #################################################################################################### [100%]
Running /usr/lib/rpm/posttrans-filetriggers
Без принудительной установки
Пакет будет обновлён указанным. Если он не стоит в системе, то он не будет установлен.
# rpm -Fvh boswars-2.7-alt1_24.svn160110.x86_64.rpm
Команда не подробная.
Удаление пакета
# rpm -e package
Удаление пакета без учёта зависимых от него пакетов
# rpm -e --nodeps package
Узнать полное имя пакета
Обычно, из Synaptic или apt пакет устанавливается коротким именем. Чтобы узнать его полное имя - архитектуру, версию и пр., введите следующую команду:
# rpm -qa пакет
Пример:
[root@comp-alt-petr ~]# rpm -qa supertuxkart
supertuxkart-1.4-alt1.x86_64
Найти пакет по части имени
Указав специальной командой часть названия пакета, можно найти все пакеты содержащие эту фразу.
# rpm -qa | grep часть_названия
Пример:
[root@comp-alt-petr ~]# rpm -qa | grep tux
supertuxkart-data-1.4-alt1.noarch
tuxcmd-0.6.70-alt2.x86_64
supertux2-0.6.3-alt2.x86_64
supertuxkart-1.4-alt1.x86_64
supertux2-data-0.6.3-alt2.noarch
Узнать пакет по файлу
Если у Вас есть файл в системе, но вы не знаете, к какому пакету он относится, это можно разрешить с помощью команды whereis:
[root@comp-alt-petr ~]# whereis bash
bash: /bin/bash /usr/lib/bash /usr/share/man/man1/bash.1.xz /usr/share/info/bash.info.xz
А потом, указав путь, использовать следующую команду:
[root@comp-alt-petr ~]# rpm -qf /usr/share/man/man1/bash.1.xz
bash-4.4.23-alt1.noarch
Если это исполняемый файл, сначала нужно найти, где он находится с помощью команды which.
[root@comp-alt-petr ~]# which kpat
/usr/lib/kf5/bin/kpat
А потом, указав путь, использовать следующую команду:
[root@comp-alt-petr ~]# rpm -qf /usr/lib/kf5/bin/kpat
kde5-kpat-22.12.3-alt1.x86_64
Так же в качестве аргумента для параметра rpm -qf можно сразу указать команду, например:
[root@comp-alt-petr ~]# rpm -qf $(which kpat)
kde5-kpat-22.12.3-alt1.x86_64
Вывести список всех установленных пакетов с номерами версий и релизов
Чтобы вывести список всех установленных пакетов, используйте следующую конструкцию:
# rpm -qa
Дополнительные параметры
Чтобы вывести список построчно, укажите параметр less:
# rpm -qa | less
Чтобы вывести список в алфавитном порядке, укажите параметр sort:
# rpm -qa | sort
Чтобы использовать оба параметра, укажите их следующим образом:
# rpm -qa | sort | less
Чтобы вывести только названия пакетов, без версии, используйте команду:
# rpm -qa --qf '%{NAME}\n' | sort
Проверить, установлен ли пакет
Чтобы проверить, установлен ли пакет, введите следующую команду:
# rpm -q 'Имя пакета'
Пример:
# rpm -q 0ad
0ad-0.0.26-alt0_1_alpha.p10.x86_64
# rpm -q boswars
пакет boswars не установлен
Вывести все пакеты определенной категории
Чтобы вывести все установленные пакеты определенной категории, введите команду (с пробелом в конце!):
# rpm -qg
Нажмите Tab
И после qg введите одну из отобразившихся категорий:
# rpm -qg
Accessibility Development/Python Networking/File transfer System/Configuration/Networking
Archiving/Backup Development/Python3 Networking/Instant messaging System/Configuration/Other
Archiving/Cd burning Development/Scheme Networking/Mail System/Configuration/Packaging
Archiving/Compression Development/Tcl Networking/News System/Configuration/Printing
Archiving/Other Development/Tools Networking/Other System/Fonts/True type
Communications Documentation Networking/Remote access System/Fonts/Type1
Converted/ Editors Networking/WWW System/Fonts/X11 bitmap
Databases Education Office System/Internationalization
Development/C Emulators Other System/Kernel and hardware
Development/C++ File tools Publishing System/Legacy libraries
Development/Databases Games/Arcade Sciences/Geosciences System/Libraries
Development/Debug Games/Strategy Sciences/Mathematics System/Servers
Development/Debuggers Graphical desktop/GNOME Security/Networking System/X11
Development/Java Graphical desktop/KDE Shells System/XFree86
Development/KDE and QT Graphical desktop/Other Sound Terminals
Development/Kernel Graphics System/Base Text tools
Development/Other Monitoring System/Configuration/Boot and Init Video
Development/Perl Networking/DNS System/Configuration/Hardware
# rpm -qg Graphics
kde5-kolourpaint-22.12.3-alt1.x86_64
kde5-kruler-22.12.3-alt1.x86_64
tesseract-langpack-ru-4.1.0-alt1.noarch
iscan-free-2.30.4-alt2.x86_64
kde5-printing-22.12.1-alt1.x86_64
tesseract-5.2.0-alt1.x86_64
kde5-scanning-22.12.1-alt1.x86_64
sane-1.2.1-alt1.x86_64
icon-theme-oxygen-5.104.0-alt1.noarch
icon-theme-breeze-5.104.0-alt1.noarch
xsane-doc-0.999-alt6.2.noarch
sane-airscan-0.99.25-alt1.x86_64
xsane-doc-ru-0.999-alt1.noarch
colord-1.4.6-alt1.x86_64
tesseract-langpack-en-4.1.0-alt1.noarch
libexiv2-0.27.5-alt1.x86_64
sane-doc-1.2.1-alt1.noarch
iscan-data-1.39.1-alt1.noarch
branding-xalt-kworkstation-graphics-10.1.1-alt2.noarch
netpbm-10.85.04-alt1.x86_64
xsane-0.999-alt6.2.x86_64
mypaint-brushes1.0-1.3.1-alt1.noarch
icc-profiles-1.0.1-alt1.noarch
gimp-2.10.30-alt1.x86_64
optipng-0.7.7-alt1.x86_64
libjpeg-utils-2.0.6-alt3.x86_64
ImageMagick-tools-6.9.12.64-alt1.x86_64
Определить имя пакета по rpm-файлу
Если у Вас какой-то rpm-файл с непонятным именем, узнать, что именно он установит, можно следующей командой:
# rpm -qp "путь к файлу"
Например, у нас следующая ситуация. Пакет содержит в себе игру supertuxkart. Кто-то его переименовал в 0ad (или в любое непонятное имя) и предлагает нам его установить как эту игру. Чтобы узнать, какое имя на самом деле было прописано при сборке, выполните следующую команду:
# rpm -qp /home/petr/0ad.rpm
supertuxkart-1.4-alt1.x86_64
Определить место хранения документации пакета
Часто в пакете поставляется документация. Узнать, где она хранится, можно следующей командой. Указывается не rpm-файл, а установленный пакет.
# rpm -qd mytetra
/usr/share/doc/mytetra-1.42.2/readme.txt
Список файлов установленного пакета
Чтобы вывести список файлов, который содержит пакет, воспользуйтесь следующей командой:
# rpm -ql имя_пакета
Пример использования:
# rpm -ql mytetra
/usr/bin/mytetra
/usr/share/applications/mytetra.desktop
/usr/share/doc/mytetra-1.42.2
/usr/share/doc/mytetra-1.42.2/readme.txt
/usr/share/icons/hicolor/48x48/apps/mytetra.png
Если Вы попробуете указать неустановленный rpm-пакет, то получите ошибку:
# rpm -ql /home/petr/libvitastor-blk-0.9.0-alt1.x86_64.rpm
пакет /home/petr/libvitastor-blk-0.9.0-alt1.x86_64.rpm не установлен
Где искать исполняемые файлы этого пакета?
Чтобы найти исполняемые файлы указанного пакета, можно воспользоваться следующей конструкцией:
# rpm -ql имя_пакета | grep bin/
Пример использования:
# rpm -ql bash | grep bin/
/bin/bash
/bin/bash2
/bin/rbash
/usr/bin/bashbug
Что отвечает за запуск служб в этом пакете?
Чтобы выяснить, какие части пакета отвечают за запуск его служб, используйте конструкцию
# rpm -ql имя_пакета | grep /etc/rc.d/init.d/
если используется SysVinit.
Пример:
# rpm -ql udev | grep /etc/rc.d/init.d/
/etc/rc.d/init.d/udevd
Или
# rpm -ql имя_пакета | grep /lib/systemd/system/
если используется Systemd.
Пример:
# rpm -ql udev | grep /lib/systemd/system/
/lib/systemd/system/initrd-udevadm-cleanup-db.service
/lib/systemd/system/sockets.target.wants/systemd-udevd-control.socket
/lib/systemd/system/sockets.target.wants/systemd-udevd-kernel.socket
/lib/systemd/system/sysinit.target.wants/systemd-udev-trigger.service
/lib/systemd/system/sysinit.target.wants/systemd-udevd.service
/lib/systemd/system/systemd-udev-settle.service
/lib/systemd/system/systemd-udev-trigger.service
/lib/systemd/system/systemd-udev-trigger.service.d
/lib/systemd/system/systemd-udev-trigger.service.d/systemd-udev-trigger-no-reload.conf
/lib/systemd/system/systemd-udevd-control.socket
/lib/systemd/system/systemd-udevd-kernel.socket
/lib/systemd/system/systemd-udevd.service
/lib/systemd/system/udevd.service
Список файлов неустановленного пакета
Чтобы узнать содержимое неустановленного rpm-пакета, используйте команду:
# rpm -qlp имя_пакета.rpm
Пример выполнения команды:
# rpm -qlp xkill_1.0.5-alt1.rpm
/usr/bin/xkill
/usr/share/applications/xkill.desktop
/usr/share/icons/hicolor/16x16/apps/xkill.xpm
/usr/share/icons/hicolor/32x32/apps/xkill.xpm
/usr/share/icons/hicolor/48x48/apps/xkill.xpm
/usr/share/man/man1/xkill.1.xz
Список конфигурационных файлов пакета
Чтобы вывести все файлы с настройками, входящими в пакет, выполните следующую команду:
# rpm -qc bash
/etc/bashrc
/etc/bashrc.d/alias.sh
Так же, можно использовать конструкцию с командой для списка файлов установленного пакета:
# rpm -ql bash | grep /etc/
/etc/bashrc
/etc/bashrc.d
/etc/bashrc.d/alias.sh
Состояние установленных файлов
Чтобы узнать состояние перечисленных файлов из установленного пакета, выполните следующую команду:
# rpm -qs mytetra
нормальный /usr/bin/mytetra
нормальный /usr/share/applications/mytetra.desktop
нормальный /usr/share/doc/mytetra-1.42.2
нормальный /usr/share/doc/mytetra-1.42.2/readme.txt
нормальный /usr/share/icons/hicolor/48x48/apps/mytetra.png
Просмотр списка последних установленных пакетов
Чтобы узнать какие последние пакеты были установлены, выполните следующую команду:
# rpm -qa -last
Пример выполнения:
# rpm -qa -last
apf-0.3-alt2.noarch Пн 22 мая 2023 15:35:23
NetworkManager-openvpn-gtk-common-1.10.3-alt0.p10.1.ge1c5978.x86_64 Пн 22 мая 2023 14:34:13
NetworkManager-openvpn-gtk3-1.10.3-alt0.p10.1.ge1c5978.x86_64 Пн 22 мая 2023 14:34:13
xkill-1.0.5-alt1.x86_64 Пн 22 мая 2023 14:24:44
mate-applets-1.26.1-alt2.x86_64 Пн 22 мая 2023 11:26:35
libgucharmap-14.0.1-alt1.x86_64 Пн 22 мая 2023 11:26:34
NetworkManager-tui-1.40.18-alt1.p10.1.x86_64 Пн 22 мая 2023 11:22:50
libnewt52-0.52.16-alt1.x86_64 Пн 22 мая 2023 11:22:50
...
Сокращенный прокручивающийся вариант
Чтобы список прокручивался, укажите параметр less:
# rpm -qa -last | less
Пример выполнения:
# rpm -qa -last | less
LibreOffice-still-integrated-7.3.7.2-alt2.x86_64 Пт 19 мая 2023 13:20:01
LibreOffice-still-common-7.3.7.2-alt2.x86_64 Пт 19 мая 2023 13:20:01
systemd-sysvinit-249.16-alt2.noarch Пт 19 мая 2023 13:16:52
systemd-oomd-defaults-249.16-alt2.noarch Пт 19 мая 2023 13:16:52
systemd-analyze-249.16-alt2.x86_64 Пт 19 мая 2023 13:16:52
systemd-249.16-alt2.x86_64 Пт 19 мая 2023 13:16:52
qemu-guest-agent-8.0.0-alt1.p10.x86_64 Пт 19 мая 2023 13:16:52
python3-module-libvirt-9.3.0-alt1.x86_64 Пт 19 мая 2023 13:16:52
openssl-gost-engine-1.1.0.3.0.255.ge3af41d.p1-alt4.x86_64 Пт 19 мая 2023 13:16:52
i586-libudev1-249.16-alt2.i586 Пт 19 мая 2023 13:16:52
i586-libsystemd-249.16-alt2.i586 Пт 19 мая 2023 13:16:52
i586-libnss-myhostname-249.16-alt2.i586 Пт 19 мая 2023 13:16:52
systemd-utils-filetriggers-249.16-alt2.noarch Пт 19 мая 2023 13:16:51
systemd-tmpfiles-common-249.16-alt2.noarch Пт 19 мая 2023 13:16:51
lines 1-14
Прервать программу можно клавишами Ctrl+Z.
Показать последние 5 пунктов
# rpm -qa --last | head -n5
Пример выполнения:
# rpm -qa --last | head -n5
usbids-20230519-alt1.noarch Вт 23 мая 2023 14:00:45
mytetra-1.42.2-alt2.x86_64 Вт 23 мая 2023 12:35:25
pciids-20230519-alt1.noarch Вт 23 мая 2023 10:56:58
alterator-auth-0.44.2-alt1.x86_64 Пн 22 мая 2023 17:41:40
tuxcmd-0.6.70-alt2.x86_64 Пн 22 мая 2023 16:59:33
Проверка целостности установленных пакетов
Проверка целостности указанной программы
Чтобы проверить целостность программы, используйте следующую команду:
# rpm -Vf /путь/к/программе
Пример выполнения:
# rpm -Vf /bin/mount
.M....... /bin/mount
.M....... /bin/umount
Проверка целостности всех установленных пакетов
# rpm -Va
Пример выполнения:
# rpm -Va
......G.. /usr/bin/fusermount3
.M....G.. /var/cache/man
S.5....T. c /etc/gtk-2.0/gtkrc
........P /usr/lib/kf5/bin/kwin_wayland
missing /var/lock/sane
.M....G.. /usr/bin/mtr
S.5....T. c /etc/skel.be_BY.CP1251/.xprofile
S.5....T. c /etc/skel.de_DE/.xprofile
...
Зависимости пакетов
От каких пакетов зависит указанный пакет
Чтобы узнать, от каких пакетов зависит указанный пакет используйте конструкцию:
# rpm -q --requires пакет
Пример:
# rpm -q --requires mytetra
/lib64/ld-linux-x86-64.so.2
libQt5Core.so.5()(64bit)
rpmlib(SetVersions)
libQt5Core.so.5(Qt_5)(64bit)
libQt5Core.so.5(Qt_5.15)(64bit)
libQt5Gui.so.5()(64bit)
libQt5Gui.so.5(Qt_5)(64bit)
libQt5Network.so.5()(64bit)
libQt5Network.so.5(Qt_5)(64bit)
libQt5PrintSupport.so.5()(64bit)
libQt5PrintSupport.so.5(Qt_5)(64bit)
libQt5Widgets.so.5()(64bit)
libQt5Widgets.so.5(Qt_5)(64bit)
libQt5Xml.so.5()(64bit) >=
libQt5Xml.so.5(Qt_5)(64bit)
libc.so.6(GLIBC_2.14)(64bit)
libc.so.6(GLIBC_2.2.5)(64bit)
libc.so.6(GLIBC_2.3.4)(64bit)
libc.so.6(GLIBC_2.4)(64bit)
libgcc_s.so.1(GCC_3.0)(64bit)
libpthread.so.0(GLIBC_2.2.5)(64bit)
libstdc++.so.6(CXXABI_1.3)(64bit)
libstdc++.so.6(GLIBCXX_3.4)(64bit)
libstdc++.so.6(GLIBCXX_3.4.14)(64bit)
rtld(GNU_HASH)
rpmlib(PayloadIsLzma)
Какие из установленных пакетов зависят от указанного
Чтобы узнать, какие установленные пакеты зависят от указанного, используйте следующую конструкцию:
# rpm -q --whatrequires пакет
Пример выполнения:
# rpm -q --whatrequires bash
bash-completion-2.11-alt1.git.157.g59d2322e.noarch
eepm-3.28.1-alt1.noarch
systemd-249.16-alt2.x86_64
rpm-build-4.0.4-alt170.1.x86_64
basesystem-sisyphus-alt23.noarch
plasma5-desktop-5.27.4-alt3.x86_64
gdb-10.1-alt1.x86_64
make-initrd-2.31.0-alt4.x86_64
Какие зависимости предоставляет указанный пакет
Чтобы узнать, какие зависимости предоставляет указанный пакет, используйте следующую конструкцию:
# rpm -q --whatprovides пакет
Пример выполнения:
# rpm -q --whatprovides bash
bash-4.4.23-alt1.noarch
Информация о пакетах
Вывод подробной информации об уже установленном пакете
Чтобы получить информацию об уже установленном пакете, используйте команду:
# rpm -qi bash
Обратите внимание, что в ней указывается пакет из списка уже установленных пакетов из системы.
Пример выполнения:
# rpm -qi bash
Name : bash
Version : 4.4.23
Release : alt1
DistTag : sisyphus+221902.500.4.1
Architecture: noarch
Install Date: Ср 17 мая 2023 17:44:51
Group : Shells
Size : 0
License : None
Signature : DSA/SHA1, Вт 19 фев 2019 17:40:44, Key ID 95c584d5ae4ae412
Source RPM : bash-defaults-4.4.23-alt1.src.rpm
Build Date : Вт 19 фев 2019 17:40:42
Build Host : ldv-sisyphus.hasher.altlinux.org
Relocations : (not relocatable)
Packager : Dmitry V. Levin <ldv@altlinux.org>
Vendor : ALT Linux Team
Summary : The GNU Bourne Again SHell (/bin/bash)
Description :
This package provides default setup for the GNU Bourne Again SHell (/bin/bash).
Вывод подробной информации о ещё не установленном пакете
Чтобы получить информацию о неустановленном пакете используйте следующую команду.
Обратите внимание, что в ней указывается файл пакета rpm расположенный на диске.
# rpm -qip /путь/к/пакету/foo-1.0-i586.rpm
Пример выполнения:
# rpm -qip /home/petr/Загрузки/boswars-2.7-alt1_24.svn160110.x86_64.rpm
Name : boswars
Version : 2.7
Release : alt1_24.svn160110
DistTag : sisyphus+264006.100.1.2
Architecture: x86_64
Install Date: (not installed)
Group : Games/Other
Size : 91808512
License : GPLv2
Signature : DSA/SHA1, Сб 26 дек 2020 20:16:37, Key ID 95c584d5ae4ae412
Source RPM : boswars-2.7-alt1_24.svn160110.src.rpm
Build Date : Сб 26 дек 2020 20:16:05
Build Host : viy-sisyphus.hasher.altlinux.org
Relocations : (not relocatable)
Packager : Igor Vlasenko <viy@altlinux.ru>
Vendor : ALT Linux Team
URL : http://www.boswars.org/
Summary : Bos Wars is a futuristic real-time strategy game
Description :
Bos Wars is a futuristic real-time strategy game. It is possible to play
against human opponents over LAN, internet, or against the computer.
Bos Wars aims to create a completly original and fun open source RTS game.
Восстановление поврежденной БД RPM
Иногда, например из-за зависания компьютера или отключения электричества при работе RPM с пакетами (установка, удаление, обновление и пр.) база данных, содержащая информацию об установленных пакетах повреждается и пакетный менеджер может вообще не заработать и будет выдавать ошибку о поврежденной БД.
Типа такой:
error: rpmdb: BDB0060 PANIC: fatal region error detected; run recovery
error: db5 error(-30973) from db->close: BDB0087 DB_RUNRECOVERY: Fatal error, run database recovery
error: rpmdb: BDB1581 File handles still open at environment close
error: rpmdb: BDB1582 Open file handle: /var/lib/rpm/__db.001
error: rpmdb: BDB1582 Open file handle: /var/lib/rpm/__db.002
error: rpmdb: BDB1582 Open file handle: /var/lib/rpm/__db.003
error: rpmdb: BDB1582 Open file handle: /var/lib/rpm/Packages
error: rpmdb: BDB0060 PANIC: fatal region error detected; run recovery
error: db5 error(-30973) from dbenv->close: BDB0087 DB_RUNRECOVERY: Fatal error, run database recovery
Несмотря на критичность, данная проблема решается довольно просто.
Первым делом мы очищаем старую базу данных:
# rm -f /var/lib/rpm/__db*
А после, генерируем новую заново:
# rpm -vv --rebuilddb
После генерации попробуйте получить список пакетов:
# rpm -qa
Должен вывестись список установленных пакетов.
Дополнительно
Проверить цифровые подписи указанного пакета
# rpm --checksig foo-1.0-i586.rpm
Пример выполнения команды:
# rpm --checksig /home/petr/Загрузки/boswars-2.7-alt1_24.svn160110.x86_64.rpm
/home/petr/Загрузки/boswars-2.7-alt1_24.svn160110.x86_64.rpm: ((SHA1) DSA) sha1 md5 (GPG) НЕ ОК (ОТСУТСТВУЮТ КЛЮЧИ: (SHA1) DSA#ae4ae412 GPG#ae4ae412)
Вывод текущей конфигурации RPM
# rpm --showrc
Вы получите длинную простыню конфигурации.
Получение справки по другим возможностям и опциям
# rpm --help
$ man rpm
Ядра и их модули
Как узнать версию текущего ядра?
$ uname -r
4.9.131-std-def-alt0.M80P.1
Как посмотреть установленные пакеты с модулями ядра?
$ rpm -qa | grep -E '^kernel\-(image|modules)\-'
kernel-modules-bcmwl-std-def-6.30.223.248-alt13.264579.0.M80P.1
kernel-modules-virtualbox-std-def-5.1.30-alt2.264579.0.M80P.1
kernel-modules-zfs-std-def-0.7.9-alt1.264579.0.M80P.1
kernel-image-std-def-4.9.131-alt0.M80P.1
kernel-modules-kvm-std-def-4.9.131-alt0.M80P.1
kernel-modules-staging-std-def-4.9.131-alt0.M80P.1
kernel-modules-drm-std-def-4.9.131-alt0.M80P.1
kernel-modules-v4l-std-def-4.9.131-alt0.M80P.1
Сопоставление модулей ядра файлам и пакетам
Какие модули ядра сейчас используются/загружены?
# lspci -k
Будет выведен следующий список: |
---|
# lspci -k
00:00.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Renoir/Cezanne Root Complex
Subsystem: Lenovo Device 3831
00:00.2 IOMMU: Advanced Micro Devices, Inc. [AMD] Renoir/Cezanne IOMMU
Subsystem: Lenovo Device 382d
00:01.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Renoir PCIe Dummy Host Bridge
00:02.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Renoir PCIe Dummy Host Bridge
00:02.1 PCI bridge: Advanced Micro Devices, Inc. [AMD] Renoir/Cezanne PCIe GPP Bridge
Kernel driver in use: pcieport
00:02.2 PCI bridge: Advanced Micro Devices, Inc. [AMD] Renoir/Cezanne PCIe GPP Bridge
Kernel driver in use: pcieport
00:02.4 PCI bridge: Advanced Micro Devices, Inc. [AMD] Renoir/Cezanne PCIe GPP Bridge
Kernel driver in use: pcieport
00:08.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Renoir PCIe Dummy Host Bridge
00:08.1 PCI bridge: Advanced Micro Devices, Inc. [AMD] Renoir Internal PCIe GPP Bridge to Bus
Kernel driver in use: pcieport
00:08.2 PCI bridge: Advanced Micro Devices, Inc. [AMD] Renoir Internal PCIe GPP Bridge to Bus
Kernel driver in use: pcieport
00:14.0 SMBus: Advanced Micro Devices, Inc. [AMD] FCH SMBus Controller (rev 51)
Subsystem: Lenovo Device 3868
Kernel driver in use: piix4_smbus
00:14.3 ISA bridge: Advanced Micro Devices, Inc. [AMD] FCH LPC Bridge (rev 51)
Subsystem: Lenovo Device 3856
00:18.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Cezanne Data Fabric; Function 0
00:18.1 Host bridge: Advanced Micro Devices, Inc. [AMD] Cezanne Data Fabric; Function 1
00:18.2 Host bridge: Advanced Micro Devices, Inc. [AMD] Cezanne Data Fabric; Function 2
00:18.3 Host bridge: Advanced Micro Devices, Inc. [AMD] Cezanne Data Fabric; Function 3
Kernel driver in use: k10temp
00:18.4 Host bridge: Advanced Micro Devices, Inc. [AMD] Cezanne Data Fabric; Function 4
00:18.5 Host bridge: Advanced Micro Devices, Inc. [AMD] Cezanne Data Fabric; Function 5
00:18.6 Host bridge: Advanced Micro Devices, Inc. [AMD] Cezanne Data Fabric; Function 6
00:18.7 Host bridge: Advanced Micro Devices, Inc. [AMD] Cezanne Data Fabric; Function 7
01:00.0 SD Host controller: O2 Micro, Inc. SD/MMC Card Reader Controller (rev 01)
Subsystem: Lenovo Device 3877
Kernel driver in use: sdhci-pci
02:00.0 Network controller: Realtek Semiconductor Co., Ltd. Device b852
Subsystem: Lenovo Device 4853
Kernel driver in use: rtw89_8852be
03:00.0 Non-Volatile memory controller: Intel Corporation Device f1aa (rev 03)
Subsystem: Intel Corporation Device 390f
Kernel driver in use: nvme
04:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Barcelo (rev c2)
Subsystem: Lenovo Device 3801
Kernel driver in use: amdgpu
04:00.1 Audio device: Advanced Micro Devices, Inc. [AMD/ATI] Renoir Radeon High Definition Audio Controller
Subsystem: Lenovo Device 382e
Kernel driver in use: snd_hda_intel
04:00.2 Encryption controller: Advanced Micro Devices, Inc. [AMD] Family 17h (Models 10h-1fh) Platform Security Processor
Subsystem: Lenovo Device 384a
Kernel driver in use: ccp
04:00.3 USB controller: Advanced Micro Devices, Inc. [AMD] Renoir/Cezanne USB 3.1
Subsystem: Lenovo Device 3860
Kernel driver in use: xhci_hcd
04:00.4 USB controller: Advanced Micro Devices, Inc. [AMD] Renoir/Cezanne USB 3.1
Subsystem: Lenovo Device 3860
Kernel driver in use: xhci_hcd
04:00.5 Multimedia controller: Advanced Micro Devices, Inc. [AMD] ACP/ACP3X/ACP6x Audio Coprocessor (rev 01)
Subsystem: Lenovo Device 3853
04:00.6 Audio device: Advanced Micro Devices, Inc. [AMD] Family 17h/19h HD Audio Controller
Subsystem: Lenovo Device 3851
Kernel driver in use: snd_hda_intel
05:00.0 SATA controller: Advanced Micro Devices, Inc. [AMD] FCH SATA Controller [AHCI mode] (rev 81)
Subsystem: Advanced Micro Devices, Inc. [AMD] FCH SATA Controller [AHCI mode]
Kernel driver in use: ahci
05:00.1 SATA controller: Advanced Micro Devices, Inc. [AMD] FCH SATA Controller [AHCI mode] (rev 81)
Subsystem: Advanced Micro Devices, Inc. [AMD] FCH SATA Controller [AHCI mode]
Kernel driver in use: ahci
|
Смотрите у нужного устройства строчку
Kernel driver in use
Например:
05:00.0 SATA controller: Advanced Micro Devices, Inc. [AMD] FCH SATA Controller [AHCI mode] (rev 81)
Subsystem: Advanced Micro Devices, Inc. [AMD] FCH SATA Controller [AHCI mode]
Kernel driver in use: ahci
Здесь строчка:
Kernel driver in use: ahci
Чтобы узнать расположение модуля ядра введите:
# modinfo ahci | head -n1
Вывод будет, приблизительно, таким:
# modinfo ahci | head -n1
filename: /lib/modules/6.1.28-un-def-alt1/kernel/drivers/ata/ahci.ko
К какому пакету относится модуль ядра?
# rpm -qf $(modinfo ahci | head -n1 | awk '{print $2}')
kernel-image-un-def-6.1.28-alt1.x86_64
ИЛИ
# rpm -qf /lib/modules/6.1.28-un-def-alt1/kernel/drivers/ata/ahci.ko
kernel-image-un-def-6.1.28-alt1.x86_64
Цель достигнута.
Статьи по отдельности