Настройка файловой системы для клиента
Для завершения настройки сетевой загрузки необходимо подготовить файловую систему клиента. Для этого в самом начале нами был создан третий виртуальный компьютер. Установим на него ОС Debian согласно тем же рекомендациям, что были даны в п.4.1.
Имеется один нюанс: поскольку мы раздаем IP адреса статически, прежде, чем новый компьютер сможет получить конфигурацию от DHCP сервера, необходимо подправить файл /etc/dhcpd.conf. Когда установщик Debian задаст вопрос о конфигурации по DHCP, переключимся на другой терминал (нажав Alt+F2), выполним команду ifconfig -a и запишем MAC-адрес адаптера. После этого переключимся в виртуальный компьютер сервера, и отредактируем файл /etc/dhcpd.conf, добавив в раздел group строки:
host work { hardware ethernet 00:0C:29:03:AB:CA; fixed-address 192.168.223.4; }
Во второй строке необходимо указать записанный MAC адрес. Чтобы изменения вступили в силу, необходимо перезапустить DHCP сервер командой
/etc/init.d/dhcp restart
Можно продолжать установку. Команда для установки пакетов с программным обеспечением теперь будет выглядеть следующим образом:
apt-get install mc portmap
Для варианта с подключением корневой файловой системы по NFS будем пользоваться каталогом /tmp. Для варианта с RAM-диском необходимо предварительно создать образ RAM-диска. Сделать это можно различными способами. Приведем один из них:
dd if=/dev/zero of=/initrd/initrd bs=1k count=30720
mke2fs -m0 -F /initrd/initrd
mount -t ext2 -o loop /initrd/initrd /mnt
Здесь мы создаем пустой файл объемом 30 Мб, затем формируем в нем файловую систему ext2 и монтируем его как loop устройство в каталог /mnt, в котором и будем создавать файловую систему.
Процесс создания файловой системы одинаков для обоих вариантов и заключается в следующем:
в каталог usr/bin;
Подправим файл /mnt/etc/fstab. В самом простом виде он может выглядеть так:
/dev/ram0 / ext2 errors=remount-ro 0 1 proc /proc proc defaults 0 0 server.private.net:/usr /usr nfs
Для подключения корневой файловой системы по NFS первую строку необходимо заменить на
server.private.net:/exports/node01 / nfs
Теперь необходимо создать файл /etc/dhclient-enter-hooks, внести в него следующие две строки, чтобы каждый клиент установил свое имя, полученное от DHCP сервера
echo "$new_host_name" > /etc/hostname hostname -F /etc/hostname
и сделать этот файл исполняемым:
chmod a+x /etc/dhclient-enter-hooks
Если вы скомпилировали ядро более новой версии, то необходимо в каталог /lib/modules скопировать каталог с перекомпилированными модулями, а старый каталог удалить.
Если смонтирован файл с RAM диском, его необходимо отключить командой
umount /mnt
а затем выполнить команду
mount -t nfs server.private.net:/ /mnt
для подключения файловой системы сервера в каталог /mnt. Далее, для первого варианта необходимо скопировать содержимое /tmp
в каталог /mnt/exports/node01, а для второго - выполнить команды
gzip -9 /initrd/initrd
cp /initrd/initrd.gz /mnt/initrd
после чего файловую систему сервера необходимо размонтировать, выполнив
umount /mnt
Теперь необходимо присоединить полученный образ к ядру, как описано в конце п..