Это старая версия документа!
Содержание
Обновление ПО дистрибутивов Линукс
Suse,OpenSuse
Консольная программа zypper, используемая в [Open]Suse, позволяет сокращать свои команды. Удобно: refresh - ref, update - up, install - in, search - se и т.д.
Обновить список ПО из подключенных репозиториев:
zypper ref
Обновить ПО, имеющего в репозиториях новые версии:
zypper up
Поиск пакета
zypper se имя_пакета
Установка
zypper in имя_пакета
Удаление
zypper rm имя_пакета
Debian,Ubuntu
Обновить список ПО из репозиториев
apt update
Вывести список пакетов, для которых доступно обновление
apt list --upgradable
Обновить
apt upgrade
Обновить конкретные пакеты, а не все
apt install --reinstall <список пакетов>
Поиск
apt search имя_пакета
Установка
apt install имя_пакета
Удаление
apt remove имя_пакета
Удаление с очисткой данных программы
apt purge имя_пакета
Удалить локально установленные пакеты (не из репозиториев. иногда такие остаются после апгрейда ОС)
apt list --installed|grep local|awk -F '/' '{print $1}'|xargs apt remove $(apt list --installed|grep local|awk -F '/' '{print $1}'|xargs)
Удаление "хвостов" (конфигов, дополнительных данных) от удаленных пакетов.
apt purge $(dpkg -l | grep '^rc' | awk '{print $2}') dpkg -l | grep "^rc" | awk '{print $2}' | sudo xargs dpkg -P
Поиск уязвимых пакетов для последующего обновления (через apt install)
debsecan --suite bullseye --format packages --only-fixed
Если установлен lsb_release, то можно так:
debsecan --suite $(lsb_release -cs) --format packages --only-fixed
Получение списка установленных пакетов с информацией о репозитории откуда он установлен
dpkg -l | grep "ii" | awk '{print $2}' | xargs -n 1 -IX sh -c "apt policy X 2>/dev/null | tr '\n' ' ';printf '\n'" | tee all_packages.txt
Решение проблем
Ошибка: "NO_PUBKEY 648ACFD622F3D138"
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 648ACFD622F3D138
Предупреждение "Key is stored in legacy trusted.gpg keyring (/etc/apt/trusted.gpg), see the DEPRECATION section in apt-key(8) for details."
apt-key --keyring /etc/apt/trusted.gpg list #Ищем id ключа (напр. 91E7EE5E) apt-key export 91E7EE5E | sudo gpg --dearmour -o /etc/apt/trusted.gpg.d/repo_name.gpg
Так тоже работает
cp /etc/apt/trusted.gpg /etc/apt/trusted.gpg.d
RHEL,Centos
yum update yum list available yum search available yum install yum remove
dnf - почти прозрачно заменяет yum в свежих версиях RHEL,Centos
Дебиан, хренебиан - какая разница
PackageKit
В дистрибутивах с PackageKit(Suse,Ubuntu и др.) можно использовать утилиту pkcon. man pkcon
pkcon refresh pkcon update pkcon search pkcon install pkcon remove
yum/apt
В [Open]Suse можно установить apt, в Ubuntu/Debian можно установить yum