Первый вопрос, на который следует ответить: будем ли мы использовать venet, veth или вообще проброс физических интерфейсов в VE. Первый вариант, конечно, bit faster and more efficient, но не умеет броадкастов, а потому всю инфраструктуру, необходимую для загрузки бездисковых клиентов придется разместить в HN. В дальнейшем предполагаем, что используется OpenVZ в ALT Linux Lite 4.0 c виртуальной сетью 192.168.0.0/24 и физической сетью 192.168.1.0/24 - в последней и будут размещены бездисковые клиенты.
Настраиваем загрузку клиентов по TFTP:
# apt-get install dnsmasq # chkconfig dnsmasq on # cat /dev/null > /etc/sysconfig/dnsmasq # cat > /etc/dnsmasq.conf <<END bind-interfaces interface=lo interface=lan resolv-file=/etc/resolv.conf.dnsmasq strict-order expand-hosts domain=local dhcp-range=192.168.1.10,192.168.1.50 enable-tftp tftp-root=/diskless/altsp/boot/i586 dhcp-boot=pxelinux.0 END # cat > /etc/resolv.conf.dnsmasq <<END nameserver ${NAMESERVER} END # cat > /etc/resolv.conf <<END nameserver 127.0.0.1 search local END # mkdir -p /diskless/altsp/boot/i586/pxelinux.cfg # cat > /diskless/altsp/boot/i586/pxelinux.cfg/default <<END DEFAULT vmlinuz ro initrd=initrd.img root=/dev/nfs nfsroot=/diskless/altsp/root/i586,udp ip=dhcp END # service dnsmasq startВ /diskless/altsp/boot/i586 нужно положить vmlinuz, initrd.img и pxelinux.0 из уже существующей инсталляции ALTSP (см. каталог /var/lib/tftpboot/ltsp/i586/) - увы, автономного инструмента для сборки пока нет :(
Уже на этом этапе загрузка бездисковых клиентов начнется, но остановится на монтировании корневой файловой системы. Настроим раздачу корня по NFS:
# apt-get install unfs3 # chkconfig nfs on # chkconfig portmap on # cat > /etc/exports <<END /diskless/altsp/root/i586 (ro,no_root_squash) END # service portmap start # service nfs startВ /diskless/altsp/root/i586 тоже нужно положить каталог /var/lib/ltsp/i586 из существующей инсталляции ALTSP.
Также включим поддержку сетевого свопа на случай непредвиденного расхода памяти на клиентах:
# apt-get install ltspswapd # chkconfig ltspswapd on # service ltspswapd startТеперь бездисковые клиенты смогут полностью загрузиться и обратиться по XDMCP к тому же серверу, с которого загрузились, но безуспешно: никакого XDMCP там нет и не предполагается. Сначала укажем адрес сервера XDMCP:
# cat >> /diskless/altsp/root/i586/etc/lts.conf <<END XDM_SERVER=192.168.0.101 ENDЗатем создадим соответствующий виртуальный сервер с помощью скрипта-обертки, описанного ранее:
# create-ve.sh 101 desktop 4.1 i586Установим в него все необходимое:
# vzctl start desktop # vzctl enter desktop # cat > /etc/sysconfig/i18n <<END LANG=ru_RU.UTF-8 SUPPORTED=ru_RU END # cat > /etc/X11/xinit/Xkbmap <<END -layout us,ru -option grp:ctrl_shift_toggle -variant ,winkeys END # apt-get install gdm gdm-theme-altlinux xfce4-minimal xfce-mcs-plugins xfce-settings-simple icon-theme-hicolor xterm Thunar leafpad firefox-ru fonts-ttf-ms # subst 's/happygnome-list/altlinux/' /etc/X11/gdm/custom.conf # subst 's/Greeter/RemoteGreeter/' /etc/X11/gdm/custom.conf # subst '/\[greeter\]/aGraphicalThemedColor=#90a8ca' /etc/X11/gdm/custom.conf # subst '/\[xdmcp\]/aEnable=true' /etc/X11/gdm/custom.conf # subst 's/id:3:initdefault:/id:5:initdefault:/' /etc/inittab # exit # vzctl restart desktopИ вот теперь бездисковые рабочие станции должны загрузиться и показать приглашение GDM.
Комментариев нет:
Отправить комментарий