четверг, 1 сентября 2011 г.

Установка: часть 3 - Терминальный сервер

Итак у нас получился вполне себе работоспособный сервер 1С:Предприятия на базе CentOS, что не может не рабовать)
Для окончательного избавления от Windows Server не хватает только терминального режима работы. Чем я занимался последние два дня... Ага, именно, два дня!
Как я себе это представлял:
1. Какая-нибудь ОС дружного и не очень семейства Linux
На самом деле, думал я, без разницы какая, главное постабильней. в качестве DE - LXDE, ибо легкая (что в названии DE и написано)
2. За пользовательские сеансы отвечать будет NX
Других-то вариантов на горизонте нет
3. 1С будет последней доступной платформы в режиме толстого клиента
Знаю я, знаю, про тонкого клиента, да и про веб-клиента. Вы его пробовали? Покажите мне розничный интерфейс на управляемых формах, и я пойду в лес, лягу в берлогу к медведю и буду... не важно короче. Склады и магазины работают в АРМах и их нет в управляемых формах))
4. Поскольку клиент-то толстый (неполиткоректно как-то звучит) нужен wine для его запуска.


Поехали.


Из 4 пунктов 3 позволяют вариации в моем случае. Начинаем вариации.
wine взял бесплатный
nx сервер от etersofta
1. Ubuntu server 10.04
1.1 64 бита
1.1.1 wine 1.3
Хрень какая-то... я серьезно. Все поставилось, и заработало. Кроме 1С. Точнее она заработала, но уж больно интересно. Может раз 20 запуститься подряд и отработать, а может начать вылетать на запуске по двум причинам: первая - no XRender чего-то там, вторая ошибка инициализации dll.
1.1.2 wine 1.2 типа стабильная
Еще лучше. 1С вылетает при любой манипуляции с выпадающими списками. 100% не рабочий вариант.
1.2 32 бита
1.2.1 wine 1.3
1.2.3 wine 1.2
Все с точностью до наоборот, те же ошибки поменялись местами. Снес.
2 Ubuntu server 10.10
Все один в один


Итого убунту 12-13 часов радости, счастья и глюков. Убираем установочные iso подальше и стараемся их больше не замечать.


3. LinuxMint 11 Katya LXDE 32 bit
Не видит ключ. В упор не видит.
Я в курсе, что бесплатный вайн не работает с локальными ключами. Но у меня сетевой. Даже nethasp.ini не помог. Скажу больше, пробовал ломать. На винде норм отработало, в вайне не видит ключ... как-так? забил. убрал все ломаные библиотеки, мы же лицензионные до жути)


Итого: все что носит на себе отпечатки убунты не заработало. Дебиана по этой же причине даже не стал пробовать.
Еще вспомнил забавный глюк в убунтах. Если запускать не с ярлыка на рабочем столе, тогда приложения не получают фокус ввода (пароль ввести невозможно в 1с) вообще его не получают, даже если мышкой в окно ввода пароля кликнуть. Лечится только кликом в окно выбора пользователей и потом в окно ввода пароля, что очень плохо, так ка описанный выше баг со списком выбора не дает работать в 1с вообще)))


В раздумьях провел пару часов. Читал Гугла.
На глаза попался установочный диск Центоси. Ага, тот же самый, с которого ставил сервера. Рука дрогнула и полезла в epel. Вот и оно: wine-1.2.3-1.el6.i686.rpm
Да, система для серверов, да с интерфейсом не очень (по мне так дубоват) со сглаживанием шрифтов тоже. Но работает.


Вот он, победитель:
4. CentOS Linux release 6.0 (Final)
Linux termpro.*.* 2.6.32-71.el6.i686 #1 SMP Fri Nov 12 04:17:17 GMT 2010 i686 i686 i386 GNU/Linux


Работает все, что необходимо на данном этапе.
Что сделал.
1. Установил систему с minimal desktop
2. Установил nx-сервер
Брал с сайта etersofta
Ничего сложного нет. Ставим пакеты, потом:
nxsetup --setup-nomachine-key --install
/etc/init.d/iptables stop заодно отключим его вообще
/etc/rc.d/freenx-server check проверили установку нашли косяки, правим
nano /etc/ssh/sshd_config включаем publickey
nano /etc/selinux/config отключаем, ибо см.предыдущий пост
reboot
Все, подключается, сессии открываются
rpm -ivh http://mirror.yandex.ru/epel/6/i386/epel-release-6-5.noarch.rpm

yum install wine
wget http://files.polosatus.ru/winefontssmoothing.sh (скрипт включает сглаживание в вайне)
wget -c http://download.etersoft.ru/pub/Etersoft/WINE@Etersoft/1.0.12-eter12/fonts/CentOS/5.5/fonts-ttf-ms-1.0-eter4centos.noarch.rpm
yum localinstall --nogpgcheck fonts-ttf-ms-1.0-eter4centos.noarch.rpm 
yum remove NetworkManager (а зачем он нам?)
nano /etc/sysconfig/network-scripts/ifcfg-eth0 
mkdir /var/lib/1c
nano /var/lib/1c/start1c.sh
chmod 777 /var/lib/1c/start1c.sh (скрипт запуска 1с)
Ставим в графике 1с. Прописываем в hosts наши сервера (мы же еще не подняли dhcp и bind, а пользоваться виндовым надоело)
Копируем папку .wine куда нить, откуда будем ее раскидывать пользователям (в бесплатном вайне плохо работает одновременный запуск нескольких копий вайна из одной папки, в отличии от платного))
теперь клиенты. если не дай бог есть винда, качаем с сайта етерсофта и используем его. на линуксах используем официальный от nomachine, проблем не заметил.
В клиенте прописываем наш скрипт запуска ставим rootless, наслаждаемся.

Комментариев нет:

Отправить комментарий