Хочу поделиться способом удаленной установки CentOS
или Fedora. Используя возможности инсталлятора anaconda, можно упростить процедуру инсталляции или обновления операционной системы на удаленном сервере. Цитата из русскоязычной страницы проекта раскрывает некоторые возможности anaconda, которые мы будем использовать:"Anaconda является достаточно современным установщиком. Он позволяет выполнять установку с локальных или удаленных источников, таких как CD и DVD, образы размещенных на жестких дисках, NFS, HTTP и FTP. Может быть создан сценарий установки с помощью kickstart для обеспечения полностью автоматической установки, позволяющей дублировать систему на ряд компьютеров. Установка может быть запущена через VNC на компьютерах без монитора."
Все описанное ниже подходит для любого дистрибутива Linux, использующего для загрузки grub. Примеры из статьи тестировались на grub 0.97, но после небольших изменений можно использовать и с grub2. Более того, этот способ использовался мной для замены FreeBSD на Linux, после установки grub в качестве загрузчика вместо стандартного Boot Manager.
Подготовка состоит из 4-х шагов:
*** Определение сетевых настроек сервера;
*** Загрузка образов для выбранной OS;
*** Подготовка конфигурации и добавление ее в grub.conf;
*** Перезагрузка сервера и подключение к нему через VNC.
++ Определение сетевых настроек сервераНам понадобится IP адреса сервера, шлюза и DNS. Также понадобится MAC адрес основной сетевой карты. Его важно указывать в параметрах, если на сервере 2 сетевых карты, иначе есть вероятность, что инсталлятор выберет вовсе не ту, которая нам нужна. Для определения сетевых настроек можно воспользоваться следующими командами:
ifconfig
ip route show
cat /etc/sysconfig/network-scripts/ifcfg-eth0
cat /etc/sysconfig/network
cat /etc/resolv.confв нашем примере это:
Ip 172.17.17.232
Gateway 172.17.17.1
DNS 172.17.17.1
MAC 52:54:00:4a:25:b5
++ Загрузка образовCentOS и Fedora используют разные образы для старта инсталлятора. Надо выбрать соответствующие образы, в зависимости от того какой дистрибутив мы собираемся установить. Кроме того, если вы хотите установить 32х битную версию, то в url вам нужно заменить x86_64 на i386.
Образы для centos 5.6 (x86_64):
wget -O /boot/vmlinuz_remote http://mirrors.supportex.net/centos/5.6/os/x86_64/isolinux/v...
wget -O /boot/initrd_remote.img http://mirrors.supportex.net/centos/5.6/os/x86_64/isolinux/i...Образы для fedora 15 (x86_64):
wget -O /boot/vmlinuz_remote http://download.fedora.redhat.com/pub/fedora/linux/releases/...
wget -O /boot/initrd_remote.img http://download.fedora.redhat.com/pub/fedora/linux/releases/...
++ Подготовка конфигурации и добавление ее в grub.confУкажем ранее сохраненные ip адреса сервера, шлюза и днс, а также url, откуда инсталлятор будет скачивать rpm пакеты. Дополнительные параметры, например, отсутствие монитора, выбор определенной сетевой карты и пароль для VNC.
Если /boot раздел на диске не первый, то поправьте строчку root(hd0,0), она должна соответствовать номеру раздела.
Добавляем эти строки в grub.conf для Centos 5.6:
title Remote Install
root (hd0,0)
kernel /vmlinuz_remote lang=en_US keymap=us \
method=http://mirrors.supportex.net/centos/5.6/os/x86_64/ &nbs...
vnc vncpassword=SuperSecret ip=172.17.17.232 netmask=255.255.255.0 gateway=172.17.17.1 \
dns=172.17.17.1 noselinux ksdevice=52:54:00:4a:25:b5 headless xfs panic=120
initrd /initrd_remote.imgИли для fedora 15:
title Remote Install
root (hd0,0)
kernel /vmlinuz_remote lang=en_US keymap=us \
method=http://download.fedora.redhat.com/pub/fedora/linux/releases/.../ \
vnc vncpassword=SuperSecret ip=172.17.17.232 netmask=255.255.255.0 gateway=172.17.17.1 \
dns=172.17.17.1 noselinux ksdevice=52:54:00:4a:25:b5 headless xfs panic=120
initrd /initrd_remote.imgПредполагается, что наша конфигурация идет вторым пунктом меню. Мы указали grub попробовать загрузить ее один раз. Если что-то пойдет не так, вернемся к ранее установленному дистрибутиву после перезагрузки, через 120 секунд.
# echo 'savedefault --default=1 --once' | grub --batch
Более подробно о всех загрузочных параметрах анаконды вы можете прочитать на этой страничке: http://fedoraproject.org/wiki/Anaconda/Options
++ Перезагрузка сервера и подключение к нему по VNCПерезагружаем сервер и ждем, когда он начнет отвечать на ping. Потребуется некоторое время, пока загружаются дополнительные пакеты и можно будет присоединиться через vnc. Если канал не очень быстрый, это может занять до 20-30 минут.
Подключаемся к серверу и делаем все как на локальной консоли:
vncviewer 172.17.17.232:1
Если вы работаете из Windows, то можете воспользоваться TightVNC.
++ СоветыVNC-сервер запускается без keep-a-live, поэтому если вы подключаетесь через nat, то при долгой неактивности есть шанс потерять сессию и больше не восстановить ее. Лучше отключаться от vnc, а потом подключаться повторно, если VNC консоль долго не используется.
Не стоит форматировать бутовый раздел как ext4, хотя это предлагают по умолчанию как Fedora, так и Centos. В некоторых случаях установленная операционная система отказывается загружаться с этого раздела. И хотя это бывает крайне редко, но лучше не рисковать.
При установке Fedora в минимальной конфигурации сервис network оказывается не активированным. Это можно починить, добавив в параметры
anacond-ы sshd и sshpw=password, указав свой пароль для ssh. После окончания интерактивной установки, перед самой перезагрузкой инсталлятора, зайти по ssh на удаленный сервер и активировать сервис network:# chroot /mnt/sysimage
# chkconfig network on
# exit++ Ссылки
[[http://www.redhat.com/magazine/024oct06/features/kickstart/ How to use Kickstart (Anaconda's remote control)]]
[[http://fedoraproject.org/wiki/Anaconda Anaconda]]
[[http://fedoraproject.org/wiki/Anaconda/Options Anaconda Boot Options]]
[[http://www.shekhargovindarajan.com/tips-n-tricks/install-fed.../ Install Fedora 14 Linux without a monitor (headless), keyboard and CD/DVD]]
[[http://fedoraunity.org/solved/installation-solutions/install... Installing Fedora Using PXE Images]]URL: http://supportex.net/ru/2011/06/remote-install-centos-or-fed.../
Обсуждается: http://www.opennet.me/tips/info/2605.shtml
Это уже более десяти лет работает в Солярис и называется Custom JumpStart. Сподобился линакс-таки допилить такой кошерный функционал.
Не знаю как на счет 10 лет, но в RHEL/Fedora/Centos это тоже работает давненько уже. Странно, что нет нормальной ссылки на RHEL'овский хэндбук, которое какбы первоисточник (во всяком случае для RHEL/Centos), где все это, включая опции загрузки и kickstart'а описано вполне себе подробно.
Алсо, хочется отметить, что при наличии белого IP, ждать ждать когда сервер начнет отвечать на пинги совсем не обязательно. Он (сервер) и cам может стукнуться к клиенту ожидающему подключения.
Еще бы в Солярисе, более десяти лет назад, сподобились бы
сделать функциональное окружение сравнимое с GNU, либо BSD и
нормальную иерархию, было бы вообще замечательно.
если не ошибаюсь, то это появилось еще в redhat linux 7 - в 2000 году.
тогда не было ни центоса ни федоры.
Удаленная сетевая установка в linux с середины 90-х есть, kickstart в RH появился аж в 1998-м.
Удаленная автоматическая установка через kickstart и размещенным в сети хранилищем пакетов доступна с версии RH 6.2 ( тот который 1999 года выпуска, а не тот который RHEL) с тех самых пор как они внедрили Anaconda в качестве инсталлятора системы. Кто не верит - может поRTFMить в интернетах на тему Red Hat Linux 6.2 kickstart installation (вот тот самый пруфлинк из официального установочного гайда к RH6.2 заботливо размещенный в интернетах хорошим человеком: http://www-uxsup.csx.cam.ac.uk/pub/doc/redhat/redhat6.2/ref-...). На старых пользоваться не приходилось, а вот на новых (я начинал им пользоваться в промышленных масштабах с RHEL4.0) работает очень даже хорошо.
дык это переустановка а не установка получается
я так freebsd на centos менял.
ставишь grub в качестве загрузчика, а дальше все похоже.
на мой взгляд более востребованным является задача развёртывания сервиса установки внутри локальной сети _БЕЗ_ предварительной установки чего либо на железки (например груба). Для этого используется PXE плюс та же анаконда (для redhat - base дистрибутивов). Этот вариант описан http://www.ourorbits.org/itview/articles/in_netinstall.shtml
-
Если же речь о совсем удалённой установке, то для ресурсов в удалённом ЦОД вам наверняка предоставят интерфейс к консоли. Ряд производителей серверов также предоставляют возможность подцепиться к консоли, включить сервер и провести инсталляцию, например SUN (alom), HP (ilo)
-
В качестве совсем бюджетного решения можно использовать эникейщика удалённого филиала, вооружённого диском дистрибутива, файлом ответов для анаконды и пошаговой инструкцией из нескольких строк, например как описано в http://www.ourorbits.org/compumaster/manualsfaqs/tikser4_ins...
-
но это не в плане критики, автор поделился ценным приёмом под конкретную ситуацию, которая тоже может возникнуть
Попробуйте cobbler, он позволяет автоматизировать весь процесс.
> Попробуйте cobblerНу ставил я кобблер и не понял зачем оно особо нужно.
Всю дорогу ставлю компы через ПХЕ с подсовыванием нужных мне киков
Так что веб-мрда к этому ( коблер ) не очень нужна ...А что касается инсталяций федоры то народ давно юзает вот это:
http://boot.fedoraproject.org/ скачиваешь от туды 1 мег записываешь на флешку
грузишься с него и потом в грубе подосовываешь свой кик с нужной тебе конфигурацией
и репами до ближайшего ( локального миорора )P.S. Говорят что кобблер удобен при развертывание ВМ машин в ХЕНе, тут я хз
у меня КВМ и мне обычной команды vitr-install .... ftp://xxxx.мой.ks хватает для развертывания.
>> Попробуйте cobbler
> Ну ставил я кобблер и не понял зачем оно особо нужно.
> Всю дорогу ставлю компы через ПХЕ с подсовыванием нужных мне киков
> Так что веб-мрда к этому ( коблер ) не очень нужна ...+1, поддерживаю!
кроме того я давненько (около семи лет) пользуюсь загрузкой бездисковых станций ч/з PXE, именно загрузкой оси на бездисковые станции, а не инсталляцией, сервисы dhcpd и tftboot с этим справляются на ура.P.S. я тоже пытался задействовать cobbler для этих нужд, :-) так и не понял как он работает...
> P.S. Говорят что кобблер удобен при развертывание ВМ машин в ХЕНе, тут я хзДа как-то я тоже х.з.
Во первых хеновскую машину проще склонировать с заранее уготованного образа, чем с нуля ставить.
Во вторых к любому хену так или иначе VNC морда идет из коробки, и геморроя с ремотной установкой там нет бай десигн, ну за исключением "поставить сразу и много одинакового с нуля".