The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Установка FreeBSD 6.0 по сети (freebsd remote dhcp boot install pxe diskless)


<< Предыдущая ИНДЕКС Исправить src / Печать Следующая >>
Ключевые слова: freebsd, remote, dhcp, boot, install, pxe, diskless,  (найти похожие документы)
From: Stanislav Lapshansky <stanislav.lapshansky@gmail.com.> Newsgroups: email Date: Mon, 11 May 2006 14:31:37 +0000 (UTC) Subject: Установка FreeBSD 6.0 по сети Оригинал: http://slapsh.livejournal.com/140408.html?mode=reply Устанавливаем FreeBSD 6.0 по сети на сервер без CDROM & Floppy Казалось бы, зачем так извращаться? Однако, как показала практика, 1U-сервер не обладающий ни дисководом, ни CD-ROM, является суровой реальностью сегодняшнего дня. Итак, для установки FreeBSD 6.0 по сети надо сделать следующее: 1) Соединить сетевым кабелем два компьютера: "сервер", откуда мы будем ставить систему и "клиент", на который будет ставиться система (предполагается, что сетевая карта "клиента" поддерживает загрузку по сети PXE boot). 2) Из программного обеспечения нам понадобятся: DHCP-сервер (необходим для того, что бы "клиент" мог получить IP-адрес), TFTP-сервер (он будет давать "клиенту" загрузчик и ядро), NFS-сервер (для передачи на клиент всего остального). Кроме того желательно наличие инсталляционного CD-ROM FreeBSD 6.0 :-) 3) Итак на "сервере" устанавливаем пакет "isc-dhcp3-server" cd /usr/ports/net/isc-dhcp30-server; make install clean 4) Настраиваем DHCP: /usr/local/etc/dhcpd.conf: authoritative; subnet 192.168.0.0 netmask 255.255.255.0 { } host bsdserv { # тут надо вставить MAC-адрес ВАШЕГО "клиента" hardware ethernet 00:0C:29:C6:93:E1; # IP-адрес "клиента" fixed-address 192.168.0.64; # IP-адрес "сервера" next-server 192.168.0.8; # путь к загрузчику filename "boot/pxeboot"; # корень TFTP сервера option root-path "/tftpboot"; } 5) Настраиваем TFTP, для этого нам надо раскомментировать одну строчку в файле /etc/inetd.conf: tftp dgram udp wait root /usr/libexec/tftpd tftpd -l -s /tftpboot 6) Настраиваем сервер NFS. В файле /etc/exports пишем: /tftpboot -network 192.168.0 -mask 255.255.255.0 7) Предпоследний штрих -- положим в нужные места нужные файлы. В CD-ROM загружаем установочный диск FreeBSD 6.0. И затем копируем его содержимое в /tftpboot: mount /cdrom mkdir /tftpboot cp -Rp /cdrom /tftpboot 8) И наконец редактируем файл /tftpboot/boot/loader.conf, добавляя туда следующую строку: vfs.root.mountfrom="ufs:/dev/md0c" 9) Все готово, осталось изменить /etc/rc.conf для автоматической загрузки необходимых демонов: # Задаем IP-адрес на сетевой карте "сервера" ifconfig_fxp0="inet 192.168.0.8 netmask 255.255.255.0" # Запускаем DHCP dhcpd_enable="YES" dhcpd_conf="/usr/local/etc/dhcpd.conf" # Запускаем NFS rpcbind_enable="YES" nfs_server_enable="YES" # Запускаем inetd (для TFTP) inetd_enable="YES" 10) Перезагружаемся 11) Загружаем "клиента" по сети с нашего "сервера" и устанавливаем на него систему. Когда инсталляционный скрипт спросит местонахождение дистрибутива, надо не забыть выбрать опцию "NFS" Install over NFS, и ввести соответствующий путь: 192.168.0.8:/tftpboot. После этого согласиться попробовать на сетевом интерфейсе DHCP. 12) Все. P.S. Не экономьте на конфигурации сервера. Покупайте CD-ROM :-)

<< Предыдущая ИНДЕКС Исправить src / Печать Следующая >>

Обсуждение [ RSS ]
  • 1.1, Leo (??), 11:06, 18/09/2006 [ответить]  
  • +2 +/
    Могу добавить чуть.
    В связи с тем, что с собой часто ноут, а на нём - вин, может оказаться полезным другой способ.
    Под вин есть известный tftpd32 (http://tftpd32.jounin.net) - dhcp/tftp(d) в одном флаконе (120k). А чтобы не ставить nfs на вин можно просто перекомпилить pxeboot под загрузку не по nfs, а по tftp (опция LOADER_TFTP_SUPPORT= YES в make.conf, cd /sys/boot/i386/ && make)
    Под tftp всё складывается так:
    boot\pxeboot
    boot\beastie.4th
    boot\boot.4th
    boot\frames.4th
    boot\loader.4th
    boot\screen.4th
    boot\support.4th
    boot\loader.conf
    boot\mfsroot.gz
    boot\loader.help
    boot\device.hints
    boot\defaults\loader.conf
    boot\kernel\kernel.ko.gz
    boot\kernel\acpi.ko

    Тонкая настройка :)
    tftp не заточен под передачу большого объёма как данных, так и разных (количество) файлов, так что рекомендуется ядро зажать (kernel->kernel.ko.gz), а loader.rc переименовать в boot.4th (т.к. он ищется "раньше", а чем раньше найдётся - тем быстрее загрузится).
    Если что - логи tftpd Вам помогут :)
    P.S. Да, устанавливаться потом всё одно по ftp - на этот случай есть ftpdmin (64k) -http://www.sentex.net/~mwandel/ftpdmin/index.html

     
  • 1.2, Илья Евсеев (?), 03:38, 03/01/2007 [ответить]  
  • +/
    Копирование всего содержимого InstallCD в /tftpboot - не перебор ли?

    Для большинства линуксовых дистрибутивов достаточны инсталляционные kernel и initrd с pxelinux, а CDROM расшаривается через NFS, FTP или HTTP.

     
  • 1.3, Stanislav (??), 12:10, 08/03/2008 [ответить]  
  • +/
    в оригинале:
    http://www.freebsd.org/doc/en_US.ISO8859-1/articles/pxe/bootstrap-config.html

    Особенно хорошо пошло после того, как сказал:
    rm -rf /usr/obj/*
    cd /usr/src/sys/boot
    make
    cp /usr/src/sys/boot/i386/pxeldr/pxeboot /usr/tftpboot

    Без этого все делал по данной статье и не работало. Не находился какойто файл.

     
  • 1.5, lol (??), 16:40, 09/06/2010 [ответить]  
  • +/
    при попытке загрузки ядра не находит init и devfs и паникует

     
     
  • 2.9, Юрий (??), 09:52, 20/08/2013 [^] [^^] [^^^] [ответить]  
  • +/
    > при попытке загрузки ядра не находит init и devfs и паникует

    У меня - то же самое! Вы нашли решение?

    По логу - сначала монтируется UFS, затем зачем-то начинает дергать сетевой интерфейс (UP/DOWN) и в процессе слетает

     

  • 1.6, Александр (??), 17:40, 08/09/2010 [ответить]  
  • +/
    Все сделал по статье, в процессе инсталяции доходит до Mounting 192.168.0.254:/tftpboot over NFS on /dist
    и засыпает. Все конфиги перепроверил, не знаю что делать. Помогите.
     
  • 1.7, Александр (??), 12:03, 13/09/2010 [ответить]  
  • +/
    Отвєчаю на свой жє вопрос: прі стартє nfs в сєті должєн бить хотя би один включенний компьютєр, в протівном случає, всє запускаєтся но клиент отваливаєтся по тамауту. В моєм случає в сєті било два компьютєра: с кого ставилась сістєма, і на кого ставилась сістєма, єстєствєнно что на момєнт старта пєрвого компьютєра второй бил виключєн. Как только подключіл в сеть третий компьютер, которий єстєствєнно бил включєн всє заработало. Возможно ето особєнності сістєми, а возможно моі крівиє рукі. Хотєлось би услишать коментаріі боле кваліфіцированих в етом вопросє людєй.
     
     
  • 2.8, Хех (?), 18:14, 09/12/2012 [^] [^^] [^^^] [ответить]  
  • +/
    грюзи?
     

    игнорирование участников | лог модерирования

     Добавить комментарий
    Имя:
    E-Mail:
    Заголовок:
    Текст:




    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру