Совсем не давно на Хабрахабре появилась развернутая статья про поднятие терминального сервера на Linux. Она очень привлекает своим содержимым и показывает простоту настройки такого решения.
В нашей сети уже есть схожее решение основанное на Windows Server 2008 R2 с отдельным TFTP-сервером. И в этом то и была моя проблема. Ниже приведу кусок конфига от PXE. По этому прошу пот кат.
LABEL ltsp
KERNEL 10.0.20.8::/ltsp/i386/vmlinuz
APPEND initrd=10.0.20.8::/ltsp/i386/initrd.img root=/dev/nbd0 nbdroot=10.0.20.8,2000 ip=dhcp selinux=0 init=/sbin/init-ltsp —
Так как мы используем сторонний tftp-сервер, то мы должны использовать другой формат отдачи образа. Он легко гуглится по слову «oldstyle». По этому сразу после установки и настройки сервера, а так же содержимого клиентов, мы делаем dpkg-reconfigure nbd-server и отвечаем на вопросы:
- Поддерживать порты: Да
- Число экземпляров: 1 (у вас может быть больше)
- Указываем путь к образу: /opt/ltsp/images/i386.img
- Номер порта: 2000
- Имя экспорта: любое (в моем случает ltsp)
Теперь при загрузки машины из сети мы не видим ошибок и получаем по NBD образ клиента, который разворачивается на нашей машине. Если попробовать ввести данные для авторизации мы получим "Нет ответа от сервера, перезагрузка". И тут весь подвох.
Опять же, при использовании стороннего tftp-сервера игнорируется содержимое папки /var/lib/tftpboot/ltsp/i386/ а соответственно и игнорируется конфиг lts.conf в котором указаны все данные для клиента. Чтобы исправить это, нам необходимо обновить lts.conf который мы используем в образе. Для этого мы идем в /opt/ltsp/i386/etc/lts.conf и указываем всё там. В моём случае это адрес сервера:
- SERVER=10.0.20.8
- остальную часть lts.conf Вы можете взять в оригинале статьи
После проделанных процедур, мы обновляем образ командой ltsp-update-image и можем подключаться с терминалов.
Отдельное спасибо хочу выразить автору статьи про LTSP @kvaps.
icoz
«По этому прошу пот кат.»
Мощно. Внушило.