Минимальная установка CentOS/Fedora/RedHat

Не сомневаюсь, что благородные доны — администраторы Linux — стремятся максимально минимизировать набор устанавливаемых на сервер пакетов. Это экономичнее, безопаснее и вселяет в администратора ощущение полного контроля и понимания происходящих процессов.

Поэтому типичный сценарий начальной установки операционной системы выглядит как выбор минимального варианта, а далее — наполнение необходимыми пакетами.

Минимальная установка CentOS/Fedora/RedHat

Однако, минимальный вариант, предлагаемый установщиком CentOS, оказывается не совсем минимальным. Есть способ уменьшить размер начальной установки системы стандартным документированным способом.

Используя операционную систему CentOS в работе рано или поздно открываешь для себя автоматизацию ее установки при помощи механизма Kickstart. Я давно уже не инсталлирую CentOS стандартным установщиком. За время работы накопился достаточный арсенал настроечных kickstart файлов, позволяющих в автоматическом режиме разворачивать системы, в том числе на LVM, крипто разделах, с минимальным GUI и т.п.

И вот, в каком-то из релизов 7-ой версии RedHat добавила удивительную опцию в Kickstart, позволяющую еще более минимизировать образ устанавливаемой системы:

—nocore

Disables installation of the Core package group which is otherwise always installed by default. Disabling the Core package group should be only used for creating lightweight containers; installing a desktop or server system with —nocore will result in an unusable system.

RedHat честно предупреждает о возможных последствиях применения этой опции, однако годы использования мною в реальном окружении подтверждает ее стабильность и применимость.

Ниже представлен пример kickstart файла минимальнейшей установки. Отважные могут исключить из него yum. Будьте готовы к сюрпризам:

install
text

url --url="http://server/centos/7/os/x86_64/"

eula --agreed
firstboot --disable

keyboard --vckeymap=us --xlayouts='us'
lang en_US.UTF-8
timezone Africa/Abidjan

auth --enableshadow --passalgo=sha512
rootpw --plaintext ***

ignoredisk --only-use=sda

zerombr
bootloader --location=mbr
clearpart --all --initlabel

part /boot/efi --fstype="efi" --size=100 --fsoptions="umask=0077,shortname=winnt"
part / --fstype="ext4" --size=1 --grow

network --bootproto=dhcp --hostname=localhost --onboot=on --activate

#reboot
poweroff

%packages --nocore --nobase --excludedocs
yum

%end

%addon com_redhat_kdump --disable

%end

Хочу заметить, что CentOS/RedHat лояльнее Fedora в интерпретации опции. Последняя настолько сильно выхолостит систему, что потребуется повторная установка с добавлением жизненно важных утилит.

В качестве бонуса приведу «заклинание» по установке минимального графического окружения в CentOS/RedHat (7-ой версии):

yum -y groupinstall x11
yum -y install gnome-classic-session
systemctl set-default graphical.target

Как минимальный образ операционной системы, так и минимальное графическое окружение опробовано мною и работает на реальных системах.

Источник: habr.com