Настройка сетевых интерфейсов
Типичный сервер LTSP имеет два сетевых интерфейса:
- Первый интерфейс (eth0) подключен к Интернет, и настройки получает автоматически;
- Второй интерфейс (eth1) подключен к локальной сети, и ему присвоен статический адрес (для примера 192.168.56.10 с маской 24). Через этот интерфейс осуществляется подключение клиентских машин (также находящихся в локальной сети).
Сетевые интерфейсы настраиваем любым предпочтительным способом, например, с помощью Network Manager.
Включение удаленного доступа
Для работы сервера LTSP нужно разрешить удаленный вход в систему:
Информация |
---|
"Панель управления" → "Система" → "Вход в систему" → "Дополнительно" - "Разрешить удаленный вход в систему" |
Создание образа тонкого клиента
Для создания образа тонкого клиента используется сценарий ltsp-build-client. Особенности применения сценария зависят от создаваемой гостевой ОС (ОС СН Astra Linux SE или ОС ОН Astra Linux CE).
ОС ОН Орёл
В ОС ОН Орёл по умолчанию для сборки образа будет использоваться тот же дистрибутив и/или архитектура что и на серверной системе, и сценарий сборки образа может быть вызван без параметровbuild-clientВозможные необязательные параметры:--chroot <название папки> - название папки с образом относительно каталога /opt/ltsp/ (по умолчанию - amd64);
--dist <название дистрибутива> - задаёт для сборки дистрибутив, отличный от используемого по умолчанию дистрибутива серверной системы. Поддерживаются два варианта: orel или smolensk;
--mirror <url> - задаёт для сборки другое расположение зеркала репозитория, из котрого нужно ставить систему (по умолчанию http://dl.astralinux.ru/astra/current/orel/repository);
--late-packages <название пакетов> — установка в клиентский образ дополнительных пакетов (в ОС ОН Орёл по умолчанию устанавливается метапакет ltsp-client, предназначенный для установки только на терминальный клиент и включающий в себя всё необходимое для его функционирования)
Информация |
---|
В опции --late-packages названия дополнительных пакетов должны быть указаны через запятую без пробелов. |
Создание образа тонкого клиента
Для создания образа тонкого клиента используется сценарий ltsp-build-client. Особенности применения сценария зависят от создаваемой гостевой ОС (ОС СН Astra Linux SE или ОС ОН Astra Linux CE):
ОС ОН Орёл
В ОС ОН Орёл по умолчанию для сборки образа будет использоваться тот же дистрибутив и/или архитектура что и на серверной системе, и сценарий сборки образа может быть вызван без параметров:
Command |
---|
sudo ltsp-build-client |
Возможные необязательные параметры:
--chroot <название папки> - название папки с образом относительно каталога /opt/ltsp/ (по умолчанию - amd64);
--dist <название дистрибутива> - задаёт для сборки дистрибутив, отличный от используемого по умолчанию дистрибутива серверной системы. Поддерживаются два варианта: orel или smolensk;
--mirror <url> - задаёт для сборки другое расположение зеркала репозитория, из котрого нужно ставить систему (по умолчанию http://dl.astralinux.ru/astra/current/orel/repository);
--late-packages <название пакетов> — установка в клиентский образ дополнительных пакетов (в ОС ОН Орёл по умолчанию устанавливается метапакет ltsp-client, предназначенный для установки только на терминальный клиент и включающий в себя всё необходимое для его функционирования)
Информация |
---|
В опции --late-packages названия дополнительных пакетов должны быть указаны через запятую без пробелов. |
ОС СН Смоленск
В ОС СН Смоленск для сборки образа нужно настроить репозиторий или примонтировать установочный диск (или образ диска) Astra Linux Special Edition релиз "Смоленск" версии 1.6. Например, образ установочного диска в файле smolensk-1.6-20.06.2018_15.56.iso можно примонтировать командой
Command |
---|
sudo mount -o loop smolensk-1.6-20.06.2018_15.56.iso /media/cdrom |
Для успешной сборки системы необходимы:
- установочный диск;
- диск со средствами разработки;
- образ обновления установочного диска (update-iso);
- образ обновления диска со средствами разработки (update-dev-iso).
Сборка образа для ОС СН Смоленск осуществляется командой:
Command |
---|
sudo ltsp-build-client --update-bin <путь_к_update-iso> --update-dev <путь_к_update-dev-iso> |
При этом, в дополнение к необязательным опциям сценария сборки, применяемым в ОС ОН Орёл, в ОС СН Смоленск используются две обязательные опции:
--update-bin - path/to/iso образ репозитория с обновлением smolensk;
--update-dev - path/to/iso iso образ репозитория с обновлением smolensk-devel.
В ОС СН Смоленск помимо устанавливаемого в ОС ОН Орёл метапакета ltsp-client будут установлены пакеты parsec и linux-astra-modules. В процессе работы сценария будут появляться запросы на установку/монтирование необходимых дисков в каталог /media/cdrom.
После завершения работы образ системы будет записан в /opt/ltsp/images. Распакованная система будет расположена в каталоге /opt/ltsp/amd64, или в том подкаталоге каталога /opt/ltsp/, который был указан с помощью необязательной опции --chroot.
Настройка образа тонкого клиента
Опционально в отладочных целях рекомендуется обновить каталоги пакетов и задать пароль для локального администратора в клиентском образе:
Command |
---|
sudo ltsp-chroot -m |
При необходимости для команды ltsp-chroot может быть указан дополнительный параметр -a <имя каталога>, задающий расположение образа (аналогично параметру --chroot команды ltsp-build-client);
Обновить созданный образ:
Command |
---|
sudo ltsp-update-image |
Перезапустить службы nbd-server, sshd, xrdp:
Command |
---|
sudo systemctl restart nbd-server sshd xrdp |
По умолчанию для клиентов используется файл конфигурации, находящийся в образе терминального клиента (/opt/ltsp/amd64/etc/lts.conf).
Опционально рекомендуется создать отдельный файл конфигурации по умолчанию для LTSP клиентов:
Command |
---|
sudo ltsp-config --overwrite lts.conf |
После создания файла конфигурации на сервере терминалов для клиентов будет использоваться файл /var/lib/tftpboot/ltsp/amd64/lts.conf.
Создание и настройка образа толстого клиента
Для создания образа толстого клиента нужно:Создать и настроить образ тонкого клиента по описанной выше процедуре или создать сразу образ толстого клиента:
Command sudo ltsp-build-client --fat-client-desktop fly-wm --late-packages sudo,mc
Где параметры:
--fat-client-desktop - название рабочего стола (fly-wm)
--late-packages - название дополнительных пакетов, отсутствующих в стандартном наборе для создания тонкого клиента( в данном примере - пакеты sudo и mc)
Информация В параметре --late-packages названия дополнительных пакетов должны быть указаны через запятую без пробелов. Дополнительно может быть указан необязательный параметр --chroot с именем каталога для размещения образа.
Если используется образ тонкого клиента, то установить в него основные пакеты Fly:
Command sudo ltsp-chroot -m apt install fly-all-main При необходимости для команды ltsp-chroot может быть указан дополнительный параметр -a <имя каталога>, задающий расположение образа (аналогично параметру --chroot команды ltsp-build-client);
- Аналогично, с помощью команды ltsp-chroot -m apt install установить в созданный образ опциональные метапакеты (или же необходимые пакеты по отдельности):
• Метапакет fly-all-optional - включает в себя пакеты ark, clementine, compton, fly-admin-iso, fly-fm-crypt, gparted, guvcview, kgpg, librsvg2-bin, qapt-deb-installer, qbat, recoll, speedcrunch, synaptic, vlc, vlc-astra, vlc-l10n, vlc-plugin-access-extra, xca, yelp;
• Метапакет fly-all-games - включает в себя пакеты klines, kmines, kpat, supertux, warzone2100, xonotic;
• Пакет libreoffice - кроссплатформенный, свободно распространяемый офисный пакет с открытым исходным кодом;
• другие необходимые пакеты; Если был установлен fly-dm, то запретить его автозапуск:
Command sudo ltsp-chroot -m systemctl disable fly-dm При необходимости для команды ltsp-chroot может быть указан дополнительный параметр -a <имя каталога>, задающий расположение образа (аналогично параметру --chroot команды ltsp-build-client);
В файле /var/lib/tftpboot/ltsp/amd64/lts.conf изменить значение параметра LDM_SESSION на default (добавить параметр, если его нет), и добавить параметр LDM_PASSWORD_HASH для корректной работы блокировщика экрана:
Информация # If you're using Unity, you might want to install gnome-session-fallback and
# use it by default instead, as it performs better on LTSP thin clients.
LDM_SESSION="default"
LDM_PASSWORD_HASH=TrueОбновить ранее собранный образ клиента:
Command ltsp-update-kernels <ARCH> && sudo ltsp-update-image <ARCH> где вместо <ARCH> указать название каталога, в котором находятся файлы для сборки (каталог указывается относительно каталога /opt/ltsp/ и, если не указать ничего - то будет использована архитектура amd64, т.е. будет использован каталог /opt/ltsp/amd64/)
Настройка удалённых подключений XDMCP и RDP
Для подключения по протоколу XDMCP заменить в файле /opt/ltsp/amd64/usr/share/ltsp/screen.d/xdmcp строку
Блок кода |
---|
X_ARGS="$X_ARGS -query ${XDM_SERVER}" |
на
Блок кода |
---|
X_ARGS="$X_ARGS -query ${XDM_SERVER} -displayID 0:63:0x0:0x0" |
Для rdp подключений в файле /opt/ltsp/amd64/usr/share/ltsp/screen.d/xfreerdp последнюю строку привести к виду
Блок кода | ||
---|---|---|
| ||
exec xinit /usr/share/ltsp/xinitrc /usr/local/bin/rdp.sh -- "$DISPLAY" "vt${TTY}" -nolisten tcp $X_ARGS >/dev/null
|
Исправить файл /opt/ltsp/amd64/usr/local/bin/rdp.sh
Блок кода | ||
---|---|---|
| ||
#!/bin/bash
userdata=$(zenity --forms --title="Вход на сервер" --text="Форма авторизации" --add-entry="Логин:" --add-password="Пароль:");
userlogin="`echo $userdata|cut -d '|' -f 1`";
userpassword="`echo $userdata|cut -d '|' -f 2`";
xfreerdp /v:192.168.56.100 /cert-ignore +sec-nla /d:example.com /u:$userlogin /p: $userpassword /f /drive:usb,/media /network:lan /printer |
И сделать его исполняемым:
Command |
---|
chmod +x /opt/ltsp/amd64/usr/local/bin/rdp.sh |
Выполнить команды:
Command |
---|
sudo ltsp-chroot systemctl disable fly-dm |
Исправить файл /var/lib/tftpboot/ltsp/amd64/lts.conf:
Блок кода | ||
---|---|---|
| ||
[default]
LTSP_CONFIG=True
#SOUND=False
XSERVER=vesa
LOCALDEV=True
HOTPLUG=True
DNS_SERVER=192.168.56.100
SOUND=True
MIC_VOLUME=0
CAPTURE_VOLUME=100
CAPTURE_SWITCH=toggle
TIMEZONE=Europe/Moscow
TIMESERVER=192.168.56.100
SYSLOG_HOST=192.168.56.100
NBD_SWAP=False
#NBD_SWAP_SERVER=192.168.56.100
#CONFIGURE_X=False
SCREEN_07=xfreerdp
PRINTER_O_DEVICE=/dev/usb/lp0
PRINTER_0_TYPE=U |
Информация |
---|
Для того, чтобы по умолчанию подключение выполнялось по XDMCP опцию SCREEN_07=xfreerdp следует изменить на SCREEN_07=xdmcp. |
После выполнения вышеуказанных действий на сервере терминалов нужно создать пользователей, после чего можно выполнять загрузку клиентских машин по сети.
Дополнение: настройка автомонтирования usb-устройств
Создать файл /opt/ltsp/amd64/etc/udev/rules.d/udev.rules:
Блок кода | ||
---|---|---|
| ||
ACTION=="add", KERNEL=="sd[a-z][0-9]", TAG+="systemd", ENV{SYSTEMD_WANTS}="usbstick-handler@%k" |
Создать unit для запуска:
Блок кода | ||
---|---|---|
| ||
[Unit]
Description=Mount USB
BindsTo=dev-%i.device
After=dev-%i.device
[Service]
Type=oneshot
RemainAfterExit=yes
ExecStart=/usr/local/bin/automount %I
ExecStop=/usr/bin/pumount /dev/%I |
Создать сценарий монтирования:
Блок кода | ||
---|---|---|
| ||
#!/bin/bash
PART=$1
FS_LABEL=`lsblk -o name,label | grep ${PART} | awk '{print $2}'`
if [ -z ${FS_LABEL} ]
then
/usr/bin/mount -t auto /dev/${PART} /media/${PART}
else
/usr/bin/mount -t auto /dev/${PART} /media/$ {FS_LABEL}_${PART}
fi |
Разрешить выполнение сценария:
Command |
---|
chmod +x /opt/ltsp/amd64/usr/local/bin/automount |
Пересоберать образ:
Command |
---|
sudo ltsp-update-kernels && sudo ltsp-update-image |
ОС СН Смоленск
В ОС СН Смоленск для сборки образа нужно настроить репозиторий или примонтировать установочный диск (или образ диска) Astra Linux Special Edition релиз "Смоленск" версии 1.6. Например, образ установочного диска в файле smolensk-1.6-20.06.2018_15.56.iso можно примонтировать командой
Command |
---|
sudo mount -o loop smolensk-1.6-20.06.2018_15.56.iso /media/cdrom |
Для успешной сборки системы необходимы:
- установочный диск;
- диск со средствами разработки;
- образ обновления установочного диска (update-iso);
- образ обновления диска со средствами разработки (update-dev-iso).
Сборка образа для ОС СН Смоленск осуществляется командой:
Command |
---|
sudo ltsp-build-client --update-bin <путь_к_update-iso> --update-dev <путь_к_update-dev-iso> |
--update-bin - path/to/iso образ репозитория с обновлением smolensk;
--update-dev - path/to/iso iso образ репозитория с обновлением smolensk-devel.
В ОС СН Смоленск помимо устанавливаемого в ОС ОН Орёл метапакета ltsp-client будут установлены пакеты parsec и linux-astra-modules. В процессе работы сценария будут появляться запросы на установку/монтирование необходимых дисков в каталог /media/cdrom.
После завершения работы образ системы будет записан в /opt/ltsp/images. Распакованная система будет расположена в каталоге /opt/ltsp/amd64, или в том подкаталоге каталога /opt/ltsp/, который был указан с помощью необязательной опции --chroot.
Настройка образа тонкого клиента
Опционально в отладочных целях рекомендуется обновить каталоги пакетов и задать пароль для локального администратора в клиентском образе:
Command |
---|
sudo ltsp-chroot -m |
При необходимости для команды ltsp-chroot может быть указан дополнительный параметр -a <имя каталога>, задающий расположение образа (аналогично параметру --chroot команды ltsp-build-client);
Обновить созданный образ:
Command |
---|
sudo ltsp-update-image |
Перезапустить службы nbd-server, sshd, xrdp:
Command |
---|
sudo systemctl restart nbd-server sshd xrdp |
По умолчанию для клиентов используется файл конфигурации, находящийся в образе терминального клиента (/opt/ltsp/amd64/etc/lts.conf).
Опционально рекомендуется создать отдельный файл конфигурации по умолчанию для LTSP клиентов:
Command |
---|
sudo ltsp-config --overwrite lts.conf |
После создания файла конфигурации на сервере терминалов для клиентов будет использоваться файл /var/lib/tftpboot/ltsp/amd64/lts.conf.
Создание и настройка образа толстого клиента
Для создания образа толстого клиента нужно:Создать и настроить образ тонкого клиента по описанной выше процедуре или создать сразу образ толстого клиента:
Command |
---|
sudo ltsp-build-client --fat-client-desktop fly-wm --late-packages sudo,mc |
Где параметры:
--fat-client-desktop - название рабочего стола (fly-wm)
--late-packages - название дополнительных пакетов, отсутствующих в стандартном наборе для создания тонкого клиента( в данном примере - пакеты sudo и mc)
Информация |
---|
В параметре --late-packages названия дополнительных пакетов должны быть указаны через запятую без пробелов. |
Если используется образ тонкого клиента, то установить в него основные пакеты Fly:
Command |
---|
sudo ltsp-chroot -m apt install fly-all-main |
При необходимости для команды ltsp-chroot может быть указан дополнительный параметр -a <имя каталога>, задающий расположение образа (аналогично параметру --chroot команды ltsp-build-client);
Аналогично, с помощью команды ltsp-chroot -m apt install установить в созданный образ опциональные метапакеты (или же необходимые пакеты по отдельности):• Метапакет fly-all-optional - включает в себя пакеты ark, clementine, compton, fly-admin-iso, fly-fm-crypt, gparted, guvcview, kgpg, librsvg2-bin, qapt-deb-installer, qbat, recoll, speedcrunch, synaptic, vlc, vlc-astra, vlc-l10n, vlc-plugin-access-extra, xca, yelp;
• Метапакет fly-all-games - включает в себя пакеты klines, kmines, kpat, supertux, warzone2100, xonotic;
• Пакет libreoffice - кроссплатформенный, свободно распространяемый офисный пакет с открытым исходным кодом;
• другие необходимые пакеты;
Если был установлен fly-dm, то запретить его автозапуск:
Command |
---|
sudo ltsp-chroot -m systemctl disable fly-dm |
При необходимости для команды ltsp-chroot может быть указан дополнительный параметр -a <имя каталога>, задающий расположение образа (аналогично параметру --chroot команды ltsp-build-client);
В /var/lib/tftpboot/ltsp/amd64/lts.conf изменить (добавить) значение параметра LDM_SESSION на default, и добавить параметр LDM_PASSWORD_HASH для корректной работы блокировщика экрана:
Информация |
---|
# If you're using Unity, you might want to install gnome-session-fallback and # use it by default instead, as it performs better on LTSP thin clients. LDM_SESSION="default" LDM_PASSWORD_HASH=True |
Обновить ранее собранный образ клиента:
Command |
---|
ltsp-update-kernels <ARCH> && sudo ltsp-update-image <ARCH> |
где вместо <ARCH> указать название каталога, в котором находятся файлы для сборки (каталог указывается относительно каталога /opt/ltsp/ и, если не указать ничего - то будет использована архитектура amd64, т.е. будет использован каталог /opt/ltsp/amd64/)