Форум русскоязычного сообщества Ubuntu


Увидели сообщение с непонятной ссылкой, спам, непристойность или оскорбление?
Воспользуйтесь ссылкой «Сообщить модератору» рядом с сообщением!

Автор Тема: Сервер удаленных рабочих столов (xRDP)+ 1С + апач! Ubuntu 14.04 /64 с Видео  (Прочитано 6804 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Witddd

  • Автор темы
  • Любитель
  • *
  • Сообщений: 62
    • Просмотр профиля
      Установка и настройка сервера удаленных рабочих столов под управлением Linux Ubuntu server 14.04 по протоколу xRDP

    Доброго времени суток! В этой статье я хочу детально описать как установить и настроить сервер удаленных рабочих столов под управлением Linux Ubuntu server 14.04

    Каждое решение имеет свои слабые и сильные стороны. Потому и данное решение не лишено их.
Начнем с описания проблемы. Кто собственно уже решил для чего нужен данный сервер, тот может пропустить данный раздел.
Сервер удаленных рабочих столов (его еще называют терминальным сервером)  служит для  совместной и централизованной работы группы пользователей в одном или нескольких приложениях. В моем случае это были базы 1С: 8.2 (8.3) Бухгалтерия, ЗУП, Склад. Собственно не особо важно, какая конфигурация.  Ранее я пользовался, как и большинство моих коллег Windows Server начиная от 2003 до 2008, а также сторонними платными программами , например ViTerminal.
Далее расскажу о том что мы получим в результате и о плюсах и минусах данного сервера, по сравнению с вышеперечисленными решениями.
Ну начнем с минусов.

- самым главным минусом, на мой взгляд, является то, что данный сервер не пробрасывает принтеры. Хотя в локальной сети эта проблема, собственно и не проблема, но для работы через интернет, данное решение приходиться сочетать с вэб-сервером.
-  Вторым минусом, главным образом для работадателя, является что не каждый специалист, может работать с Linux системами.
- Третий минус. Дело в том что работа 1С в Linux не поддерживает COM объекты.

     Теперь о плюсах.
- Работа Linux несравнимо более стабильна и устойчива. У меня частенько «моргает» свет и просто его отключают, зачастую это происходит в нерабочее время. Хотя и сервера автоматом выключаются, но бывает , что напряжение нештатное и тогда сервер не успевает выключиться. На файловых серверах Linux Ubuntu, я и вовсе, последние несколько лет не ставлю, бесперебойники. За все время а это с 2008 года из всех серверах под управление Linux Ubuntu начиная с версии 10.04 , до сегодняшнего момента у меня не было неодного сбоя или выхода из строя серверов по вине ОС , железо горело, но Linux – никогда! А вот с Windows , было… особенно файловые системы…. Если бы не резервные копии по ночам, то самый страшный позор сисадмина – потеря базы данных, не обошел бы меня.

- Существенная экономия на компьютерном «железе». Под управлением Linux Ubuntu мой старый сервер ожил снова. До этого на нем стоял Windows Server 2003 64x /CPU  xeon 3430 2.4 x 4 / 8M ОЗУ . База 8.2 была около 3.5 ГБт и вторая 1 ГБт. Одновременно работало до 7 пользователей. Это был мрак. Оборотка формировалась около 3 минут ну т.д.
Покупка нового железа, требовала еще и покупки новой ОС и терминальных лицензий в общем смета за 150 000 рублей. Старая ОС не могла адресовать более 8 ГБт памяти.
На Linux Ubuntu все заработало и оборотка на том же железе формировалась 5-8 секунд.
- Как следствие быстродействие на том же «железе» существенно быстрее.
- Ну и деньги… все бесплатно! Ни тебе серверной лицензии ни терминальных по пять штук, расширяй, подключай, хоть на «ушах ходи».


   Итак, собственно сама установка.  Ссылка на дистрибутив:
http://releases.ubuntu.com/14.04/ubuntu-14.04.5-server-amd64.iso

Не буду описывать процесс установки, скажу только что выбрал из списка установленного ПО

-   OpenSSH server
-   Print server
-   Samba file server



После установки традиционно:

sudo apt-get update
sudo apt-get upgrade
sudo apt-get install mc
sudo reboot



   Далее нам будет нужна графическая оболочка. Статья которую я брал за основу:
https://github.com/neutrinolabs/xrdp/wiki/Building-on-Debian-8

написана под Debian с оболочкой Gnome. Gnome Shell – мне не понравилась, да и пользователи будут несколько удивлены увидев, некое подобие смартфона. В итоге я остановился  на Cinnamon. Потому как она сделана на основе Gnome и она проста и понятна пользователю. Можно добавить еще LXDE , но она не у всех работает.
Можно поставить обе оболочки, с LXDE проще устанавливаются принтеры.

   Добавляем репозиторий:

sudo add-apt-repository ppa:embrosyn/cinnamon
обновляем списки:

sudo apt-get update
и устанавливаем графическую оболочку.

sudo apt-get install cinnamon
sudo apt-get install xinit

sudo reboot
Установка LXDE

sudo  apt-get install xubuntu-desktop
sudo reboot

   Запустится графическая оболочка.

Теперь наш будущий сервер готов к установки пакетов необходимых для нормальной работы xRDP


-Устанавливаем зависимости:

sudo apt-get install git autoconf libtool pkg-config gcc g++ make libssl-dev libpam0g-dev libjpeg-dev libx11-dev libxfixes-dev libxrandr-dev flex bison libxml2-dev intltool xsltproc xutils-dev python-libxml2 g++ xutils libfuse-dev libmp3lame-dev nasm libpixman-1-dev xserver-xorg-dev git
Создание каталога для загрузки и хранения дистрибутива.

mkdir –p ~/xrdp-xorg
переходим в этот каталог

cd ~/xrdp-xorg
BD=’pwd’
cd “${BD}”

И клонируем репозиторий в данный католог:

git clone git://github.com/neutrinolabs/xrdp
 переходим в каталог xrdp

cd xrdp
теперь нам надо осуществить сборку xrdp c кодеком rfxcodec:

git submodule init
git submodule update
cd librfxcodec
./bootstrap
./configure
make
cd ..
./bootstrap
./configure --enable-fuse --enable-rfxcodec --disable-ipv6
make

Производим установку xRDP

sudo make install
sudo ln -s /usr/local/sbin/xrdp{,-sesman} /usr/sbin
И добавляем в автозагрузку при старте.

sudo update-rc.d xrdp defaults
    Теперь необходимо скачать xorg-xrdp:

wget https://github.com/neutrinolabs/xorgxrdp/releases/download/v0.2.0/xorgxrdp-0.2.0.tar.gz

    переходим в каталог с архивом

cd /root/xrdp-xorg/xrdp
и распаковываем архив:

tar xvfz xorgxrdp-0.2.0.tar.gz
переходим в папку с распакованными файлами:

cd /root/xrdp-xorg/xrdp/xorgxrdp-0.2.0
   Проблема раскладки клавиатуры решается «жестким» привязыванием.

kb_model="pc105"
kb_layout="us,ru"
kb_options="grp:ctrl_shift_toggle"     - для раскладки ctrl + shift
kb_options="grp:alt_shift_toggle"      -  для раскладки alt + shift
   Ну как все поняли, нужно выбрать что то одно )

Меняем исходный код, предварительно посмотрев, что вы все же в каталоге с разархивированными файлами.

cd /root/xrdp-xorg/xrdp/xorgxrdp-0.2.0

sed -ri.bak "s/(set.model)[^;]+/\1 = \"$kb_model\"/;s/(set.layout)[^;]+/\1 = \"$kb_layout\"/;s/(set.options)[^;]+/\1 = \"$kb_options\"/" xrdpkeyb/rdpKeyboard.c
в этом же каталоге собираем и ставим

./bootstrap
./configure
make
sudo make install
теперь перезагружаем сервер.

sudo reboot


Можно подключаться с компьютера под управление windows.

Для более комфортной работы на клиентской машине выставить в подключении удаленных рабочих столов – экран-глубина цвета 16 бит.
Еще одна проблема, с которой сталкивается пользователь это то что при подключении к удаленному рабочему столу Ubuntu раскладка на клавиатуре должна быть английской, я решаю эту проблему сохранением логина и пароля пользователя.



Установка 1С на Linux

- Скачать с сайта 1Cuser 2 архива. Сервер 64бит и Клиент 64бит для Deb пакетов

- Распаковать все в отдельные папки.

- Зайти в эти папки и установить пакеты dpkg *.deb. Начиная с серверного пакета.

Для удобства путешествия по папкам рекомендую  Mcommader, запускается командой:

mc

Установка зависимостей, кому необходимо, зависит от версии платформы 1С:

apt-get install –f
У меня не все платформы завелись.  Советую не использовать самую последнюю.
В основном все платформы нормально заводиться, но процентов 20 все же не запускаются, не тратьте время просто скачайте на одну версию более раннюю.

Установка шрифтов:

apt-get install msttcorefonts
Проверяем. Должно ругнуться на отсутствие лицензий.

Устанавливаем драйвер HASP. Для этого нужно включить 32 битность

dpkg --add-architecture i386
sudo apt-get update
Скачиваем драйвер отсюда.

http://download.etersoft.ru/pub/Etersoft/HASP/last/Ubuntu/14.04/

переходим в папку и устанавливаем.

sudo dpkg –I *.deb
Проверяем. Перезапускаем службу

sudo service haspd restart
Все заработало.

Рекомендую отключить блокировку экрана. У меня пользователи не знают букв и потому я её отключил.

1С запустилось. Выключаем. Создаем или добавляем базу.

Добавляем принтеры в локальной сети.
Не буду описывать этот процесс, он не отличается от установки принтеров на обычную машину. Скажу только что войдя под Cinnamon потребовалась правка ручками, а пот LXDE просто тыкаем на принтер и все работает. Из терминала надо раз 5 набрать свой пароль.


Добавляем пользователей

adduser buchgalter и т.д.

пароль и т.д. снимаем блокировку экрана. Назначаем пользователю принтер по умолчанию.  Тут почему то у многих вопрос: «Как назначить каждому пользователю свой принтер по умолчанию?»

Отвечаю: В списке принтеров только один принтер «по умолчанию», он обозначен зелененькой галочкой. Если принтер данного пользователя отличен от него, но нужно нажать правой кнопкой мыши на нужном принтере и выбрать пункт: «Set As Default» , в выпадающим меню выбрать; «Set As My personal default  printer».
Теперь данный принтер будет использоваться «по умолчанию» только для данного пользователя и над ним появиться значок с сердечком.

Далее есть еще одна проблема в 1С. При попытки второго пользователя войти в базу, вылезет блокировка файлов.

ОШИБКА РЕЖИМА ДОСТУПА У ФАЙЛУ БАЗЫ ДАННЫХ ….путь

Например, база данных  находиться в папке /BASE/1C/buch

Решается данная проблема достаточно просто.

В терминале.

sudo apt-get install bindfs
далее переходим  к редактированию файла /etc/fstab.  Редактируем внимательно!
Добавляем в конце файла строку или если несколько баз то несколько строк, желательно по одному.

bindfs#/BASE/1C/buch       /BASE/1C/buch     fuse perms=0777       0        0       

 баз может быть несколько.

При желании можно указать пользователей на через запятую

bindfs#/BASE/1C/buch       /BASE/1C/buch     fuse=0777,mirror-only=buchgalter:buchgalter2:admin       0   0
cохраняем, перезагружаем.     

Заходить можно по имени, если кому надо по статичному IP, то правим настройки сетевой платы.

Кому надо чтобы работало через интернет, то ставим апач

apt-get install apache2
Заходим в конфигуратор 1С и публикуем базу, не забыв выбрать версию apache 2.4 и путь до базы без кириллицы.

В ходе установки может ругнуться на зависимости.

apt-get  –f  install
Да, делать, как я скажу

И потом установить и перезапустить службу HASP или перезагрузить.

Установить набор библиотек для корректной работы Апач.

sudo apt-get install imagemagick
Вот вроде бы и все. У меня все стабильно работает уже несколько месяцев.
« Последнее редактирование: 15 Марта 2018, 15:50:28 от Witddd »

Оффлайн Witddd

  • Автор темы
  • Любитель
  • *
  • Сообщений: 62
    • Просмотр профиля
Видео по теме. В данных видео пошаговая инструкция по установке и настройке сервера удаленных рабочих столов под 1С. 

https://www.youtube.com/watch?v=ErBinO5qIYw   - демонстрация работы сервера удаленных рабочих столов
https://www.youtube.com/watch?v=lzfmFvR1WRs   - Установка Linux Ubuntu 14.04 на виртуальную машину.
https://www.youtube.com/watch?v=uLhYNMIdNOA   - Настройка Samba и общих папок на Linux Ubuntu Server 14.04
https://www.youtube.com/watch?v=RV2i9NeEB_E   - Установка графических пакетов Linux Ubuntu Server 14.04
https://www.youtube.com/watch?v=RAwzxwEfoX0   - Установка xRDP на Linux Ubuntu Server 14.04
https://www.youtube.com/watch?v=ZhN5TPfckFw   - Установка драйвера HASP
https://www.youtube.com/watch?v=iLEiSPRcjEM   - Установка 1с и создание базы (файловый вариант)
https://www.youtube.com/watch?v=hlko8mC3Frw   - Установка принтеров сетевых и на локальных на Windows
https://www.youtube.com/watch?v=Z2vBEinixHc   - Вэб сервер 1с без шифрования
https://www.youtube.com/watch?v=7HhxDhG4qJ4   - Ответы на вопросы



Следующие видео про установку 1с на Linux и настройку внешнего вида.
« Последнее редактирование: 20 Июня 2018, 12:42:37 от Witddd »

 

Страница сгенерирована за 0.048 секунд. Запросов: 25.