bdd2

Собственный виртуальный сервер для 1С на Linux Ubuntu

Опубликовал Ildar Gabdrakhmanov (spezc) в раздел Администрирование - Системное

Статья для тех, кто хочет научиться разворачивать 1С на linux, и для тех, кто хочет получить недорогой виртуальный сервер для собственных нужд.

Статья предназначена для тех, кто имеет весьма посредственное представление о linux-системах, но кто хотел бы получить небольшой опыт работы с 1С на linux (как минимум для того, чтобы добавить строчку в резюме). Думаю будет также интересно для тех, кто хочет за небольшие деньги получить собственный виртуальный сервер для личных нужд – например, хочет «где-то» развернуть собственную базу для домашней бухгалтерии 1С:Деньги и иметь к ней доступ 24 часа в сутки из любого места (и для этого не придется держать дома постоянно включенный сервер с выделенным IP).

Первое, что потребуется - арендовать виртуальный сервер. Площадок, предлагающих данные услуги более чем достаточно. В моем примере будет использован сервер 512MB Ram 20GB SSD Disk  Ubuntu 12.04 x32 со стоимостью аренды 5 долларов в месяц. Не знаю политику инфостарта относительно рекламы, поэтому мой хостинг назову в комментариях (если спросите).

Сервер арендован. Для подключения можно использовать SSH-клиент Putty (далее работа будет через командную строку).

Выполняем команды:

apt-get update (обновляет операционную систему)

apt-get install nano (устанавливаем текстовый редактор, потребуется в дальнейшем)

apt-get install mc (устанавливаем файловый менеджер, поможет потом установить 1С)

apt-get install firefox (устанавливаем браузер, потребуется в дальнейшем, когда установим графическую оболочку, поможет скачать дистрибутивы 1С)

apt-get install imagemagick (устанавливаем библиотеки, потребуется для 1С)

apt-get install libwebkitgtk-1.0-0 (устанавливаем библиотеки, потребуется для 1С)

apt-get install apache2 (устанавливаем apache, потребуется для публикации базы)

apt-get install lubuntu-desktop (устанавливаем GUI – графический интерфейс, потребуется для работы с клиентом 1С)

apt-get install lxde-common (устанавливаем библиотеки, потребуются для терминального подключения к linux-серверу)

apt-get install xrdp (устанавливаем xrdp, для подключения к серверу через RDP)

apt-get –f install (не линуксоид, не знаю что делает, но помогает решить проблему libwebkitgtk-1.0-0, так как подтягивает необходимые библиотеки, кто сталкивался – поймет)

 

Все ПО установлено. Теперь нужно выполнить некоторые настройки, чтобы можно было подключиться к серверу через RDP.

Выполните команду:

nano /etc/xrdp/startwm.sh

и приведите текстовый файл к следующему виду (закомментируйте строку «. /etc/X11/Xsession» и добавьте в конце строку «. /usr/bin/startlxde»):

 

#!/bin/sh

 

if [ -r /etc/default/locale ]; then

  . /etc/default/locale

  export LANG LANGUAGE

fi

 

#. /etc/X11/Xsession

. /usr/bin/startlxde

Выполните команду:

nano /etc/xrdp/xrdp.ini

и в блоке  [xrdp1] параметр «port=-1» замените на «port=ask». Это позволит при подключении указывать порт подключения вручную. При первом подключении необходимо будет указать порт «-1» - это инициализация новой сессии. У xrdp есть свои особенности, в частности иногда, при повторном подключении xrdp не видит старой сессии и создает новую. Поэтому я делаю так: при первом подключении указываю порт «-1», далее в момент непосредственного коннекта обращаю внимание на порт, к которому происходит подключение (например 5910) , а в дальнейшем, при повторном подключении указываю именно этот порт – это дает возможность подключиться сессии, в которой работали до отключения.

Все готово для подключения к нашему новому серверу. На компьютере с windows открывает rdp (например Пуск – Выполнить - mstsc), указываем адрес нашего сервера и подключаемся. В появившемся окне указываем логин, пароль и порт «-1». Если все прошло удачно – вы увидите рабочий стол вашего нового сервера.

Далее через браузер Firefox скачиваете дистрибутивы 1С. Вам потребуются следующие:

1c-enterprise83-common_8.3.5-1570_i386.deb

1c-enterprise83-common-nls_8.3.5-1570_i386.deb

1c-enterprise83-server_8.3.5-1570_i386.deb

1c-enterprise83-server-nls_8.3.5-1570_i386.deb

1c-enterprise83-client_8.3.5-1570_i386.deb

1c-enterprise83-client-nls_8.3.5-1570_i386.deb

1c-enterprise83-ws_8.3.5-1570_i386.deb

1c-enterprise83-ws-nls_8.3.5-1570_i386.deb

Несмотря на то, что мы будем работать только с файловой базой, для работы клиента нам все равно потребуется установить полный комплект.

После того как файлы будут закачаны на сервер – их нужно будет установить. Проще всего – в Putty выполнить команду «mc» и запустить файловый менеджер. В нем перейти в папку, где лежат ваши дистрибутивы, по очереди зайти в каждый файл и запустить INSTALL. Установку необходимо выполнять в порядке, приведенном выше.

В принципе все. Если подключиться по RDP к вашему серверу – вы увидите установленную 1С. В качестве теста можете развернуть демобазу 1С: Деньги и опубликовать на веб-сервере Apache. Порядок публикации не отличается от того, который выполняется на Windows и в принципе довольно прост (на этом ресурсе достаточно статей).

Возможные трудности, с которыми вы можете столкнуться и которые довольно сильно потрепали мне нервы:

  1. По данным 1С – единственной работоспособной убунтой является 12.04. Пробовал повторить этот процесс на Ununtu 14.04 и 14.10 – на х32 удалось установить и запустить 1С, на х64 попал на проблему «libwebkitgtk-1.0-0», которую решить не удалось. Также на Ubuntu 14 проблемой будет Apache 2.4. Официально 1С работает только с Apache 2.2, а на Ubuntu 14 минимально доступная версия Apache 2.4 (и гугл подсказал, что установить 2.2 не представляется возможным).
  2. В данной статье не рассматривается вариант настройки HASP (статей на эту тему тоже достаточно). Вопрос ключей решался традиционным способом, однако он не работает для х64.

См. также

PowerTools от 1 000
Добавить вознаграждение
Комментарии
1. Олег Дмитров (baracuda) 2 24.05.15 21:44 Сейчас в теме
Немного линуксоид.
Статья зачем, спасибо, что поделились. Всегда приятно что люди делятся опытом.
2. Роман Ложкин (webester) 21 24.05.15 22:22 Сейчас в теме
Может иногда стоит пользоваться поиском нет?
http://infostart.ru/public/142601/
http://infostart.ru/public/274748/
http://infostart.ru/public/142228/
http://infostart.ru/public/238077/
http://infostart.ru/public/174095/
http://infostart.ru/public/89592/
http://infostart.ru/public/359826/
Это первое что попалось на глаза, может быть или даже наверняка материала больше гораздо. На тему недорогих впс есть не очень плохой каталог впс, можно сравнить по различным параметрам и найти нужную VPS http://vds.menu/ от 56 рублей.
Avet01; spezc; u_n_k_n_o_w_n; baton_pk; +4 Ответить 1
3. Сергѣй Батанов (baton_pk) 202 24.05.15 23:11 Сейчас в теме
Ага. Сначала качаем файлы в графическом режиме, потом запускаем терминал, чтобы (ВНЕЗАПНО!) запустить в нём файловый менеджер.

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

Кстати, выделенный IP стоит наверняка дешевле 5 баксов в месяц, а комп с 512 метрами оперативы обычно тоже где-нибудь откапывается :) У нас старый нет-бук с гигом оперативы стоит дома в качестве сервера :)
4. Ildar Gabdrakhmanov (spezc) 253 25.05.15 06:32 Сейчас в теме
(1) это хорошо что вы немного линуксоид, а для меня (работающего с линуксом второй раз в жизни) реализация сабжа растянулась на 4 дня, ибо материал, который позволил бы реализовать это был разбросан по разным статьям и тематикам.
5. Ildar Gabdrakhmanov (spezc) 253 25.05.15 06:36 Сейчас в теме
(2) в приведенных ссылках не раскрыто, как развернуть графическую оболочку, как подключиться терминально к удальенному серверу, как запустить клиент 1С, там материал по большей части по теме, которая не особо затрагивается в этой статье. хотя нет! есть! последняя ссылка в списке - как раз то что надо)))

за http://vds.menu/ отдельное спасибо, не знал о таком, подберу себе выгодный вариант)
6. Ildar Gabdrakhmanov (spezc) 253 25.05.15 06:41 Сейчас в теме
(3) ну мне с линуксоидами трудно будет спорить, хотя тут спорить и незачем, ибо вы правы. однако у меня не получилось установить пакеты через "проводник", кликнув по файлу deb (выдавало какие-то ошибки). поэтому пошел проверенным путем - через коммандную строку. но проще было открыть МС и запустить файл install, чем набирать "dpkg ...". Хотя все равно соглашусь, со стороны трулинуксоидов это явно ламерский подход.
7. Ildar Gabdrakhmanov (spezc) 253 25.05.15 06:44 Сейчас в теме
(3) а по части использования рабочего компа для таких целей - вынужден не согласиться. в компаниях, которых я работал, такое просто было "вне политики компании" и просто не разрешалось/не приветствовалось. а ввиду специфики работы, у меня нет стационарного компа, который я мог бы поставить дома и посадить на выделенный ИП, так как и дома то стационарного нет.
8. Роман Ложкин (webester) 21 25.05.15 07:02 Сейчас в теме
(6)
однако у меня не получилось установить пакеты через "проводник", кликнув по файлу deb (выдавало какие-то ошибки). поэтому пошел проверенным путем - через коммандную строку

Если бы вы таки просмотрели поисковую выдачу по данному вопросу, то и фаерфокс бы вам не понадобился и команду которая одним махом ставит все нужные пакеты, тоже нашли бы. Да и вообще бы, вместо 4хдней ушел бы максимум день.
9. Сергѣй Батанов (baton_pk) 202 25.05.15 10:15 Сейчас в теме
(7) spezc,
так как и дома то стационарного нет

Ууу, в таком случае вам бы поплотнее засесть в облака, а RDP-сервер с 512 оперативы - не лучший вариант. Особенно с 1С на борту :)
Домашняя бухгалтерия? Гугл-документы. Расчёты с клиентами? Какая-нибудь открытая веб-CRM. Работать будет шустрее, требования к каналу ниже, во многих случаях даже поддержка мобильных устройств имеется. Тот же битрикс взять, к примеру.
10. Ildar Gabdrakhmanov (spezc) 253 25.05.15 13:27 Сейчас в теме
(9) гугло-документы не вариант) 1С деньги наше все)
11. Дмитрий Ли (Shaka13) 25.05.15 15:24 Сейчас в теме
насчет Apache думаю у тебя был неправильный google
кстати у ubuntu есть свой google, имя ему http://www.googlubuntu.com/
есть еще хороший ресурс askubuntu.com, там эта тема поднималась
ставим apache 2.2 на 14.04:

echo "deb http://ua.archive.ubuntu.com/ubuntu/ precise main" > /etc/apt/sources.list.d/ubuntu1204.list
echo "Package: apache*" > /etc/apt/preferences.d/apache22
echo "Pin: release a=precise" >> /etc/apt/preferences.d/apache22
echo "Pin-Priority: 500" >> /etc/apt/preferences.d/apache22

apt-get update

apt-get install apache2

apache2 -v
должно получиться:
Server version: Apache/2.2.22 (Ubuntu)
Server built: Feb 13 2012 01:51:56
gigapevt; cleaner_it; vasiliy_b; spezc; +4 Ответить 1
12. Ildar Gabdrakhmanov (spezc) 253 25.05.15 16:12 Сейчас в теме
(11) Shaka13, попробую, спасибо! гугл наверно реально неправильный, долго искал и в русском и в английском гугле как откатить 2.4 на 2.2 или как поставить 2.2 на 14.04 - ответ один - нет и все тут. были правда пару моментов где "что-то там пересобрать, что-то подключить", но все это было за гранью моего понимания, да и камментов от реализовавших не было.
13. Ildar Gabdrakhmanov (spezc) 253 25.05.15 16:13 Сейчас в теме
не совсем по теме - а убунту 14 лучше 12? на сайте 1с заявлена поддержка только 12.04 LST. Есть смысл ставить 14ю? и 14.04 или 14.10?
14. Дмитрий Ли (Shaka13) 25.05.15 16:46 Сейчас в теме
(13) spezc, удали 2.4 поставь 2.2, если поставил 2.4 решение выше ))) сам провиерял, единственно рабочее из всех испробованных и предложенных в выдаче
однозначного ответа нет, просто новое не всегда еще обкатано, например мне техподдерка сказала переходить на 14.04 когда не захотела исправлять ошибку с imagemagick, но не учла, что apache уже идет 2.4 в комплекте, а платформе не особо торопятся обновлять, вот такой уровень развития 1с и их спецов ))))
я пока в продакшене остаюсь на 12.04
15. Антон Стеклов (asved.ru) 30 25.05.15 18:01 Сейчас в теме
Нет, вы таки объясните, на какой горький корнеплод вам понадобились иксы на сервере? Вы wget пользоваться не умеете?
16. Роман Ложкин (webester) 21 25.05.15 20:08 Сейчас в теме
17. Евгений Сергеев (sev@snail.ru) 25.05.15 20:21 Сейчас в теме
Яростно минусую за ...аренды 5 долларов в месяц...

В рублях, гривнах, зайчиках вот в этом пожалуйста !
cleaner_it; +1 Ответить
18. Антон Стеклов (asved.ru) 30 25.05.15 21:01 Сейчас в теме
19. Антон Стеклов (asved.ru) 30 25.05.15 21:03 Сейчас в теме
И кстати, аналогичный хостинг в городе-герое Далласе стоит $13 в год.
20. Дмитрий Ли (Shaka13) 25.05.15 21:45 Сейчас в теме
(13) spezc, самое главное забыл написать, в чем преимущество 14.04 перед 12.04, в том, что наконец Canonical реализовало полноценно мультиархитектуру, что давно уже есть в других дистрибутивах Linux.
21. Игорь Steelvan (Steelvan) 49 25.05.15 23:32 Сейчас в теме
22. Игорь Steelvan (Steelvan) 49 25.05.15 23:39 Сейчас в теме
Или Даллас герой по пристрелянным темнокожим ? Тогда да !
23. Игорь Steelvan (Steelvan) 49 25.05.15 23:52 Сейчас в теме
Скоро то время когда в Далласе в рублях будут рассчитываться.
24. Ildar Gabdrakhmanov (spezc) 253 26.05.15 06:05 Сейчас в теме
(15) (18) что такое иксы на сервере? wget наверно не знаю? и это показатель чего? что я нуб в линуксе? я как бы этого и не скрываю.
25. Роман Ложкин (webester) 21 26.05.15 08:12 Сейчас в теме
(24)Вы статьи пишете, рассказываете как делать. Откровенно не понимая, что именно вы делаете. Ввели какие то команды, что то получили. Это и вызывает легкое... недоумение. Обычно статья пишется когда человек четко понимает, о чем он пишет. Когда что то сделал и что то заработало это не повод сразу бросаться писать в профильное сообщество. Заведите себе бложек. Давайте просто выведем сухой остаток, что было сделано:
  • Установлена 1С
  • Организован, терминальный доступ к машине.
На этом все. Подождите, нет вы серьезно? Я знаю на инфостарте можно найти топики плана, о том что надо галочку поставить в настройках винрара. Но зачем вставать с ними в один ряд?
Почему был выбран именно такой способ терминального подключения, почему собственно был выбран он а не к примеру опубликована база и использован тонкий или web клиент. Где информация об активации драйвера защиты? Возможно использование только программных лицензий? Где вообще информация об лицензиях? Сама по себе тема разворачивания 1С на удаленном сервере достаточно интересная. Но здесь ничего нет. В данном случае проще взять портабельную сборку 1С8 и носить базу с программой на флешке. Если вопрос лицензирования вас не беспокоит конечно.
sherdim; Собеседник; sh_max; Redokov; +4 Ответить 1
26. Ildar Gabdrakhmanov (spezc) 253 26.05.15 11:40 Сейчас в теме
(25) эка вас статья то зацепила. глянул ваш ложек на инфостарте - имхо постеснялись бы вылазить с такими комментариями. Не в моих правилах отвечать на подобные "глупые вопросы", но все же.

В сабже не только была установлена 1С и запущен терминальный сервер. Если вы перечитаете статью, думаю вы заметите, что именно сделано. Почему был выбрано терминальное подключение - ответ есть в комментариях (нужен доступ к конфигуратору). Про лицензии в статье сказано. Считаю, что статье есть все для того, чтобы взять голый удаленный сервер на убунту, и развернуть на нем "полноценную 1С". Считаю, что статья понятна и достаточна, в случае возникновения вопросов - всегда помогу в комментариях.
27. Vladimir Savelyev (gigapevt) 11 27.05.15 08:27 Сейчас в теме
Файлы на сервер можно передавать по PuTTY через SCP. Опубликовать базу на Apache через консольную утилиту 1с webinst можно как то вот так (в принципе это готовый шаблон только каталоги нужно предварительно создать и права им дать): sudo /opt/1C/v8.3/i386/webinst -apache22 -wsdir ИМЯПУБЛИКАЦИИ -dir '/var/www/base/ИМЯКАТАЛОГАДЛЯВРДФАЙЛА' -connStr 'Srvr="ИПСЕРВЕРА";Ref="ИМЯБАЗЫ1С";' -confPath /etc/apache2/httpd.conf и иксы не нужны.
28. Vladimir Savelyev (gigapevt) 11 27.05.15 08:32 Сейчас в теме
И кстати ключи прекрасно работают на 64х. А иначе смысл то ?
29. Ildar Gabdrakhmanov (spezc) 253 27.05.15 08:41 Сейчас в теме
(27) аха, это я в другой статье писал) хотя инфы про это достаточно. а иксы - это я как понимаю графический интерфейс? он был нужен именно для конфигуратора
30. Ildar Gabdrakhmanov (spezc) 253 27.05.15 08:42 Сейчас в теме
31. Роман Сюзёв (syuzyov) 27.05.15 21:12 Сейчас в теме
(29) spezc, графический интерфейс это lxde в Вашем случае (точнее это окружение рабочего стола, пожалуй самое легковесное), а x-server - это типа платформа для различных графических интерфейсов. Кстати графический интерфейс может работать с иксами по сети на другой машине
32. Роман Сюзёв (syuzyov) 27.05.15 21:21 Сейчас в теме
(29) spezc, Имеет смысл написать в предисловии, что статья для тех, кому нужен индийский вариант: "нет времени объяснять, просто делай как я говорю". Во первых иногда это действительно кому-то нужно, ну и вообще есть ценители такого подхода :)
33. Антон Стеклов (asved.ru) 30 27.05.15 22:42 Сейчас в теме
(29) spezc, А откуда взялась необходимость запускать конфигуратор именно на сервере приложения? Он и удаленно нормально работает, не нагружая при этом сервер необходимостью крутить иксы.
34. Антон Стеклов (asved.ru) 30 27.05.15 22:43 Сейчас в теме
(22) Steelvan,
"Дык! Служу Советскому Союзу!" (анекдот про ворону)
35. Роман Ложкин (webester) 21 28.05.15 03:04 Сейчас в теме
глянул ваш ложек на инфостарте - имхо постеснялись бы вылазить с такими комментариями

Это как раз потому что не хочется плодить статьи такого плана. А так я еще автор некоторых других проектов. Если вам есть, что сказать, по существу на тему моих публикаций на ИС, или по какому либо проекту, я буду рад конструктивным замечаниям в комментариях к этим публикациям\проектам. Так же приглашаю к обсуждению или присоединению к вышеописанным проектам, там еще есть куда идти, что бы сделать этот мир лучше.

эка вас статья то зацепила

Написал развернутый ответ, но потом подумал, что критики уже было больше чем нужно и отредактировал комментарий. Не буду клевать и портить вам настроение. Извините если задел. Хочется видеть грамотные профессиональные статьи, как на хабре, а не плана "ну это тоже может кому нибудь пригодится". Но вы же не обязаны следовать моим пожеланиям.
36. Ildar Gabdrakhmanov (spezc) 253 28.05.15 06:27 Сейчас в теме
(35) в ваших публикациях то и обсуждать особо нечего, а на счет того что постеснялись писать развернутый ответ - это зря, мы жеж все профессионалы, обидки здесь неуместны, и конструктивная критика всегда приветствуется)
37. Роман Ложкин (webester) 21 28.05.15 07:30 Сейчас в теме
(36)
в ваших публикациях то и обсуждать особо нечего

На нет и суда нет :) я сказал, что если считаете, что там что то неправильно, можете там и высказаться, а давать оценку(и самое главное право голоса) по профилю инфостарта глупо с моей точки зрения.
обидки здесь неуместны, и конструктивная критика всегда приветствуется)

Тогда скажу в двух словах, статья\пост\мануал имеет право на жизнь только когда автор разобрался в вопросе на 100%. А то сначала он учит как настраивать операционную систему и приложения под ее управлением, а потом вопрос, почему он делает так, а не так как проще, он говорит: " я нуб в линуксе". Так ты определился бы, учишь как настраивать или ты нуб? Основная мысль была в этом.
38. Ildar Gabdrakhmanov (spezc) 253 28.05.15 08:46 Сейчас в теме
39. Роман Ложкин (webester) 21 28.05.15 09:13 Сейчас в теме
(37)Не сказать, что я напрягаюсь. Ты спросил я ответил.
40. Олег Дмитров (baracuda) 2 01.06.15 10:40 Сейчас в теме
(38) spezc, а как вы ставили конфигурацию на сервер?? Через dt??
Иначе никак?
41. Ildar Gabdrakhmanov (spezc) 253 01.06.15 10:44 Сейчас в теме
(40) можно развернуть шаблоны на windows-машине, и папку с шаблонами закинуть на линукс сервер. тоже самое с конфигурацией - через *.dt
42. Анаит Бадалян (LaNaite) 204 02.05.16 19:09 Сейчас в теме
Спасибо за статью, автор!
Это получается, можно и на raspberry pi развернуть? Надо попробовать.
43. Sergey Andreev (starik-2005) 803 02.05.16 23:01 Сейчас в теме
(42) LaNaite, вряд ли, ибо там архитектура ARM (или как ее там), а под нее у 1С нет пакетов.