Здравствуйте, помогите настроить без дисковые станции на основе вот этой статьи
http://mechanoid.narod.ru/unix/diskless2/index.htmlЧто сделанно:
Установил фрю.
Сделал
#mkdir /diskless/rootfs
#mkdir /diskless/nodes
#mkdir /diskless/home
Далее установил
isc-dhcp3-server
Конфиг
ddns-update-style none;
use-host-decl-names on;
option routers 192.168.1.1;
next-server 192.168.1.134;
filename "pxeboot";
option root-path "192.168.1.166:/diskless/rootfs";
#option swap-path code 128 = text;
subnet 192.168.1.0 netmask 255.255.255.0 {
}
host node4 {
hardware ethernet 00:13:77:03:5B:29;
fixed-address 192.168.1.166;
}
Далее создал
# mkdir /diskless/tftpboot
И раскоментировал tftp в inetd
добавил в syslog
Далее скопировал загрузчик в папку tftp
# cp /boot/pxeboot /diskless/tftpboot/
Потом соответственно добавил строки в rc.conf
rpcbind_enable="YES"
nfs_server_enable="YES"
nfs_server_flags="-u -n5"
И добавил в /etc/exports
/usr -ro -maproot=0 -network 192.168.1 -mask 255.255.255.0
/diskless/rootfs -maproot=0 -network 192.168.1 -mask 255.255.255.0
/diskless/home -mapall=0 -network 192.168.1 -mask 255.255.255.0
# work1
/diskless/nodes/192.168.1.166/var -mapall=0 192.168.1.166
далее запустил nfs
и mount -r
Далее выполнил команды скопировав файлы для работы из системмы и создал сивол линк на tmp
# mkdir -p /diskless/rootfs && cd /diskless/rootfs
# cp -r /boot /bin /lib /libexec /sbin .
# mkdir -p dev home proc usr var etc conf/default
# ln -s tmp /var/tmp
Далее создал каталог для бездисковой станции
# cd /diskless/nodes
# mkdir -p 192.168.1.166/var
И создал файл подскачки так же 3 метра для теста
# dd if=/dev/zero of=/diskless/nodes/192.168.1.166/var/swap bs=1k count=64000
Далее создал ядро добавив в него опции
options BOOTP
options BOOTP_NFSROOT
options NFS_ROOT
# cd /usr/src/sys/i386/conf
# /usr/sbin/config DISKLESS
# cd /usr/src/sys/i386/compile/DISKLESS/
# make cleandepend depend all
И скопировал в каталог ядра для бездисковых
cp /usr/src/sys/i386/compile/DISKLESS/kernel /diskless/rootfs/boot/kernel/
Далее он там пишет
вариант - воспользоваться системными скриптом /etc/rc.initdiskless. Для начальной инициализация бездисковой станций необходимо чтобы в каталоге /diskless/rootfs/etc был следующий набор файлов, скопированных из /etc:
# ls /diskless/rootfs/etc
login.conf rc rc.initdiskless rc.subr
Работает это следующим образом: скрипт rc запускает rc.initdiskless, который проверяет как смонтирован корень файловой системы. Если выясняется что корень это NFS то запускаются сценарии инициализации бездисковой станции, содержащиеся в каталоге /conf.
Скопировал получилось так же
# ls /diskless/rootfs/etc
login.conf rc rc.initdiskless rc.subr
Далее
В /diskless/rootfs/conf создадим следующие подкаталоги[4]:
base - задает начальную структуру каталогов
defauts - настройки по умолчанию
ip - персональные настройки узлов
Создал эти каталоги
Вот далее он пишет
# В каталоге base создадим подкаталог etc, в котором создадим текстовый файл с именем md_size. Содержимое этого файла - число 6144.
Это значит, что при запуске в памяти без дисковой станции будет создан виртуальный диск размером 6144 блока (3MB), точка его монтирования - /etc.
# В каталог defauts положим копию /etc, это будут настройки системы по умолчанию. Там необходимо поправить файл fstab, заменив локальные диски на nfs, ну и всё прочее, что сочтёте для себя нужным изменить.
# В каталоге ip создадим подкаталог 192.168.21.4 и внутри него etc. Это будут персональные настройки без дисковой станции 192.168.21.4. Сюда можно положить файл X11/xorg.conf с настройками X-сервера, fstab с указанием персонального nfs-каталога /var, скрипт rc.d/swap2, который будет подключать swap-файл и др.
в base я сделал так.
в defaults/etc скопировал /etc
в ip создал etc каталог
Далее попробовал запустить без дискового клиента
Клиену dchp Ответил дал ип и сказал гед tftpd и сказал какой гатевей.
клиент начал загрузку pxeboot
В логах tfpd на сервере
Oct 5 01:29:44 test tftpd[817]: 192.168.1.166: read request for //pxeboot: success
тоесть pxeboot он скачал далее он должен монтировать системму.
Но на клиенте далее загораеться слеш
/
типа должен грузить ядро
но сначал слеш стоит не грузит
потом на клиенте пишет
NFS MOUNT RPC error:60
\
can't load 'kernel'
тоесть не может загрузить ядро...
Где я ошибся помогите, в логах tfpd Ничего нет.
тоесть не монтирует
первый раз настраиваю не пинать.