Ключові слова: Х-термінал, linux, LTSP, Linux Terminal Server Project, термінальний linux-сервер, бездискова станція, ПК без жорсткого диска, використання старих комп'ютерів, diskless workstation, thin client, asplinux, використання Linux в офісі, X-terminal
Використання мережевих адаптерів PXE
PXE (Pre-boot eXecution Environment - передзавантажувальне Виконавча) - це специфікація фірми Intel для виконання віддаленого завантаження. Мережеві карти з функцією PXE стоять, як правило, дорожче і для їх налаштування в Х-терміналах слід використовувати дещо інші прийоми. Мережева завантаження за допомогою PXE, крім досить дорогих мережевих адаптерів від Intel і 3Com, властива також вбудованим в материнські плати пристроїв. Швидше за все це пов'язано з тим, що в повнофункціональному пристрої (материнської плати) легше реалізувати віддалене завантаження через PXE-метод.
Зізнаюся чесно, мені довго не могла попастися в руки PXE-мережева карта, але в один прекрасний день у мене на столі виявився системний блок з материнської картою ASUS P4P800-VM, відразу скажу, не дуже підходящий вибір для Х-терміналу, але ця материнська плата мала інтегровану мережеву карту з чіпсетом Intel 82562EZ, який підтримував специфікацію PXE, а отже, міг бути використаний для перевірки цього методу віддаленого запуску.
Перше, що необхідно зробити при роботі з мережевою картою PXE - це включити функцію віддаленого завантаження в BIOS. А також правильно встановити пріоритет завантаження через мережу. Для материнської плати ASUS P4P800-VM я так і зробив, і після перевантаження комп'ютера побачив на екрані таке повідомлення:
В процесі самодіагностики було виявлено відсутність мережевого кабелю, про що PXE-завантажувач і повідомив на екрані. Усвідомивши свою помилку, я підключив мережевий кабель і натиснув як було написано будь-яку клавішу. Тепер на екрані з'явилися такі рядки:
Після абревіатури DHCP стали з'являтися точки на екрані, що явно свідчило про розсилки DHCP-запитів. Через кілька секунд повідомлення на екрані змінилося таким:
Зверніть увагу, що параметр filename я спеціально залишив колишнім, тобто вказує на ядро операційної системи Linux, яке завантажувалося мережевими завантажувачами Etherboot. Зберігаємо файл /etc/dhcpd.conf і перезапускаємо демон dhcpd:
Повторюємо завантаження тестового Х-терміналу з PXE-мережевою картою. Тепер на екрані відображаються такі рядки:
Останнє повідомлення про помилку свідчить, що спроба завантаження методом PXE ядра операційної системи Linux завершилася невдачею. Причина - занадто великий розмір файлу ядра.
Специфікація PXE призів будуть по мережі спочатку невеликого завантажувача (розміром не більше 32 Кбайт), який і буде ініціювати подальшу настройку бездисковой станції. Тому для виконання віддаленого завантаження через PXE-мережеву карту, необхідно в якості параметра filename передати саме такий файл, а не посилання на ядро Linux.
На щастя, творці LTSP подбали про нас і в дистрибутив свого проекту включили всі необхідні файли. Так, в каталозі /tftpboot/lts/2.4.24-ltsp-1/ знаходиться файл pxelinux.0, який необхідно використовувати для завантаження Х-терміналу через PXE-мережеву карту. А отже, правильна конфігурація сервера DHCP для завантаження методом PXE повинна виглядати так:
Ще раз перезапускаємо демон dhcpd для того, щоб він перечитав файли конфігурації і знову намагаємося запустити Х-термінал. Тепер повідомлення на екрані виглядають набагато краще:
Файл конфігурації для завантажувача PXE дуже нагадує файл завантажувача LILO і в основному містить параметри, які передаються ядру (опція append). Ось приклад цього файлу /tftpboot/lts/2.4.24-ltsp-1/pxelinux.cfg/default:
Файл вшестнадцатерічной формі
Якщо з запропонованими C0A8010E (192.168.1.14), C0A801 (192.168.1.0), C0A8 (192.168.0.0) і C0 (192.0.0.0) ще можна погодитися, то використання C0A8010, C0A80, C0A і C викликає подив.
Далі новостворений файл необхідно відредагувати відповідно до вимог Х-терміналу.