Удаленная Установка Fedora/Centos В Автономном Режиме Без Носителя И Tftp



За что? В моем случае мне нужно было перенести домашний сервер с Ubuntu на Fedora и мне было лень нести его к компьютеру, подключать к монитору и записывать установочный образ на флешку.

Не менее лениво было настроить TFTP-сервер и разобраться с PXE. Способ в принципе подходит и для некоторых других дистрибутивов, но с Fedora и Centos он немного проще, поскольку содержимое установочных дисков доступно по HTTP. Если вам нужно установить любой другой дистрибутив, использующий установщик Anaconda, вы можете скачать его образ, смонтировать и скопировать содержимое в папку, доступ к которой можно получить через FTP/HTTP. Например, это относится к RedHat и Oracle Linux.



Теория
Anaconda может работать как по сети, так и по VNC. Исходный дистрибутив не имеет значения, это может быть даже не Linux, нам достаточно того, что текущая ОС использует GRUB (не важно GRUB Legacy или GRUB2, в статье я приведу примеры для обоих).

Нам необходимо создать или изменить существующую запись меню загрузчика GRUB, чтобы она передавала установщику параметры, которые:

  • настроить сеть
  • запустит VNC-сервер
  • укажет местонахождение нашего нового дистрибутива
  • выведет установщик в сеанс VNC


Упражняться

Первое, что нам нужно сделать, это скачать файлы ядра и RAM-диска нужного нам дистрибутива.

  
  
  
   

wget http://dl.fedoraproject.org/pub/fedora/linux/releases/20/Fedora/x86_64/os/isolinux/vmlinuz -O /boot/vmlinuz_remote wget http://dl.fedoraproject.org/pub/fedora/linux/releases/20/Fedora/x86_64/os/isolinux/initrd.img -O /boot/initrd_remote.img

Далее нам нужно настроить GRUB. Если у вас установлен GRUB Legacy, вам просто нужно добавить следующий элемент в файл конфигурации, обычно /boot/grub/menu.lst

title Fedora Install root (hd0,0) kernel /vmlinuz_remote repo= http://dl.fedoraproject.org/pub/fedora/linux/releases/20/Fedora/x86_64/os/ vnc vncpassword=q1q1q1q1 ip=192.168.1.51 netmask=255.255.255.0 gateway=192.168.1.1 dns=192.168.1.1 noselinux headless xfs panic=60 initrd /initrd_remote.img savedefault 0

Если вы загружаетесь не с первого раздела первого диска, то запись root(hd0,0) необходимо изменить соответствующим образом.

Если это наша вторая конфигурация, то выполняем

[root@localhost ~]# echo 'savedefault --default=1 --once' | grub --batch

В итоге мы один раз загрузимся в эту точку и если что-то пойдет не так, то вернемся обратно через пару минут. Если у вас GRUB2, то добавляем наш пункт в /etc/grub.d/40_custom в соответствии с новым синтаксисом, не забывая, что файл должен заканчиваться пустой строкой и нумерация разделов сместилась на единицу - первый раздел теперь 1, а не 0.

menuentry "Fedora Install" { set root=(hd0,1) linux /boot/vmlinuz_remote repo= http://dl.fedoraproject.org/pub/fedora/linux/releases/19/Fedora/x86_64/os/ vnc vncpassword=q1q1q1q1 ip=192.168.1.51 netmask=255.255.255.0 gateway=192.168.1.1 nameserver=192.168.1.1 noselinux headless xfs panic=60 initrd /boot/initrd_remote.img

Обновите файл cfg:

[user@localhost ~]$ sudo update-grub

Для того, чтобы загрузиться в наше меню только один раз, как и в предыдущем примере, можно использовать команду sudo grub-перезагрузка N где N — номер нашей записи.

Вот и все, после перезагрузки подключаемся к нашей машине с помощью VNC-клиента и выполняем установку в обычном режиме.



Удаленная установка Fedora/CentOS в автономном режиме без носителя и TFTP

Если по каким-то причинам (неподходящий дистрибутив, нестабильный интернет) этот способ нам не подходит, то вы всегда можете скачать установочный образ нужного нам дистрибутива, открыть его в любом редакторе ISO-файлов и изменить конфигурацию GRUB на этом диске.

Например, на образе диска той же Fedora 20 (и RFRemix) настройки GRUB хранятся в isolinux/isolinux.cfg:

label linux menu label ^Install RFRemix 20 kernel vmlinuz vnc vncpassword=q1q1q1q1 ip=192.168.1.50 netmask=255.255.255.0 gateway=192.168.1.1 nameserver=192.168.1.1 append initrd=initrd.img inst.stage2=hd:LABEL=RFRemix\x2020\x20x86_64 quiet

Сохраняем ISO-образ после редактирования, записываем его, например, на флэшку, а если первым делом загрузка с USB, то подключаем флэшку, перезагружаем машину и возвращаемся обратно на рабочее место с удобным креслом и чашка кофе:

Удаленная установка Fedora/CentOS в автономном режиме без носителя и TFTP

Теги: #linux #*nix #установка Linux #Fedora #centos #RedHat #GRUB #anaconda #netinstall

Вместе с данным постом часто просматривают: