NX
Проверяем установленные пакеты:
[root@teacher pxelinux.cfg]# rpm -qa | egrep 'nx|freenx'
nx-3.4.0-alt1
nxclient-3.4.0.5-alt1
freenx-server-0.7.4-alt19.2
emacs-nxml-mode-0.1.20041004-alt4
[root@teacher pxelinux.cfg]# vi /etc/nxserver/node.conf
Раскомментируем и исправляем строчки
ENABLE_KDE_CUPS="0"
COMMAND_START_KDE="/usr/bin/ssh-agent /usr/bin/dbus-launch --exit-with-session /usr/lib/kde4/bin/startkde"
[root@teacher pxelinux.cfg]# nxsetup --install --setup-nomachine-key
Напблюдаем последнюю строчку - Have Fun!
[root@teacher pxelinux.cfg]# service freenx-server start
Starting freenx-server service: [ DONE ]
[root@teacher pxelinux.cfg]# chkconfig freenx-server on
Проверяем с машин локальной сети NX-клиентом под Windows.
У меня в компьютерном классе 12 рабочих станций, поэтому я создал на Мастере 12 пользователей student01..12 с одинаковым простым паролем 101.
Thinstation
Качаем с http://www.thinstation.org/ из раздела Downloads
[teacher@teacher 2.2.2]$ wget http://downloads.sourceforge.net/thinstation/Thinstation-2.2.2.tar.gz
Распаковываем и собираем образ станции:
[teacher@teacher 2.2.2]$ tar zxvf Thinstation-2.2.2.tar.gz
[teacher@teacher 2.2.2]$ cd Thinstation-2.2.2
Правим build.conf
[teacher@teacher Thinstation-2.2.2]$ vi build.conf
Файл большой, приводить здесь не буду, остановлюсь на важном:
package nx - включаем в сборку станции поддержку протокола NX
package sshd - позволит в дальнейшем управлять терминалом из командной строки
param rootpasswd passw0rd - установим пароль
param bootlogo true
param bootresolution 800x600 - параметры bootsplash
param knownhosts ./known_hosts - для ключа сервера Школьный Мастер
param nxurl http://thinstation.org/download/2.2/nxclient-3.3.0-6.i386.tar.gz - откуда качать клиента NX
Положим ключик для подключений к серверу NX
[teacher@teacher Thinstation-2.2.2]$ ssh-keyscan -t rsa 192.168.101.1 >known_hosts
192.168.101.1 - адрес Школьного Мастера
Правим файл начальной конфигурации станции
[teacher@teacher Thinstation-2.2.2]$ vi thinstation.conf.buildtime
Приводим к виду:
NET_FILE_ENABLED=On
NET_FILE_ALTERNATE=192.168.101.1 - указываем сервер, на котором будут лежать конфигурации терминалов
USB_ENABLED=On - по вкусу
SCREEN_RESOLUTION="1280x1024 | 1024x768 | 800x600 | 640x480 | *"
SCREEN_COLOR_DEPTH="24 | 16 | 8 | *"
#SCREEN_HORIZSYNC="30-64 | *"
#SCREEN_VERTREFRESH="56-87 | 60 | 56 | 70 | 72 | 75"
SCREEN_BLANK_TIME=10
SCREEN_STANDBY_TIME=20
SCREEN_SUSPEND_TIME=30
SCREEN_OFF_TIME=60
Запускаем сборку:
[teacher@teacher Thinstation-2.2.2]$ ./build
Размещаем файлы:
[teacher@teacher Thinstation-2.2.2]$ sudo cp -v boot-images/pxe/initrd /var/lib/tftpboot/thinstation
[teacher@teacher Thinstation-2.2.2]$ sudo cp -v boot-images/pxe/vmlinuz /var/lib/tftpboot/thinstation
[teacher@teacher Thinstation-2.2.2]$ sudo cp -v boot-images/pxe/pxelinux.0 /var/lib/tftpboot/thinstation
Перенастраиваем DHCP:
[teacher@teacher Thinstation-2.2.2]$ sudo vi /etc/dhcp/dhcpd.conf
ddns-update-style ad-hoc;
get-lease-hostnames true;
subnet 192.168.101.0 netmask 255.255.255.0 {
option routers 192.168.101.1;
option subnet-mask 255.255.255.0;
option nntp-server 192.168.101.1;
option nis-domain "school499.local";
option domain-name "school499.local";
option domain-name-servers 192.168.101.1;
range dynamic-bootp 192.168.101.101 192.168.101.121;
default-lease-time 21600;
max-lease-time 43200;
group {
use-host-decl-names true;
next-server 192.168.101.1;
host seat01 {
hardware ethernet 00:1b:b9:bd:a0:e5;
fixed-address 192.168.101.101;
filename "pxelinux.0";
}
............
host seat12 {
hardware ethernet 00:1b:b9:bd:9c:1d;
fixed-address 192.168.101.112;
filename "pxelinux.0";
}
}
}
[teacher@teacher Thinstation-2.2.2]$ sudo service dhcpd restart
Приводим файл /var/lib/tftpboot/pxelinux.cfg/default к виду:
display message.txt
default thin
prompt 1
timeout 300
implicit 0
label harddisk
localboot 0x80
label install
kernel ../altlinux/alt0/vmlinuz
append initrd=../altlinux/alt0/full.cz changedisk ramdisk_size=131072 lang=ru_RU vga=0x314 splash=silent splashcount=17 xdriver=auto showopts
label thin
kernel ../thinstation/vmlinuz
append ramdisk_blocksize=4096 initrd=../thinstation/initrd root=/dev/ram0 ramdisk_size=131072 splash=silent vga=788 console=tty1
label memtest
kernel ../memtest/memtest
К данной статье относится пункт thin
Создаем файл /var/lib/tftpboot/thinstation.hosts с содержанием:
seat01 001bb9bda0e5
seat02 001bfc302cf1
seat03 001bb9be8e34
seat04 001731e7d375
seat05 001731e7d419
seat06 00112fb84465
seat07 001731e7d3e8
seat08 001731d7733a
seat09 001731e7d479
seat10 001731e7d414
seat11 001731e7d3e1
seat12 001bb9bd9c1d
Это соответствие названия станций их MAC-адресам
Этот файл позволит нам определить конфигурации каждого терминала в своем файле с названием вида /var/lib/tftpboot/thinstation.conf-{имя}. Вот пример:
[teacher@teacher Thinstation-2.2.2]$ cat /var/lib/tftpboot/thinstation.conf-seat06
SESSION_0_TYPE=nx
SESSION_0_AUTOSTART=on
SESSION_0_TITLE="KDE"
SESSION_0_NX_GENERAL_DESKTOP="KDE"
SESSION_0_NX_GENERAL_SERVER_HOST="192.168.101.1"
SESSION_0_NX_GENERAL_RESOLUTION="fullscreen"
SESSION_0_NX_GENERAL_SESSION="Unix"
SESSION_0_NX_LOGIN_USER="student06"
SESSION_0_NX_LOGIN_AUTH="101"
SESSION_0_NX_GENERAL_REMEMBER_PASSWORD="true"
Последние три строчки отвечают за "автологин" терминала.
Все! Перезагружаем настроенный на загрузку по сети компьютер класса и, через некотое время, он откроет на экране рабочий стол KDE Школьного Мастера.
Выключение терминала из командной строки Школьного Мастера:
ssh root@192.168.101.106 halt
Перезагрузка:
ssh root@192.168.101.106 reboot
Очистка незакрытых сессий:
nxserver --cleanup
Комментарии к записи
Добавьте ваш комментарий!
Войтите чтобы оставить комментарий или Создать учетную запись
Проблем не замечал, с руским языком все в порядке и при отбображении документов и в файловой системе.
Переключение раскладок с русского на инглишь и обратно на клиенте работает? Кириллица вообще работает на клиенте при таком варианте терминального сервера?
» RSS комментариев