Ключевые слова: Х-терминал, linux, LTSP, Linux Terminal Server Project, терминальный linux-сервер, бездисковая станция, ПК без жесткого диска, использование старых компьютеров, diskless workstation, thin client, asplinux, использование Linux в офисе, X-terminal
Лично я противник установки флоппи-дисководов на Х-терминалах. Во-первых, они пережиток прошлого, своего рода “компьютерный атавизм”. Во-вторых, дискеты постоянно теряют информацию, так как очень часто выходят из строя, и вообще являются крайне ненадежным способом хранения информации. В-третьих, размер дискеты 1,44 Мбайт чрезвычайно мал по сегодняшним меркам (ни тебе песню записать, ни программу, ни фильм). К тому же для передачи файлов есть ftp, web, электронная почта, и даже USB-flash накопители наконец. В общем, слишком много минусом, и совсем мало плюсов.
Но как оказалось на практике, у пользователей свое мнение на этот счет. Нравятся им дискеты и все тут. У кого дома интернета нет, у кого USB-порта для Flash-накопителя, а кто и просто привык. В общем, без флоппи-дисководов им Х-терминалы не понравились.
Для поддержки флоппи-дисководов на Х-терминалах предусмотрен специальный пакет ltsp_floppyd. Установка его на сервер особых проблем не вызывает:
# rpm -ihv ltsp_floppyd-3.0.0-0.i386.rpm
Фактически, в папку /opt/ltsp/i386 устанавливаются два файла: бинарный демон floppyd, и одноименный сценарий запуска этого демона. Работает поддержка флоппи дисковода не совсем обычно, как это принято в Linux (примонтировал, размонтировал), а через пакет mtools (так что, если в вашей системе он не установлен, то сейчас самое время сделать это). Более того, для доступа к дисководу, кроме команд пакета mtools, нужен еще и специальный файловый менеджер, поддерживающий работу через mtools. Правда у данного метода есть и небольшие ограничения:
Но обо всем по порядку. Первым делом проверяем, установлен ли пакет mtools:
$ rpm -qi mtools
Name : mtools Relocations: (not relocateable)
Version : 3.9.8 Vendor: ASPLinux
Release : 7 Build Date: Втр 29 Кві 2003 09:31:08
Install Date: Срд 25 Лют 2004 14:16:48 Build Host: arena.asplinux.ru
Group : Applications/System Source RPM: mtools-3.9.8-7.src.rpm
Size : 325481 License: GPL
Signature : DSA/SHA1, Пнд 05 Тра 2003 10:20:01, Key ID c96aa8e69b3c94f4
Packager : ASPLinux Team
URL : http://mtools.linux.lu/
Summary : Programs for accessing MS-DOS disks without mounting the disks.
Description :
Mtools is a collection of utilities for accessing MS-DOS files.
Mtools allow you to read, write and move around MS-DOS filesystem
files (normally on MS-DOS floppy disks). Mtools supports Windows95
style long file names, OS/2 XDF disks, and 2m disks.
Mtools should be installed if you need to use MS-DOS disks.
Если получили похожий ответ, то значит пакет mtools уже установлен. Если же на экране написано “package mtools is not installed”, то установите его командой (путь к пакету mtools и его полное название могут отличаться в вашей системе):
# rpm -ihv mtools-3.9.8-7.i386.rpm
Теперь в соответствующем разделе файла /opt/ltsp/i386/etc/lts.conf для Х-терминала с флоппи-дисководом (например, pashax) добавим такой пункт:
[pashax]
...
RCFILE_01 = floppyd
Тем самым мы объяснили системе LTSP, что при запуске Х-терминала нужно запускать сценарий floppyd.
Теперь для каждого пользователя, который нуждается в работе с флоппи-дисководом на Х-терминалах, в его домашнем каталоге создаем файл .mtoolsrc с таким содержимым:
drive a: file="$DISPLAY" remote 1.44m mformat_only
Чтобы упростить себе жизнь в будущем, при добавлении новых пользователей можно скопировать этот файл в директорию /etc/skel.
Перегружаем Х-терминал и от имени пользователя выполняем команду:
$ mdir a:
Volume in drive A has no label
Volume Serial Number is 3030-5761
Directory for A:/
AUTOEXEC BAT 1100 05-05-1999 22:22
CONFIG SYS 811 01-16-2004 10:57
...
DISPLAY SYS 17239 05-05-1999 22:22
COUNTRY SYS 30742 05-05-1999 22:22
EGA3 CPI 58753 05-05-1999 22:22
MODE COM 29911 05-05-1999 22:22
KEYBRD3 SYS 31633 05-05-1999 22:22
KEYB COM 20135 05-05-1999 22:22
FIX_CIH EXE 21430 05-05-2004 12:34
28 files 1 201 167 bytes
26 624 bytes free
Конечно, работать с дискетой в командной строке неудобно, поэтому воспользуемся файловым менеджером, который поддерживает работу с дискетой через mtools. Довольно успешно с этой задачей справляется файловый менеджер проекта KDE – konqueror. Запускаем его и в поле адреса вводим: floppy:/a . После этого вы должны увидеть в окне файлового менеджера содержимое дискеты, которую, я надеюсь, вы предварительно вставили в флоппи-дисковод Х-терминала (см. рис. 9.12):
Рис. 9.12. Окно файлового менеджера Konqueror показывает содержимое дискеты Х-терминала через пакет mtools
На первый взгляд все работает нормально, очень радует то, что не нужно выполнять монтирования. Правда, есть и небольшие исключения, которые омрачают радужную картину поддержки дискет в Х-терминалах. Во-первых, это отсутствие поддержки в именах файлов символов кириллицы. Более того, если создадите на дискете такой файл, то он будете отображаться абракадаброй. Конечно, все опять упирается в двойные стандарты кодовых страниц для имен файлов и системной кодовой страницы. Если в случае с традиционной дискетой достаточно было указать в параметрах монтирования файла /etc/fstab значение codepage=866, то для пакета mtools такой трюк не проходит, так как для этого пакета не существует аналогичной опции. В общем, от использования файлов, названных буквами кириллицы, на Х-терминалах пока придется отказаться.
Не всегда использование файлового менеджера Konqueror оправдано. Как уже было сказано выше, приложения KDE слишком ресурсоемки и изобилуют графическими эффектами, которые увеличивают нагрузку на локальную сеть и сервер. Если вы ищите простой файловый менеджер, который умеет только переписывать файлы с дискеты и на дискету через пакет mtools, то вам должен понравиться MToolsFM, найти который можно на сайте http://mtools.linux.lu.
Мне в руки попал пакет MToolsFM-1.9-3.i386.rpm, установка которого прошла без проблем:
# rpm -ihv MToolsFM-1.9-3.i386.rpm
Внешний вид этого файлового менеджера представлен на рисунке 9.13. К его несомненным преимуществам следует отнести также скромный размер в памяти (VmSize менее 8 Мбайт) и просто моментальную скорость запуска. К тому же, он умеет: копировать файлы с дискеты на жесткий диск и обратно, удалять файлы, переименовывать их и даже создавать новые каталоги. Так же MToolsFM имеет довольно примитивную поддержу операций по работе с архивными файлами и поддержку печати на принтере. Работать с файловым менеджером MToolsFM очень просто, простым выделением файлов при помощи “мышки” можно перемещать их как с дискеты так и на дискету.
Рис. 9.13. Окно файлового менеджера MToolsFM, позволяющего работать с дискетами пользователю Х-терминала через пакет mtools
В заключении рассказа о поддержке флоппи-дисководов на Х-терминалах необходимо сказать, что проблемы букв кириллицы присутствуют и в MToolsFM, правда теперь, все “незнакомые” буквы заменяются символами подчеркивания. Большим неудобством является так же то, что при ошибках чтения с дискеты локальный демон floppyd впадает в жуткую “депрессию” и на все запросы пользователя отвечает:
floppyd_io: Input/output error
Permission denied, authentication failed!
Auth failed: Device locked!Drive 'A:' not supported
Cannot initialize 'A:'
Вывести его из этого "ступора" помогает только принудительная перезагрузка Х-терминала, что, согласитесь, хоть и не сложно, но все же не очень удобно. Следует также отметить еще один способ обеспечения доступа к локальному флоппи-дисководу Х-терминала. Суть его заключается в том, чтобы монтировать его через локальную сеть и для этих целей в рамках проекта LTSP создан специальный демон автоматического монтирования ltsp_autofs. Обязательным условием использования данного пакета является поддержка запуска локальных приложений, но зато в результате вы получаете не только доступ к флоппи-дисководу, а ещё и возможность работы с устройством чтения компакт-дисков. Более детальную информацию ищите в документации к проекту LTSP. В любом случае пример использования флоппи-дисководов на Х-терминалах показывает гибкость настройки и большой потенциал применения этих тонких клиентов, он как бы доказывает, что для Х-терминалов нет ничего не возможного.