Запуск сервера терміналів для програм 1С на NAS Synology



Зовсім недавно до нас у руки потрапив мережевий накопичувач DS412+ від фірми Synology. Якщо вірити словам з сайту виробника, то він розроблений для малого та середнього бізнесу, де потрібна висока продуктивність, зручність управління і повнофункціональне рішення мережевого зберігання для централізації резервування даних, захисту критично важливої інформації і обміну файлами між різними платформами. Наш замовник був зацікавлений у використанні його не тільки в якості накопичувача (для зберігання БД 1С), але і в ролі сервера терміналів для роботи з платформою 1С. Під катом ви знайдете безпосередньо сам процес адаптації DS412+.

Почнемо з короткого опису характеристик пристрою, повні ви можете знайти на тут:
  • Тактова частота ЦП — 2.13 Ггц (Двоядерний)
  • Оперативна пам'ять RAM — 1 ГБ DDR3
  • Тип і кількість HDD — 4 диски 3,5" SATA(II) або 4 диска 2,5" SATA/SSD
  • Тип і кількість мережевих портів — 2 порти Gigabit
Нам пощастило, що на 412м варто ЦП Atom і його архітектура дозволила використовувати pre-compliled пакети 1С для платформи i386, хоча на тому ж DS213j варто вже MARVELL Armada 370, на який, на жаль, готових рішень немає. Для складання пакетів ми використовували віртуальну машину, запущену на робочому ПК. Отже, приступимо.

1. Встановлюємо мінімальний дистрибутив Debian на віртуальну машину;
2. Встановлюємо на цю систему debootstrap (з репозиторію);

apt-get install debootstrap

3. Готуємо debootstrap для запуску на іншій системі. Т. к. DS412+ під i686, вказуємо архітектуру. Ставимо його в папку ~/deboo:

debootstrap --foreign --arch i386 wheezy deboo

Копіюємо свої репозиторії в підготовлений спосіб:

cp /etc/apt/sources.list ~/deboo/etc/apt/sources.list

І запаковуємо в tarball-файл, щоб було зручніше переносити:

tar xvzpf synodebian.tar.gz

4. Після ініціалізації DiskStation включаємо ftp-сервер, через веб-інтерфейс додаємо загальну папку «share».





Переносимо підготовлений на третьому етапі tarball-файл з системою (debootstrap) в цю папку;
5. Щоб потім не збирати на слабенькому DS'е — відразу на віртуальній машині збираємо пакети XRDP:

apt-get install git
git clone https://github.com/scarygliders/x11rdp-o-matic.git
cd X11RDP-o-Matic
./X11rdp-o-matic.sh -justdoit

Збиратися буде довго, по закінченню забираємо готові пакети з ./X11RDP-o-Matic/packages, поміщаємо в ту ж загальну папку share на DS'е. Туди ж копіюємо службовий скрипт ./X11RDP-o-Matic/RDPsesconfig.sh. Віртуальна машина більше не знадобиться, її можна вимикати.
6. Підключаємося до DS по SSH. Система монтує розділ в папку "/volume1", переходимо до неї, в підпапку share (яка расшарена ftp). Розпаковуємо створений tarball-файл /volume1/deboo;
7. Переносимо налаштування DNS ім'я сервера:

hostname > /volume1/deboo/etc/hostname
cp /etc/resolv.conf /volume1/deboo/etc/

8. Розпаковуємо все пакети:

chroot /volume1/deboo /debootstrap/debootstrap --second-stage

9. Робимо скрипти для монтування/размонтирования системних папок, дозволяємо їх запуск:

~/deboo-mount.sh:
/bin/mount-o bind /dev /volume1/deboo/dev
/bin/mount-o bind /proc /volume1/deboo/proc
/bin/mount-o bind /dev/pts /volume1/deboo/dev/pts
/bin/mount-o bind /sys /volume1/deboo/sys
/bin/mount-o bind /mnt/share /volume1/deboo/share
~/deboo-umount.sh:
/bin/umount /volume1/deboo/proc
/bin/umount /volume1/deboo/dev/pts
/bin/umount /volume1/deboo/dev
/bin/umount /volume1/deboo/sys
/bin/umount /volume1/deboo/share

10. Монтуємо системні папки, і запускаємо вже повноцінний debian:

sh ~/deboo-mount
chroot /volume1/@chroot /bin/bash

11. Все, тепер почалася повноцінна робота з debian в баше. Готуємо роботу з репозиторіями і оновлюємо пакети:

apt-get update && apt-get upgrade

12. Встановлюємо ймовірно найлегшу графічну оболонку (ікси так-же встановлюються при вирішенні залежностей):

apt-get install --no-install-recommends lxde

13. Встановлюємо пакети XRDP, зібрані на п'ятому етапі:

cd /volume1/share/packages
dpkg-i *.deb && apt-get install-f

14. Додаємо користувачів у систему, які будуть підключатися до сервера терміналів, запускаємо скрипт RDPsesconfig.sh, отриманий на етапі 5, який згенерує їм потрібні конфігураційні файли;
15. Запускаємо XRDP:

/etc/init.d/xrdp start

Тепер можна підключатися до сервера терміналів.
16. Викачуємо звідси пакети клієнта і сервера для DEB-based систем. Розпаковуємо їх в одну папку і встановлюємо:

dpkg-i *.deb && apt-get-f install

17. Для платформи потрібні додаткові пакети шрифтів і imagemagick, ставимо їх:

apt-get install ttf-mscorefonts-installer imagemagick

В цілях ознайомлення використовувалася вилікувана 1С (на руборде знайшов патчер 1c8_uni2patch_lin, пропатчити їм файл /opt/1C/v8.3/i386/backbas.so);

Справу зроблено! Залишилася рутина. В ту ж загальну папку поміщаємо файлову базу 1С (вже розпаковане демонстраційну версію Управління Торгівлею). Підключаємося по RDP на сервер під своїм користувачем, запускається оболонка, додаємо ярлик для запуску 1С Підприємства на робочий стіл, запускаємо. 1С пропонує вам додати базу. Додаємо існуючу, вказуємо на загальну папку, в яку була поміщена база. Підключаємося в режимі підприємства, вибираємо користувача.

І ще кілька слів наостанок, незважаючи на те, що сервер терміналів запустити все-таки вдалося, вважаємо використання даної конфігурації для вирішення поставленого завдання недоцільним, через дорожнечу і складність у підготовці програмної складової.

Джерело: Хабрахабр

0 коментарів

Тільки зареєстровані та авторизовані користувачі можуть залишати коментарі.