Linux: использование yum в CentOS (обновление, установка, удаление приложений)

Аналог статьи про Ubuntu, Gentoo.

CentOS работает с .rpm пакетами (так же как и RHEL, Fedora, Suse, Mandriva).

Вот тут есть очень хорошая шапаргалка. Ниже только самое используемое, остальное проще взять оттуда.

Обновление всех приложений (сразу и обновляем данные из репозиториев о пакетах и ставим эти пакеты)

sudo yum update

Если в списке обновлений было ядро – без перезагрузки не обойтись (если нужно проверить что код нового ядра запустится корректно прямо сейчас).

(37/37): kernel-3.10.0-957.10.1.el7.x86_64.rpm

uname -a

Обновление конкретного приложения

sudo yum update certbot

Список всех приложений

sudo yum list installed

Список установленных приложений

sudo yum list installed

Поиск приложения

yum search python36

Просмотр информации о приложении

yum info python36u-pip

Удаление ненужных приложений

sudo yum autoremove

Удаление конкретного приложения

sudo yum -y remove vsftpd
Проблемы

Если ни одно из приложений при обновлении не устанавливается с ошибкой невозможности аллоцировать память – скорей всего память утекла, поможет перезагрузка. Так же можно попробовать создать SWAP файл.

[Errno 5] [Errno 12] Невозможно выделить память

Если жалуется на недостаток места в разделе /boot – удаляем старые ядра через утилиту package-cleanup из пакета yum-utils.

Transaction check error:
installing package kernel-3.10.0-957.5.1.el7.x86_64 needs 15MB on the /boot filesystem

Error Summary
-------------
Disk Requirements:
At least 15MB more space needed on the /boot filesystem.
~$ df -h /boot
Filesystem Size Used Avail Use% Mounted on
/dev/vda1 240M 206M 18M 93% /boot

~$ rpm -q kernel
kernel-3.10.0-327.28.2.el7.x86_64
kernel-3.10.0-327.28.3.el7.x86_64
kernel-3.10.0-862.14.4.el7.x86_64
kernel-3.10.0-957.1.3.el7.x86_64

~$ sudo yum install yum-utils
~$ sudo package-cleanup --oldkernels --count=2

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

sudo vi /etc/yum.conf
installonly_limit=2 # меняем с 5 до 1 или 2

Leave a Reply