Показать сообщение отдельно
Старый 12.05.2006, 00:02     # 3
medgimet
Full Member
 
Аватар для medgimet
 
Регистрация: 28.06.2004
Адрес: Днепропетровск, Снежное...
Сообщения: 778

medgimet Имеются все основания чтобы гордиться собойmedgimet Имеются все основания чтобы гордиться собойmedgimet Имеются все основания чтобы гордиться собойmedgimet Имеются все основания чтобы гордиться собойmedgimet Имеются все основания чтобы гордиться собойmedgimet Имеются все основания чтобы гордиться собойmedgimet Имеются все основания чтобы гордиться собойmedgimet Имеются все основания чтобы гордиться собойmedgimet Имеются все основания чтобы гордиться собойmedgimet Имеются все основания чтобы гордиться собойmedgimet Имеются все основания чтобы гордиться собой
Устанавливаем 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-adderss 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 :-)
(с)slapsh.livejournal.com
__________________
Если тебе плюют в спину - значит, ты впереди. (Конфуций)
medgimet вне форума