На старые ПК покупать лицензионную MS Windows не было смысла. Руководители поставили задачу - "старьё должно работать в терминале". Дополнительно было уточнено, что принтер подключённый к старому ПК должен быть доступен в терминальной сессии и не важно локальный принтер или сетевой. Другие уточнения дадут позже или не дадут. Вот такое русское ТЗ.
То есть в терминальном сервере никаких изменений делать не нужно, всё должно быть сделано на стороне старого компьютера.
Старый компьютер оказался Intel Pentium II 500 Гц со 128 Мб ОЗУ.
Есть различные готовые проекты по реализации терминальной работы. Но я сразу отказался от любых, в которых поётся о PXE - загрузке операционной системы по сети.
Дело в том, что техническое задание выдавалось начальством в пространном стиле - "ну там чтобы и на компьютере можно было что-нибудь поделать ... не обязательно в терминале". То есть многое было не известно и что ещё в будущем "попросят" никому не ведомо.
Скачал Lubuntu с простой, но элегантной LXDE. LXDE для старых ПК с ограниченным объёмом ОЗУ - "то что доктор прописал".
Решил сделать автозаход в систему и автозапуск терминальной сессии. Если сессия будет завершена пользователем, то он попадёт в LXDE и "будет что-то там делать". Что делать? Уму не приложу! LibreOffice - единственное вменяемое решение для совместного редактирования документов, особенно в формате doc. Но LibreOffice тяжёлый для таких машин и это мягко сказано!
Установка Lubuntu осуществлялась с lubuntu-alternate, чтобы не разрывать мозг старому ПК. Установка штатная. Загрузка новой Lubuntu и её обновление через Synaptic штатно.
Synaptic запускался, чтобы отключить автообновление системы и заодно отключение репозиториев с исходным кодом Ubuntu. Это так же можно сделать в Терминале, закомментировав в файле /etc/apt/sources.list строки с deb-src.
Synaptic, подлец, запускает индексатор update-apt-xapi, который ставит на колени старый компьютер. Выход? Прибить процесс и не запускать Синаптик или дождаться окончания индексации. Мне aptitude и apt-get вполне достаточно.
Устанавливаем пакет freerdp-x11 и ваяем скрипт ~/bin/xrdp.sh
#!/bin/sh
# Welcome to vasilisc.com/
xfreerdp -u vasilisc -g 1024x768 -a 16 -f \
--plugin rdpdr --data printer -- \
--no-tls 192.168.1.100
exit 0
этот скрипт будет запускать RDP сессию с нужными параметрами
Для автозапуска скрипта xrdp.sh в LXDE в каталоге ~/.config/autostart/ нужно создать текстовый файл xrdp.desktop с содержимым
[Desktop Entry]
Type=Application
Exec=/полный/путь/к/xrdp.sh
Выйдите и зайдите в систему, если хотите проверить автостарт терминальной сессии.
Чтобы сделать автовход в LXDE, нужно помнить, что современный менеджер входа в Ubuntu - это LightDM. Правим конфигурационный файл sudo nano /etc/lightdm/lightdm.conf
. Выставляем параметр autologin-user в нужного нам пользователя, под которым будет осуществляться автовход в систему.
После перезагрузки должен произойти автовход в LXDE и сработать автозапуск терминальной сессии с помощью xfreerdp.
Настройка принтера в Lubuntu не сложная. Все ваши принтеры будут "прокинуты" в терминальную сессию RDP, благодаря параметру --plugin rdpdr --data printer --. Если нужно "прокинуть" только определённый принтер из множества установленных в системе Lubuntu, то нужно изменить параметр --plugin rdpdr --data printer -- на --plugin rdpdr --data printer:printername:driver --
В дальнейшем дано указание сделать "диск", который с наименьшими усилиями автоматически "сделает из старья конфетку". Позволит работать в терминале другим пожилым компьютерам, на которые уже никогда не купят лицензию MS Windows. Но об этом как-нибудь в другой раз.
Хоть на старость лет пусть компьютеры поработают под Ubuntu Linux и скинут тяжёлое бремя MS Windows + антивирусник, который вечно ищет всякую липнущую гадость.
Похожие материалы:
Репозитории Ubuntu.
Зачем мне Ubuntu? У меня уже есть Винда.
Терминальный сервер 1С под Linux.
Установка программ в Ubuntu. Если собрались компилировать что-либо.