Linux

packages

Опубликовано

Системы управления пакетами

  1. Низкоуровневые — для установки, удаления, создания файлов пакетов. rmp(RedHat Package Manager) не умеет работать с репозиториями.
  2. Высокоуровневые — для выполнения поиска в метаданных и разрешение зависимостей. yum, dnf.

Основные команды rpm

командаописание
rpm -qf fileВ рамках какого пакета был установлен file
rpm -ql pkgВыводит список установленных файлов в рамках пакета pkg
rpm -qi pkgВыводит информацию о pkg. Аналог dnf info
rpm -q —scriptsпоказывет скрипты используемые в пакете.
rpm -qp <pkg>
rpm -qR pkgПоказывает зависимости пакета
rpm -V pkgПоказывает какая часть пакетов была изменена с момента установки
rpm -VaПроверяет все установленные пакеты, показывает те, которые были изменены с момента установки
rpm -qaсписок всех установленных пакетов

Основные команды dnf

КомандаОписание
searchпоиск пакета по точному совпадению
provides */nameвыполняет глубокий поиск чтобы показать к какому пакету принадлежит файлу */name.
infoпредоставляет информацию о пакете
installустанавливает пакет
removeудаляет пакет
list [allinstalled
group listсписок групп пакетов
group installустановить все пакеты из группы
updateобновить все пакеты
clean allудалить все метаданные

yum — сокращение от Yellowdog Updater, Modified — является утилитой для управления пакетами.

dnf (расшифровку не нашёл) — Современная версия пакетного менеджера yum. В новых ОС команда yum присутствует в качестве мягкой ссылки. Введите следующие команды

which yum
ls -l /usr/bin/yum

Введите команду dnf repolist для того чтобы увидеть список репозиториев в которых будет производиться поиск. Чтобы увидеть более подробную информацию о репозиториях, добавьте флаг -v.

dnf repolist -v

Файлы настроек репозиториев храняться в /etc/yum.repos.d/

ls /etc/yum.repos.d/

Давайте откроем один из них.

less /etc/yum.repos.d/almalinux-ha.repo

Здесь вы найдёте информацию о названии репозитория, ссылке на сам репозиторий, публичный ключ(GPG — GNU Privacy Guard) и флаги проверки ключа и доступности репозитория.

Попробуем нати sublime в текущих репозиториях.

dnf search sublime

Обычно, разработчики предлагают добавить свой репозиторий за которым они следят самостоятельно. Зайдите на сайт sublimetext. В разделе downloads выберите Linux repos. Далее тот пакетный менеджер, который вы используете. Впервые dnf был представлен в fedora, поэтому она и ассоциирована с данным установщиком. Далее просто поочерёдно выполним предложенные команды.

Убедимся, что пакет установлен

rpm -qa sublime-text

Выведем список файлов связанных с пакетом

dnf repoquery -l sublime-text

Среди списка находится и исполняемый файл

/opt/sublime_text/sublime_text
  • создать алиас на sublime на данный файл.
  • Посмотрите список доступных групп пакетов командой dfn group list
  • Дополните команду dfn group list hidden
  • Посмотрите какие пакеты включает в себя одна из групп dfn group info «Python Web»

Если имя группы содержит несколько слов, заключите его в кавычки

  • Установите группу dfn group install «Python Web»
  • Просмотрите историю dfn history
  • Отмените установку пакета передав номер дейстия из истории в команду dfn history undo N

Раньше на уроке мы установили утилиты iostat. Если мы захотим узнать в рамках какого пакета была установлена эта утилита, достаточно об этом спросить dnf

dnf provides iostat

Cent-os, Red Hat, Fedora

Обновление пакетного менеджера

yum update

Поиск пакета в репозитории

yum search sublime

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

yum install sublime-text

Удалить пакет

yum earse sublime-text

Установка пакета из файла

rpm -i sublime.rmp

Обновление пакета из файла

rpm -U sublime-text.rmp

Посмотреть список установленных пакетов

rpm -qa

Посмотреть список установленных пакетов вместе с другим пакетом

rpm -qa sublime-text

Информация о пакете

dnf info sublime-text

Узнать к какому пакету принадлежит файл

rpm -qf */file

Посмотреть историю действий

dnf history

Debian (Ubuntu, Mint)

Утилита apt(Advanced Packaging Tool) является высокоуровневым интерфейсом для управления пакатеми. Работает в паре с apt-get и apt-cache.

Обновление пакетного менеджера

apt-get update

Поиск пакета в репозитории

apt-cache search sublime

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

apt-get install sublime-text

Удалить пакет

apt-get remove sublime-text

Установка пакета из файла

Скачайте файл sublime.deb. Перейдите в директорию со скачанным файлом. Введите команду

dpkg --install sublime.deb

Обновление пакета из файла

dpkg не умеет обновлять из файла, есть возможность только установки.

Посмотреть список установленных пакетов

apt list --installed
# или
dpkg -l

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

dpkg --status sublime-text

Информация о пакете

apt-cache show sublime-text

Как узнать куда установлен пакет

dpkg-quert -L sublime-text | grep 'sublime-text$'

Посмотрите какими файлами располагает установленный пакет. Ищите исполняемый файл в папках /usr/share/ или /opt/

Добавить комментарий

Ваш адрес email не будет опубликован.