Ускоряем yum
sudo yum makecache
Фиксация версии ПО в yum
Задача: необходимо запретить обновление следующих пакетов (на виртуалбокс необходимо каждый раз вручную накатывать ext-pack, а из-за отсутствия зависимостей по dkms при обновлении ядра не пересобираются модули виртуалбокс и он перестаёт запускаться):
kernel-ml
kernel-ml-devel
kernel-ml-headers
VirtualBox-5.0
Устанавливаем плагин к yum и фиксим текущие версии пакетов:
sudo yum install -y yum-plugin-versionlock.noarch
sudo yum versionlock add VirtualBox-5.0
sudo yum versionlock add kernel-ml kernel-ml-devel kernel-ml-headers
Установка свежего ядра 4.х
Можно ставить и обновлять через yum
из репозитория elrepo-kernel
, а можно напрямую:
wget https://elrepo.org/linux/kernel/el7/x86_64/RPMS/kernel-ml-4.9.2-1.el7.elrepo.x86_64.rpm
sudo rpm -iUv kernel-ml-4.9.2-1.el7.elrepo.x86_64.rpm
sudo grep "^menuentry" /boot/grub2/grub.cfg | cut -d "'" -f2
sudo grub2-set-default 0
sudo reboot
Подключение локального репозитория
Посмотрим список подключенных реп yum repolist
; отключаем их, если надо, в /etc/yum.repos.d/*.repo
, меняя опцию enabled=0
. Создаем файл /etc/yum.repos.d/CentOS-Base-local.repo
со следующим содержимым:
[base]
name=CentOS-$releasever - Base
baseurl=file:///repository/centos/7/os/x86_64
gpgcheck=1
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
#released updates
[updates]
name=CentOS-$releasever - Updates
baseurl=file:///repository/centos/7/updates/x86_64
gpgcheck=1
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
#additional packages that may be useful
[extras]
name=CentOS-$releasever - Extras
baseurl=file:///repository/centos/7/extras/x86_64
gpgcheck=1
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
Создаем файл /etc/yum.repos.d/elrepo-local.repo
со следующим содержимым:
[elrepo]
name=ELRepo.org Community Enterprise Linux Repository - el7
baseurl=file:///repository/epel
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-elrepo.org
protect=0
[elrepo-kernel]
name=ELRepo.org Community Enterprise Linux Kernel Repository - el7
baseurl=file:///repository/epel-kernel
enabled=0
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-elrepo.org
protect=0
Команды обновления локальных реп (лучше запускать по крону раз в неделю, например):
rsync -iavrt --delete-before rsync://mirror.yandex.ru/centos/7/os/x86_64 /repository/packages/centos/7/os
rsync -iavrt --delete-before rsync://mirror.yandex.ru/centos/7/updates/x86_64 /repository/packages/centos/7/updates
rsync -iavrt --delete-before rsync://mirror.yandex.ru/centos/7/extras/x86_64 /repository/packages/centos/7/extras/
rsync -iavrt --delete-before --exclude debug rsync://mirror.yandex.ru/fedora-epel/7/x86_64 /repository/packages/epel