Перед установкой 1С под PostgreSQL первым делом необходимо убедится, что в Ubuntu установлена русская локаль и если нет, то установить ее.
Далее устанавливаем необходимые пакеты:
# apt-get install libssl0.9.8 libossp-uuid16 libxslt1.1 libicu52 libt1-5 t1utils imagemagick ttf-mscorefonts-installer unixodbc texlive-base libgfs-1.3-2 ssl-cert
Ищем в интернете пропатченный для 1C дистрибутив PostgreSQL 9.3.4. Их там ходит несколько. Если не удасться найти, можете скачать дистрибутив у нас, подправленный нами — postgres-9.3.4-1.zip. Проверенный множеством установок.
Устанавливаем пакеты именно в такой последовательности, чтобы не было ругани на неразрешенные зависимости:
# dpkg -i libpq5_9.3.4-1.1C_amd64.deb # dpkg -i postgresql-client-common_154.1.1C_all.deb # dpkg -i postgresql-client-9.3_9.3.4-1.1C_amd64.deb # dpkg -i postgresql-common_154.1.1C_all.deb # dpkg -i postgresql-9.3_9.3.4-1.1C_amd64.deb # dpkg -i postgresql-contrib-9.3_9.3.4-1.1C_amd64.deb
Если при установке postgresql-contrib-9.3_9.3.4-1.1C_amd64 будет ругаться на отсутствие пакета libicu48_4.8.1.1-12ubuntu2_amd64.deb, скачиваем его отсюда http://security.ubuntu.com/ubuntu/pool/main/i/icu/libicu48_4.8.1.1-12ubuntu2_amd64.deb и устанавливаем (Если ссылка недоступна, пишите, сбросим ссылку и скачаете у нас.):
# dpkg -i libicu48_4.8.1.1-12ubuntu2_amd64.deb
Наш дистрибутив уже подправлен и не ругается.
Убеждаемся, что сервер запустился:
# service postgresql status
и должны получить:
9.3/main (port 5432): online
Теперь необходимо проинициализировать область хранения баз данных на диске. Обычно это называется — кластер базы данных (database cluster).
Кластер — это набор баз данных, который управляется одним экземпляром запущенного сервера. После инициализации, кластер будет содержать базу с именем postgres, которая является базой данных по умолчанию, которую используют утилиты, пользователи и сторонние приложения. Сам сервер не нуждается в этой базе, но многие внешние приложения подразумевают, что она существует.
Другая база данных, создаваемая на этапе инициализации, называется template1. Она будет использоваться как шаблон для создаваемых баз данных. В терминах файловой системы кластер — это просто директория, в которой хранятся все данные. Расположить её можно в любой директории. Так как длинные пути это не удобно, мы используем папку /srv/1c/db (хотя по стандартам это и не правильно).
Создаем папку и определяем пользователя postgres как ее владельца:
# mkdir -p /srv/1c/db/ # chown postgres:postgres /srv/1c/db
Инициализируем кластер под пользователем posgres и заодно присваиваем ему пароль:
# su postgres /usr/lib/postgresql/9.3/bin/initdb -D /srv/1c/db --locale=ru_RU.UTF-8 psql -U postgres -c "alter user postgres with password 'пароль';"
Теперь пользователь postgres имеет пароль и можно разрешить ему входить в систему с использованием MD5 аутентификации. Для этого в файле /srv/1c/db/pg_hba.conf нужно заменить строки:
# IPv4 local connections: host all all 127.0.0.1/32 ident # IPv6 local connections: host all all ::1/128 ident
на:
# IPv4 local connections: host all all 127.0.0.1/32 md5 # IPv6 local connections: host all all ::1/128 md5
Для проверки перезапустим PostgreSQL:
# service postgresql restart
Теперь можно устанавливать сервер 1С.
Делаем симлинк библиотеки:
ln -s /usr/lib/x86_64-linux-gnu/libMagickWand.so.5 /usr/lib/x86_64-linux-gnu/libMagickWand.so
В новых версиях Ubuntu один необходимый паке ttf2pt1_3.4.4-1.4_amd64.deb отсутствует, так что качаем из архивов — http://old-releases.ubuntu.com/ubuntu/pool/universe/t/ttf2pt1/ttf2pt1_3.4.4-1.4_amd64.deb.
Ставим все необходимые пакеты 1С, которые можно взять или с лазерки дистрибутива или скачать с сайта 1С. Причем делать это лучше в следующей последовательности:
#dpkg -i 1c-enterprise83-common_8.3.5-1517_amd64.deb #dpkg -i 1c-enterprise83-server_8.3.5-1517_amd64.deb #dpkg -i 1c-enterprise83-ws_8.3.5-1517_amd64.deb #dpkg -i 1c-enterprise83-common-nls_8.3.5-1517_amd64.deb #dpkg -i 1c-enterprise83-server-nls_8.3.5-1517_amd64.deb #dpkg -i 1c-enterprise83-ws-nls_8.3.5-1517_amd64.deb #dpkg -i ttf2pt1_3.4.4-1.4_amd64.deb
Делаем пользователя usr1cv8 из группы grp1cv8 владельцем папки /opt/1C:
# chown -R usr1cv8:grp1cv8 /opt/1C
Перезапускаем сервер 1с:
# service srv1cv83 restart
Проверяем, все ли процессы сервера 1С запущены нормально:
#ps aux|grep 1c
usr1cv8 28351 0.0 1.1 264284 22664 ? Ssl 10:01 0:00 /opt/1C/v8.3/x86_64/ragent -daemon usr1cv8 28354 0.3 2.0 776216 41956 ? Sl 10:01 0:00 /opt/1C/v8.3/x86_64/rmngr -port 1541 -host test -range 1560:1591 usr1cv8 28378 0.1 1.6 323900 34076 ? Sl 10:01 0:00 /opt/1C/v8.3/x86_64/rphost -range 1560:1591 -reghost test -regport 1541 -pid f10fbd88-c9eb-11e3-0599-40618600e473 root 28439 0.0 0.0 13472 892 pts/2 S+ 10:03 0:00 grep --color=auto 1c
На этом установка закончена. Настоятельно рекомендуем перегрузить компьютер и создавать базы данных 1С.