Ключевые слова: Х-терминал, linux, LTSP, Linux Terminal Server Project, терминальный linux-сервер, бездисковая станция, ПК без жесткого диска, использование старых компьютеров, diskless workstation, thin client, asplinux, использование Linux в офисе, X-terminal
Для удобства пользователей на сервере были установлены шрифты TrueType: Arial, Courier New и Times New Roman. Выбор именно этих шрифтов не случаен, так как при обмене данными с пользователями Windows (а таких, как вы знаете, подавляющее большинство в мире) в документах используются именно они.
Когда проверка работоспособности будущего сервера Х-терминалов была закончена и проведено тестирование использующегося программного обеспечения, я непосредственно приступил к установке пакетов LTSP. На сервере, в частности, были установлены такие пакеты:
$ rpm -qa | grep ltsp
ltsp_core-3.0.9-0
ltsp_x336_svga-3.0.0-0
ltsp_x336_s3-3.0.0-0
ltsp_kernel-3.0.13-0
ltsp_x336_s3v-3.0.0-0
ltsp_x_core-3.0.4-0
ltsp_floppyd-3.0.0-0
И пакет из тарбола ltsp_sound-3.0.1-i386.tgz для поддержки звука на Х-терминалах. Так как опыт настройки сервера Х-терминалов уже имелся, то особых проблем замечено не было. Правда, для работы украинской раскладки клавиатуры был использован файл /opt/ltsp/i386/usr/X11R6/lib/X11/xkb/symbols/ru_UA из пакета русской редакции LTSP (сайт http://www.ltsp.ru). Кроме этого пришлось вручную настроить автоматический запуск демона для работы по протоколу TFTP.
Когда была проверена работа одного тестового Х-терминала, я приступил к более тонкой настройки сервера Х-терминалов. В частности, была выбрана графическая заставка с желтым цветком, так как стандартный экран входа LTSP показался мне очень унылым. Далее, чтобы пользователи не экспериментировали с различными оконными менеджерами, из каталога /etc/X11/gdm/Sessions были удалены все ссылки на не использующиеся:
$ ls /etc/X11/gdm/Sessions/
default Failsafe IceWM
Как сами можете убедиться, оставлен был только менеджер окон IceWM, и он же был сделан используемым по умолчанию (символическая связь с файлом default). В параметрах конфигурации оконного менеджера IceWM были сделаны значительные изменения. Во-первых, он был обновлен до самой новой на тот период версии 1.2.13 (с поддержкой системного трея). Во-вторых, специально было отредактировано содержимое панели быстрого запуска для доступа к наиболее популярным прикладным программам, которыми стали: Xterm, MToolsFM, Galeon, OpenOffice, ROX-Filer, Kedit, Evolution и сценарий для принудительного завершения "повисшего" в памяти OpenOffice. В-третьих, для некоторых программ были прописаны "горячие" клавиши доступа. Например, для запуска браузера достаточно было нажать Ctrl+Alt+I, а для открытия окна файлового менеджера – Ctrl+Alt+E. В четвертых, чтобы сохранить однообразное представление рабочих столов всех пользователей Х-терминалов, из главного меню IceWM был изъят пункт, отвечающий за выбор темы оформления. В пятых, на панели задач были оставлены часы и три индикатора, отвечающие за загрузку центрального процессора и двух сетевых карт сервера (eth0 и eth1). Также было ограничено количество виртуальных рабочих столов до трех, так как среднестатистическому пользователю этого числа вполне достаточно. Внешний вид рабочего стола Х-терминала с открытым документом в OpenOffice вы можете увидеть на рис. А.1:
Рис. A.1. Внешний вид экрана работающего Х-терминала с открытым документом в OpenOffice
Конфигурационных изменений досталось и другим программным продуктам. Больше всех в этом плане "пострадал" файловый менеджер ROX-Filer, для которого, практически с нуля, была создана система ассоциаций документов с программами, и были частично переделаны иконки к файлам.
В этом приложении я рассказываю о реальном внедрении Х-терминалов в офисе предприятия. Поэтому в подтверждение моих слов хочу привести реальные распечатки конфигурационных файлов работающего сервера Х-терминалов.
Файл соответствия доменных имен IP-адресам - /etc/hosts:
127.0.0.1 localhost.localdomain localhost
192.168.0.26 xtserver.alker.net xtserver alker phones ATS senyk elektro
192.168.1.1 xtserver.alker.net xtserver
192.168.0.3 account.alker.net account
192.168.0.5 tanya.alker.net tanya
192.168.0.20 pasha.alker.net managers
192.168.0.22 inet.alker.net inet
192.168.1.13 sergx.alker.net sergx
192.168.1.14 pxeadmin.alker.net pxeadmin
192.168.1.15 manalx.alker.net manalx
192.168.1.16 mihmurx.alker.net mihmurx
192.168.1.18 irax.alker.net irax
192.168.1.23 natax.alker.net natax
192.168.1.3 ulax.alker.net ulax
192.168.1.8 disp.alker.net disp
192.168.1.6 yanax.alker.net yanax
Файл конфигурации протокола DHCP - /etc/dhcpd.conf:
ddns-update-style none;
default-lease-time 21600;
max-lease-time 21600;
option subnet-mask 255.255.255.0;
option domain-name "alker.net";
option option-128 code 128 = string;
option option-129 code 129 = text;
shared-network WORKSTATIONS {
subnet 192.168.1.0 netmask 255.255.255.0 {
}
}
group {
use-host-decl-names on;
option log-servers 192.168.1.1;
option broadcast-address 192.168.1.255;
option routers 192.168.1.254;
option domain-name-servers 192.168.1.254;
option root-path "192.168.1.1:/opt/ltsp/i386";
host natax {
hardware ethernet 00:80:48:29:3B:53;
fixed-address 192.168.1.23;
filename "/lts/vmlinuz-2.4.24-ltsp-1";
}
host manalx {
hardware ethernet 00:80:48:29:67:42;
fixed-address 192.168.1.15;
filename "/lts/vmlinuz-2.4.24-ltsp-1";
}
host sergx {
hardware ethernet 00:80:48:24:80:63;
fixed-address 192.168.1.13;
filename "/lts/vmlinuz-2.4.24-ltsp-1";
}
host mihmurx {
hardware ethernet 00:50:FC:FE:A8:F6;
fixed-address 192.168.1.16;
filename "/lts/vmlinuz-2.4.24-ltsp-1";
}
host irax {
hardware ethernet 00:50:FC:FE:4F:BF;
fixed-address 192.168.1.18;
filename "/lts/vmlinuz-2.4.24-ltsp-1";
}
host ulax {
hardware ethernet 00:80:48:1F:33:99;
fixed-address 192.168.1.3;
filename "/lts/vmlinuz-2.4.24-ltsp-1";
}
host pxeadmin {
hardware ethernet 00:11:2F:CC:69:89;
fixed-address 192.168.1.14;
filename "/lts/2.4.24-ltsp-1/pxelinux.0";
}
host pashax {
hardware ethernet 00:30:84:0F:D8:CA;
fixed-address 192.168.1.8;
filename "/lts/vmlinuz-2.4.24-ltsp-1";
}
host yanax {
hardware ethernet 00:50:FC:FF:C8:DF;
fixed-address 192.168.1.6;
filename "/lts/vmlinuz-2.4.24-ltsp-1";
}
}
Файл экспортируемых файловых систем NFS - /etc/export:
## LTS-begin ##
#
# The lines between the 'LTS-begin' and the 'LTS-end' were added
# on: Срд Лют 25 12:43:52 EET 2004 by the ltsp installation script.
# For more information, visit the ltsp homepage
# at http://www.ltsp.org
#
/opt/ltsp/i386 192.168.1.0/255.255.255.0(ro,no_root_squash,sync)
/var/opt/ltsp/swapfiles 192.168.1.0/255.255.255.0(rw,no_root_squash,async)
#
# The following entries need to be uncommented if you want
# Local App support in ltsp
#
#/home 192.168.0.0/255.255.255.0(rw,no_root_squash,sync)
## LTS-end ##
# Для пользователей Алкер
/mnt/alker_common 192.168.0.0/255.255.255.0(rw,no_root_squash,sync)
# Для пользователей win-ПК
/mnt/win_access 192.168.0.0/255.255.255.0(rw,no_root_squash,sync)