Установка 1с 8.3 сервер ubuntu server 16. Обновляем убунту командой

Целью этой работы является обобщение методов установки и настройки 32- и 64-битного 1С Сервера 8.3.7, а также сервера базы данных PostgreSQL 9.4.x, на 64-битный Ubuntu Server 14.04.

Установка 32-битного 1С Сервера на 64-битный Ubuntu 14.04 - задача далеко не тривиальная из-за различия в архитектурах пакетов и требует для своего решения нестандартных подходов. Кроме этого, затронута тема установки Apache 2.2 на Ubuntu Server 14.04 вместо Apache 2.4, что также является непростой задачей. Необходимость наличия Apache 2.2 связана с тем, что версии платформы 1С 8.3.7 в режиме веб-клиента работают только с версией Apache 2.2, но не 2.4, входящей в стандартную конфигурацию Ubuntu 14.04.

Таким образом, приведенная статья должна позволить использовать на Ubuntu Server 14.04 x64 32- и 64-битный 1С Сервер 8.3.7 с веб-клиентом.

В статье использованы материалы статей об установке 1С Сервера и PostgreSQL .

Итак, начнем.

Установите Ubuntu Server 14.04 x64 с поддержкой OpenSSH и все дальнейшие действия будем производить через SSH-консоль.

1. Установка PostgreSQL 9.4.x.

Устанавливаем необходимые локали и определяем локаль по-умолчанию (она должна совпадать с языком базы данных, которая будет создаваться при создании информационной базы на 1С Сервере. При не совпадении языков в процессе создания информационной базы будет выдаваться ошибка):

sudo locale-gen en_US
(создаем локаль английского языка)
sudo locale-gen ru_RU
(создаем локаль русского языка)
sudo update-locale LANG=ru_RU.UTF8
(по-умолчанию устанавливаем локаль русского языка)
sudo dpkg-reconfigure locales
(переконфигурируем локали)

Устанавливаем необходимые пакеты:

sudo apt-get install libxslt1.1 ssl-cert

Установка PostgreSQL 9.4.2-1.1C:

Скачиваем необходимую версию библиотеки libicu (например, в каталог /tmp) и устанавливаем ее:

cd /tmp
wget http://security.ubuntu.com/ubuntu/pool/main/i/icu/libicu48_4.8.1.1-3ubuntu0.6_amd64.deb
sudo dpkg -i libicu48_4.8.1.1-3ubuntu0.6_amd64.deb

Скачиваем с сайта 1С все необходимые deb-файлы в каталог /tmp и устанавливаем их именно в такой последовательности:

cd /tmp
sudo dpkg -i libpq5_9.4.2-1.1C_amd64.deb
sudo dpkg -i postgresql-client-common_154.1.1C_all.deb
sudo dpkg -i postgresql-common_154.1.1C_all.deb
sudo dpkg -i postgresql-client-9.4_9.4.2-1.1C_amd64.deb
sudo dpkg -i postgresql-9.4_9.4.2-1.1C_amd64.deb
sudo dpkg -i postgresql-contrib-9.4_9.4.2-1.1C_amd64.deb

Установка PostgreSQL 9.4.x (на момент написания статьи 9.4.6) с сайта авторов сборки PostgreSQL для 1С (большое спасибо за ссылку):

Добавляем репозиторий 1c.postgrespro.ru:

sudo sh -c "echo "deb http://1c.postgrespro.ru/deb/ $(lsb_release -cs) main" > /etc/apt/sources.list.d/postgrespro-1c.list"

Импортируем ключ репозитория и обновляем список пакетов:

wget --quiet -O - http://1c.postgrespro.ru/keys/GPG-KEY-POSTGRESPRO-1C-92 | sudo apt-key add - && sudo apt-get update

Устанавливаем PostgreSQL:

sudo apt-get install postgresql-pro-1c-9.4

После установки любым из двух вариантов от имени суперпользователя в файле /etc/postgresql/9.4/main/pg_hba.conf строку для соединения через Unix-сокет

local all postgres peer
для пользователя postgres приводим к виду:
local all postgres trust

Для бОльшей безопасности от имени суперпользователя в файле /etc/postgresql/9.4/main/postgresql.conf строку
listen_addresses = "*"
приводим к виду:
listen_addresses = "localhost"

Это ограничит доступ к серверу базы данных PostgreSQL только внутри машины, на которой он установлен. Данное ограничение можно реальзовать только в случае, когда 1С Сервер и PostgreSQL установлены на одной машине. Если указанные сервера расположены на разных машинах, то необходимо оставить опцию listen_addresses = "*" или вместо "*" указать IP-адрес машины, на которой установлен 1С Сервер.

Изменяем пароль суперпользователя postgres:

psql -U postgres -d template1 -c "ALTER USER postgres PASSWORD "password""

От имени суперпользователя в файле /etc/postgresql/9.4/main/pg_hba.conf все методы аутентификации устанавливаем в значение md5, например:
local all postgres md5

Перезапускаем сервис PostgreSQL:

sudo service postgresql restart

ДОПОЛНЕНИЕ:

*Если забыли или не правильно установили локаль по-умолчанию перед установкой PostgreSQL или хотите изменить каталог размещения кластера базы данных:

После установки PostgreSQL кластер базы данных размещается в каталоге, который можно найти в файле /etc/postgresql/9.4/main/postgresql.conf в строке data_directory (обычно это /var/lib/postgresql/9.4/main). Если необходимо кластер базы данных разместить в другом каталоге, например в /var/lib/pgsql, то можно сделать следующее:

Создать дампы всех необходимых баз данных

Остановить сервис PostgreSQL:

sudo service postgresql stop

Удалить текущий каталог кластера базы данных:

sudo rm -rf /var/lib/postgresql

Установить пароль для UNIX-пользователя postgres:

sudo passwd postgres

Создать новый каталог кластера базы данных:

sudo mkdir /var/lib/pgsql

Установить UNIX-пользователя postgres владельцем каталога /var/lib/pgsql:

sudo chown -R postgres:postgres /var/lib/pgsql

От имени UNIX-пользователя postgres инициализировать кластер базы данных с новым каталогом и новой локалью:

su postgres -c "/usr/lib/postgresql/9.4/bin/initdb -D /var/lib/pgsql --locale=ru_RU.UTF-8"

От имени суперпользователя в файле /etc/postgresql/9.4/main/postgresql.conf изменить значение каталога кластера базы данных на новое размещение, т.е. в приведенном примере строку data_directory = "/var/lib/postgresql/9.4/main"
нужно привести к виду
data_directory = "/var/lib/pgsql"
и сохранить файл

Запустить сервис PostgreSQL:

sudo service postgresql start

Восстановить необходимые базы данных из дампов

*Если PostgreSQL переустанавливался после того, как был установлен 1С Сервер, и невозможно подключить клиент к инфобазе:

Перезапустите сервис PostgreSQL:

sudo service postgresql restart

Перезапустите сервис 1С Сервера:

sudo service srv1cv83 restart

Перезагрузите весь сервер с Ubuntu:

sudo reboot

2. Установка Timezone и синхронизация времени (опционально).

При необходимости установить Timezone и синхронизировать время операционной системы, необходимо выполнить следующие действия:

Сконфигурировать часовой пояс:

sudo dpkg-reconfigure tzdata
и выбрать необходимый часовой пояс

Установить ntp-протокол и произвести синхронизацию времени:

sudo apt-get install ntp
sudo service ntp stop
sudo ntpdate -s time.nist.gov
sudo service ntp start

3. Установка 64-битного 1С Сервера 8.3.7.

Устанавливаем необходимые зависимости:

sudo apt-get install imagemagick
sudo apt-get install unixodbc


sudo apt-get install libgsf-1-114

Скачиваем с сайта 1С все необходимые deb-файлы в каталог /tmp и устанавливаем их (логичной выглядит следующая последовательность установки):

cd /tmp
sudo dpkg -i 1c-enterprise83-common_8.3.7-1970_amd64.deb
(обязательно)
sudo dpkg -i 1c-enterprise83-common-nls_8.3.7-1970_amd64.deb
sudo dpkg -i 1c-enterprise83-server_8.3.7-1970_amd64.deb
(обязательно)
sudo dpkg -i 1c-enterprise83-server-nls_8.3.7-1970_amd64.deb
(опционально для поддержки дополнительных языков)
sudo dpkg -i 1c-enterprise83-ws_8.3.7-1970_amd64.deb
sudo dpkg -i 1c-enterprise83-ws-nls_8.3.7-1970_amd64.deb
(опционально для поддержки дополнительных языков)

Запускаем 1С Сервер:

sudo service srv1cv83 start

4. Установка 32-битного 1С Сервера 8.3.7.

Включаем поддержку архитектуры i386 и обновляем список пакетов:

sudo dpkg --add-architecture i386
sudo apt-get update

Устанавливаем необходимые зависимости в архитектуре i386:

sudo apt-get install imagemagick:i386
sudo apt-get install unixodbc:i386
sudo apt-get install ttf-mscorefonts-installer
(в процессе установки необходимо принять условия лицензионного соглашения)

Версия i386 библиотеки libgsf-1-114 отсутствует в репозитории Ubuntu, однако имеется в репозитории Debian. Поэтому нам придется скачать эту библиотеку из репозитория Debian. Скачиваем версию i386 библиотеки libgsf-1-114 (например, в каталог /tmp) и устанавливаем ее именно в такой последовательности:

cd /tmp
wget http://ftp.us.debian.org/debian/pool/main/libg/libgsf/libgsf-1-common_1.14.36-1_all.deb
wget http://ftp.us.debian.org/debian/pool/main/libg/libgsf/libgsf-1-114_1.14.36-1_i386.deb
sudo dpkg -i libgsf-1-common_1.14.36-1_all.deb
sudo dpkg -i libgsf-1-114_1.14.36-1_i386.deb

Скачиваем с сайта 1С все необходимые deb-файлы в каталог /tmp и устанавливаем их (логичной выглядит следующая последовательность установки) :

cd /tmp
sudo dpkg -i 1c-enterprise83-common_8.3.7-1970_i386.deb
(обязательно)
sudo dpkg -i 1c-enterprise83-common-nls_8.3.7-1970_i386.deb
(опционально для поддержки дополнительных языков)
sudo dpkg -i 1c-enterprise83-server_8.3.7-1970_i386.deb
(обязательно)
sudo dpkg -i 1c-enterprise83-server-nls_8.3.7-1970_i386.deb
(опционально для поддержки дополнительных языков)
sudo dpkg -i 1c-enterprise83-ws_8.3.7-1970_i386.deb
(опционально для работы веб-клиента)
sudo dpkg -i 1c-enterprise83-ws-nls_8.3.7-1970_i386.deb
(опционально для поддержки дополнительных языков)
sudo dpkg -i 1c-enterprise83-crs_8.3.7-1970_i386.deb
(опционально для функционирования хранилища конфигураций)

Изменяем владельца каталога /opt/1C:

sudo chown -R usr1cv8:grp1cv8 /opt/1C

Запускаем 1С Сервер:

sudo service srv1cv83 start

5. Установка Apache 2.2 (опционально, большое спасибо за рекомендацию).

От имени суперпользователя добавим в список следующие репозитории:

- переключаемся в консоль суперпользователя:

- добавляем репозитории:

cat <> /etc/apt/sources.list
deb http://archive.ubuntu.com/ubuntu precise main restricted universe
deb http://archive.ubuntu.com/ubuntu precise-updates main restricted universe
deb http://security.ubuntu.com/ubuntu precise-security main restricted universe multiverse
EOF

Редактируем или создаем файл /etc/apt/preferences.d/preferences, добавляя в него следующие строки:

Package: apache2*
Pin: release n=precise
Pin-Priority: 900

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

exit

- обновляем список пакетов:

sudo apt-get update

- устанавливаем Apache 2.2:

sudo apt-get install apache2

- проверяем версию установленного Apache:

apache2 -v

6. Настройка файрвола UFW (опционально).

Для обеспеспечения бОльшей безопасности желательно настроить и включить файрвол UFW. Для этого необходимо выполнить следующие дествия:

sudo ufw allow ssh
или
sudo ufw allow 22
(если для протокола SSH используется порт 22)

sudo ufw allow 80
(для доступа по HTTP-протоколу)

sudo ufw allow 443
(для доступа по HTTPS-протоколу)

sudo ufw allow 1540
sudo ufw allow 1541
sudo ufw allow 1560:1591/tcp
(для работы 1С Сервера, если кластер серверов установлен со стандартными значениями портов)

sudo ufw enable
(включаем файрвол)

7. Установка OpenJDK 1.8 (опционально).

При необходимости запуска java-приложений (в том числе из 1С), можно установить OpenJDK 1.8 следующим образом:

Добавляем ppa-репозиторий и обновляем список пакетов:

sudo add-apt-repository ppa:openjdk-r/ppa
sudo apt-get update

Устанавливаем OpenJDK:

sudo apt-get install openjdk-8-jdk
(для установки JDK)
или
sudo apt-get install openjdk-8-jre
(для установки только JRE)

Актуализируем Java-машину (если ранее уже была установлена младшая версия Java):

sudo update-alternatives --config java

Актуализируем Java-компилятор (если ранее уже была установлена младшая версия Java):

sudo update-alternatives --config javac

Проверяем установленную версию Java:

java -version

8. Включение режима отладки 1С Сервера (опционально).

Останавливаем сервис 1С Сервера:

sudo service srv1cv83 stop

От имени суперпользователя редактируем файл /etc/init.d/srv1cv83, а именно - находим следующую строку:

#SRV1CV8_DEBUG=

раскомментируем ее и присвоим значение 1 так, чтобы получилась следующая строка:

SRV1CV8_DEBUG=1

сохраняем файл /etc/init.d/srv1cv83 и запускаем сервис 1С Сервера:

sudo service srv1cv83 start

На клиентской машине в меню конфигурации "Параметры" -> "Запуск 1С:Предприятия" -> "Дополнительные" включаем следующие пункуты:

"Устанавливать режим разрешения отладки"

"Начинать отладку при запуске"

9. Параметры для создания информационной базы на сервере и подключения к ней.

От имени суперпользователя необходимо отредактировать файл /etc/hosts таким образом, чтобы в нем была строка:

IP адрес машины, на которой установлен 1С Сервер hostname -f hostname, например:

(промежутки должны быть пробелами, а не табами)

На клиентской WINDOWS-машине от имени администратора в файл C:\Windows\System32\drivers\etc\hosts необходимо д обавить строку, указанную выше, например:
192.168.0.111 test.example.com test

При создании информационной базы в консоли Администрирования 1С Серверов в качестве сервера базы данных желательно указывать localhost (допустимо указывать hostname машины, на которой запущен PostgreSQL и 1С Сервер, и который прописан в файле C:\Windows\System32\drivers\etc\hosts ). Данная рекомендация действительна только для случая, когда 1С Сервер и PostgreSQL находятся на одной машине. В противном случае вместо localhost необходимо указывать hostname машины, на которой установлен PostgreSQL.

При подключении к созданной информационной базе в качестве кластера серверов желательно указывать hostname машины, на которой запущен 1С Сервер и который прописан в файле C:\Windows\System32\drivers\etc\hosts (для Windows-клиентской машины), а в качестве информационной базы в кластере - имя информационной базы, указанное при ее создании. Если кластер серверов запущен на не стандартных портах, то в качестве кластера серверов указать hostname:port, например srv1c:1741.

Проверяем состояние сервисов на Ubuntu-сервере:

service postgresql status

Если все ОК, то статус должен быть "online".

service srv1cv83 status

Если все ОК, то должны быть следующие статусы:

Init script: STARTED

Ragent RUNNING

При необходимости проверяем статус файрвола:

service ufw status

Если файрфол запущен, то статус должен быть "start/running".

На этом установку и настройку 1С Сервера + PostgreSQL + Ubuntu 14.04 завершаем.

В этой статье я попробую рассказать об установке сервера 1С и сервера PostgreSQL на операционной системе Ubuntu 16.04/18.04. В статье используется версия сервера 1С - 8.3.13.1472 и версия PostgreSQL - 10.3-2.1C. Кроме этого в статье приведена информации о некоторых дополнительных настройках.

Установка PostgreSQL

В начале нужно установить необходимые локали и определить локаль по умолчанию. Локали определяют используемые в системе языки, а также всякие региональные особенности - форматы чисел, даты и времени, денежные знаки и прочее. Локаль по умолчанию должна совпадать с языком базы данных, которая будет создана сервером 1С при создании информационной базы.

sudo dpkg-reconfigure locales


sudo apt-get install libicu55

wget http://security.ubuntu.com/ubuntu/pool/main/i/icu/libicu55_55.1-7ubuntu0.4_amd64.deb

sudo dpkg -i libicu55_55.1-7ubuntu0.4_amd64.deb

Раньше пакет «postgresql-common» входил в состав дистрибутива который размещался на сайте «1С», теперь же (начиная с PostgreSQL 9.6.3-1.1C) этот пакет нужно устанавливать из стандартных репозиториев.

Тут возникает небольшое затруднение, связанное с тем, что мы устанавливаем PostgreSQL 10: на момент написания статьи стандартный репозиторий содержит неподходящую для PostgreSQL 10 версию пакета «postgresql-common».

Чтобы исправить это нужно создать файл /etc/apt/sources.list.d/pgdg.list и записать в него строку, для Ubuntu 16.04:

deb http://apt.postgresql.org/pub/repos/apt/ xenial-pgdg main

для Ubuntu 18.04:

deb http://apt.postgresql.org/pub/repos/apt/ bionic-pgdg main

Затем нужно выполнить следующие команды:

wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -

sudo apt-get update

После этого можно установить нужную нам версию пакета «postgresql-common»:

sudo apt-get install postgresql-common

Подготовительные работы закончены, скачиваем дистрибутив PostgreSQL 10 с сайта «1С», распаковываем его (там всего три пакета) и устанавливаем именно в таком порядке:

sudo dpkg -i libpq5_10.3-2.1C_amd64.deb

sudo dpkg -i postgresql-client-10_10.3-2.1C_amd64.deb

sudo dpkg -i postgresql-10_10.3-2.1C_amd64.deb

Если все прошло нормально, то выглядеть это будет приблизительно так:


Настройка PostgreSQL

После установки можно сделать некоторые настройки PostgreSQL.

От имени суперпользователя открываем файл /etc/postgresql/10/main/pg_hba.conf и меняем в нем строку:

local all postgres peer

local all postgres trust

Это позволит войти под пользователем postgres без пароля.

Кроме этого можно открыть файл /etc/postgresql/10/main/postgresql.conf (тоже от имени супер пользователя) и поменять в нем строку:

listen_addresses = "*"

listen_addresses = "localhost"

Это ограничит подключения к PostgreSQL локальной машиной. Таким образом, если сервер 1С и PostgreSQL находятся на разных компьютерах, то это либо вообще не нужно делать, либо вместо «*» нужно указать IP-адрес сервера 1С.

После всех этих манипуляций перезапускаем сервер PostgreSQL:

Теперь у нас есть возможность поменять пароль суперпользователя postgres :

psql -U postgres -d template1 -c "ALTER USER postgres PASSWORD "password""

Отключаем безпарольный доступ: вновь от имени суперпользователя открываем файл /etc/postgresql/10/main/pg_hba.conf и меняем в нем строку:

local all postgres trust

local all postgres md5

В заключении еще раз перезапускаем сервер:

sudo service postgresql restart

Установка сервера 1С

Начать, как обычно, нужно с установки дополнительных библиотек:

sudo apt-get install imagemagick

sudo apt-get install unixodbc

sudo apt-get install ttf-mscorefonts-installer

sudo apt-get install libgsf-1-114

Для версии 8.3.13 и выше используется библиотека ImageMagick входящая в состав дистрибутива, так что устанавливать пакет imagemagick не обязательно (хотя вреда от этого не будет).

Пакет ttf-mscorefonts-installer в процессе установки попросит принять лицензионное соглашение:


На момент написания статьи в репозиториях Ubuntu 18.04 не было актуальных версий требуемых пакетов. Если в настоящее время их все еще нет, то можно попробовать добавить репозитории с неактуальными версиями пакетов. Создаем файл /etc/apt/sources.list.d/raring.list и записываем в него следующие строки:

deb http://old-releases.ubuntu.com/ubuntu/ raring main restricted universe multiverse
deb-src http://old-releases.ubuntu.com/ubuntu/ raring main restricted universe multiverse
deb http://old-releases.ubuntu.com/ubuntu/ raring-updates main restricted universe multiverse
deb-src http://old-releases.ubuntu.com/ubuntu/ raring-updates main restricted universe multiverse
deb http://old-releases.ubuntu.com/ubuntu/ raring-backports main restricted universe multiverse
deb-src http://old-releases.ubuntu.com/ubuntu/ raring-backports main restricted universe multiverse
deb http://old-releases.ubuntu.com/ubuntu/ raring-proposed main restricted universe multiverse
deb-src http://old-releases.ubuntu.com/ubuntu/ raring-proposed main restricted universe multiverse

После этого выполнить команду:

sudo apt-get update

После установки дополнительных библиотек скачиваем с сайта 1С все необходимые файлы (Cервер 1С:Предприятия (64-bit) для DEB-based Linux-систем) и устанавливаем их в таком порядке:

sudo dpkg -i 1c-enterprise83-common_8.3.13-1472_amd64.deb

sudo dpkg -i 1c-enterprise83-common-nls_8.3.13-1472_amd64.deb

sudo dpkg -i 1c-enterprise83-server_8.3.13-1472_amd64.deb

sudo dpkg -i 1c-enterprise83-server-nls_8.3.13-1472_amd64.deb

sudo dpkg -i 1c-enterprise83-ws_8.3.13-1472_amd64.deb

sudo dpkg -i 1c-enterprise83-ws-nls_8.3.13-1472_amd64.deb

Пакеты с приставкой «-nls» нужны для поддержки дополнительных языков и не являются обязательными к установке. Пакеты с приставкой «-ws» нужны для работы веб-клиента и также не являются необходимыми.

Теперь изменим владельца каталога /opt/1C:

sudo chown -R usr1cv8:grp1cv8 /opt/1C

И запустим сервер 1С:

sudo service srv1cv83 start


Если у Вас правильно настроена сеть и компьютеры видят друг друга, то ничего больше делать не нужно. Если же нет, то необходимо сделать так, что бы сервер 1С видел сервер PostgreSQL, а клиентские машины видели сервер 1С. Для этого в файлы /etc/hosts или C:\Windows\System32\drivers\etc\hosts нужно добавить строки:

<результат команды hostname -f> <результат команды hostname>

В качестве разделителей должны быть пробелы, а не табуляции.

Дополнительные настройки

Все приведенные ниже действия не являются обязательными.

Установка Apache

Начиная с версии 8.3.8 платформа 1С поддерживает Apache 2.4, поэтому можно просто установить текущую версию:

sudo apt-get install apache2

Если по каким-то причинам Вам требуется Apache 2.2 то для начала нужно добавить репозитории с неактуальными версиями пакетов, как описано выше (если, конечно, Вы уже этого не сделали). Затем выполнить команду:

sudo apt-cache showpkg apache2

Команды выдаст список версий доступных к установке, затем, выбрав нужную версию сделать так:

sudo apt-get install apache2=<номер версии>

Например:

sudo apt-get install apache2=2.2.22-6ubuntu5.1

Проверить версию Apache можно так:

Включение отладки на сервере

Останавливаем сервер:

sudo service srv1cv83 stop

В файле /etc/init.d/srv1cv83 находим строку:

Приводим ее к виду:

Запускаем сервер:

sudo service srv1cv83 start

В конфигураторе на клиентской машине идем в «Параметры» -> «Запуск 1С:Предприятия» -> «Дополнительные» и включаем два пункта:

  • «Устанавливать режим разрешения отладки»
  • «Начинать отладку при запуске»

Настройка UFW

UFW - это простая утилита для конфигурирования файрвола Netfilter.

Как известно 4 июля фирма 1С выпустила новую платформу версии 8.3. Помимо исправления ошибок и добавления новых возможностей данный релиз платформы принес также давно ожидаемую возможность - нативая работа в среде Linux.

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

Я постараюсь как можно более подробно описать процесс установки данной платформы на наиболее популярный дистрибутив - Ubuntu 12.04.

Итак первый шаг - скачивание самой платформы с сайта 1С. Дистрибутив находится по адресу . Из всего списка Вам требуется скачать 2 пакета (у нас 64 битный дистрибутив) :

В случае если у вас дистрибутив 32 бита, то и скачать потребуется 32 битные пакеты. Заметим, что для скачивания вышеприведенных ссылок необходима действующая подписка на ИТС. Также вероятно эти пакеты будут доступны на дисках ИТС (хотя не факт, так как релиз носит ознакомительный характер).

Итак скачиваете два пакета в папку Загрузка (вообще скачать можете в любую папку в домашнем каталоге). Далее заходите в эту папку файловым менеджером Nautilus, щелкаете правой клавишей на файле client.deb64.tar.gz и выбираете пункт контекстного меню «Извлечь сюда». Тоже самое проделываете с файлом deb64.tar.gz.

В итоге в папке со скачанными файлами появятся 2 папки - client.deb64 и deb64. Вот тут для новичков наступает более трудный этап, так как самый простой способ установить программы - это воспользоваться Терминалом (консоль). Для этого вызовите программу Терминал. Самый простой путь вызвать меню Dash (верхняя левая кнопка Unity аналог кнопки Пуск в Windows) и в строке поиска наберите пару первых букв программы Тер или полностью слово Терминал.

Запустите терминал. В дальнейшем можете просто копировать команды из этого текста в Терминал. Первым делом перейдите в папку распакованных пакетов в терминале (напомню у нас это папка Загрузки. Очень удобной возможностью сокращающей ввод в любом терминале Linux является клавиша Tab. Нажимая ее вы дополняете команду. Linux сама подсказывает вам варианты):

cd Загрузки/deb64/ (нажмите Enter)

Этой командой мы перешли в каталог deb64. Далее в терминале введите команду установки всех пакетов из этой папки:

sudo dpkg -i 1c-* и нажмите клавишу Enter

Консоль запросит у вас пароль и после того, как вы его введете установит пакеты 1С в папку /opt/1 °C/v8.3/x86_64/ (последняя папка в случае установки 32 битной версии будет другая). Далее вы должны войти в папку /home/leo/Загрузки/client.deb64 для этого наберите:

cd. (Enter)

cd Загрузки/ client.deb64 (Enter)

Здесь также выполните команду sudo dpkg -i 1c-* и введите пароль (впрочем консоль пару минут будет помнить ранее введенный пароль и возможно снова вводить вам его не потребуется).

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

этого данный скрипт просит установить каталог шрифтов требуемых для работы 1С.

sudo /opt/1 °C/v8.3/x86_64/utils/config_system /usr/share/fonts/

У меня запуск этой команды ругнулся на отстуствие двух пакетов:

Please install following package: libgsf

Please install following package: UnixODBC

Для того, чтобы их инсталлировать введите команды:

sudo apt-get install libgsf-bin

sudo apt-get install unixodbc-bin

Однако это еще не все. При новом запуске проверочного скрипта он выдал сообщение:

No truetype conversion utility found!

Please install ttf2afm or ttf2pt1!

Поиск в каталоге Ubuntu не дал результата, однако в интернете я нашел требуемый пакет, скачал в папку Загрузки, нажал правой клавишей на нем и выбрал пункт меню «Открыть в Центр приложений Ubuntu». Далее в Центре приложений выбрал пункт «Установить».

Этот пакет вы можете найти по наименованию:

Ну вот и все. Осталось только установить ключ. Версия для Linux работает как с аппаратной защитой, так и с программной. У меня куплена программная защита, однако инсталляцию программной лицензии мы разберем в следующей статье.

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

В последние годы интерес к альтернативным ОС, прежде всего Linux, возрастает, причем не только со стороны пользователей, но и со стороны разработчиков. Фирма 1С достаточно давно развивает свою платформу для использования в среде Linux, а теперь к ней стали подтягиваться производители торгового оборудования, выпуская драйвера и для этой ОС. Поэтому использование Linux в качестве платформы для рабочего места выглядит все более привлекательно и сегодня мы обобщим свой опыт и расскажем об установке клиентской части 1С:Предприятие в среде современных выпусков Debian / Ubuntu.

Так как в требованиях к актуальным релизам 1С:Бухгалтерия значится минимальный релиз платформы 8.3.12.1529, то мы будем устанавливать последнюю версию платформы 8.3.12 - 8.3.12.1685 , а затем обновим ее до 8.3.13.1513 , тем не менее все сказанное будет актуально для всех текущих версий платформы 8.3.

Для установки мы будем использовать следующие версии операционных систем и рабочих окружений: Debian 9.5 (Gnome 3), Ubuntu 16.04.5 LTS (Unity) и Xubuntu 18.04.1 LTS (XFCE 4). Мы специально выбрали разные рабочие среды, чтобы оценить их влияние на процесс установки, но скажем сразу, особого влияния выбранная рабочая среда не имеет, за исключением предустановленного набора пакетов, поэтому мы постараемся дать максимально развернутую инструкцию, которая во многих случаях окажется избыточной.

Также данная статья будет актуальна для всех дистрибутивов производных от Debian / Ubuntu с поправкой на версии пакетов, для этого обратитесь к документации вашего дистрибутива.

Платформа 8.3.12 и более ранние

Прежде всего установим все необходимые зависимости. В различных версиях ОС и рабочего окружения разный набор установленных по умолчанию пакетов, поэтому мы дадим универсальный вариант, и, если вы увидите сообщение типа:

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

Если вы используете Debian , то мы рекомендуем подключить все репозитории, для этого откройте /etc/apt/sources.list и добавьте после main в каждую строку contrib и non-free .

Затем обновим список пакетов:

Apt update

и установим:

Apt install libwebkitgtk-3.0-0
apt install ttf-mscorefonts-installer
apt install libfontconfig1
apt install libgsf-1-114
apt install libglib2.0-0
apt install libodbc1

Часть пакетов у вас уже может быть установлена, это нормально, мы специально пошли по пути избыточности, ради универсальности данного материала.

Следующий пакет должен быть установлен по умолчанию, но на всякий случай следует проверить.

Для Ubuntu 16.04 :

Apt install libmagickwand-6.q16-2

Для Debian 9 и Ubuntu 18.04 :

Apt install libmagickwand-6.q16-3

Для установки клиентской версии платформы вам потребуется скачать с сайта 1С два архива: Клиент 1С:Предприятия для DEB-based Linux-систем и Cервер 1С:Предприятия для DEB-based Linux-систем . Обратите внимание, что разрядность скачиваемых архивов должна соответствовать разрядности системы, мы не видим особой необходимости в использовании x32 (i386) систем, поэтому в дальнейшем, если это не оговорено особо, все действия будут производиться для платформы x64 (amd64).

Коротко разберем состав архивов, в поставку клиента входят пакеты:

  • client - клиентские приложения (толстый клиент и тонкий клиент) «1С:Предприятия»
  • thin-client - тонкий клиент «1С:Предприятия» (не поддерживается работа с файловым вариантом информационной базы)

В состав сервера:

  • common - общие компоненты «1С:Предприятия»
  • server - компоненты сервера «1С:Предприятия»
  • ws - адаптер для публикации Web-сервисов «1С:Предприятия» на веб-сервере на основе Apache HTTP Server 2.0, 2.2 или 2.4

Также в поставке присутствуют пакеты с суффиксами -nls , они содержат языковые ресурсы, кроме русского и английского языков, поэтому если они вам не нужны, то их установка необязательна, в нашем примере мы их установим (исходя из принципа разумной избыточности, так как наш блог читают не только в России).

Создайте отдельную папку и скопируйте туда пакеты client из поставки Клиента и пакеты common и server из поставки Сервера, в итоге, с -nls , у вас должно оказаться шесть пакетов:


Теперь откроем консоль и перейдем в папку с пакетами, проще всего это сделать, щелкнув в ней правой кнопкой мыши и выбрать Открыть в терминале :


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

dpkg -i 1c*.deb

Затем находим значок 1С в меню и запускаем приложение, все должно работать.


Для завершения процесса отключим автозапуск службы сервера 1С, которая для работы клиента не нужна, это необязательно, но желательно по соображениям экономии ресурсов и безопасности, для этого выполним:

Systemctl disable srv1cv83

Как видим, ничего сложного в установке клиентской платформы 1С:Предприятие на Linux нет. Достаточно придерживаться инструкции и установить все необходимые зависимости.

Платформа 8.3.13 и ошибка с libpng12

При установке или обновлении до платформы 8.3.13, актуальный релиз на сегодня - 8.3.13.1513, вы можете столкнуться с ситуацией, когда 1С отказывается запускаться, эта ошибка проявляется в Debian 9 и Ubuntu 18.04 .

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

После чего все становится на свои места. В новых дистрибутивах библиотеку libpng12 заменила libpng16 , но 1С продолжает искать старую библиотеку (причем только последний релиз 8.3.13), оставим это на совести разработчиков 1С.

Что делать? Скачать нужный пакет из репозитория Debian 8 или Ubuntu 16.04 . Непосредственно на системе это можно сделать командой (для x64 систем):

Wget http://ftp.ru.debian.org/debian/pool/main/libp/libpng/libpng12-0_1.2.50-2+deb8u3_amd64.deb

Для 32-х битных систем аналогичная команда будет:

Wget http://ftp.ru.debian.org/debian/pool/main/libp/libpng/libpng12-0_1.2.50-2+deb8u3_i386.deb

Затем установим пакет:

Dpkg -i libpng12-0_1.2.50-2+deb8u3_amd64.deb

или для 32-х бит:

Dpkg -i libpng12-0_1.2.50-2+deb8u3_i386.deb

После чего 1С снова начнет запускаться.

Активация программной лицензии

Основным типом защиты современных конфигураций 1С является программная лицензия, поэтому в данной статье мы не будем касаться HASP-ключей. Как показали отзывы, у многих возникают затруднения в активации программной лицензии на платформе Linux, поэтому коротко коснемся одной особенности.

Если запустить информационную базу в режиме 1С:Предприятия, то получим сообщение о том, что не найдена лицензия, при этом программа даже не предложит ввести лицензию.

Так же во время установки, надо не забыть отметить чекбокс напротив устанавливать ssh-сервер (если нужен) и samba-server (нужен 1С-у) :)

1) Подготовка:

Настроем сеть, будем использовать статическую адресацию:

Sudo vi /etc/network/interfaces

Auto eth0 iface eth0 inet static address 192.168.1.8 netmask 255.255.255.0 broadcast 192.168.1.255 gateway 192.168.1.1 dns-nameservers 192.168.1.4 192.168.1.6

где, auto eth0 — говорит системе, что интерфейс eth0 необходимо включать автоматически при загрузке системы с нижеуказанными параметрами.

iface eth0 inet static — указывает на то, что eth0 использует статический интерфейс. Если используется DHCP-сервер, то пишем вместо static — dhcp.

С 12.04 за конфигурацию DNS отвечает программа resolvconf (вместо файла /etc/resolv.conf ) поэтому, если не используется DHCP-сервер, DNS-сервера для статических интерфейсов необходимо вносить в /etc/network/interfaces используя параметры dns-nameservers, dns-search и dns-domain, соответствующиепараметрам nameserver , search и domain в resolv.conf.

Рестарт службы:

Sudo /etc/init.d/networking restart

Обновляемся:

Sudo apt-get update

Sudo apt-get dist-upgrade

Ставим Midnight Commander (mc)

Sudo apt-get install mc

2. Установка и настройка сервера баз данных PostgreSQL

Для удобства, что бы не набирать каждый раз sudo перейдем в режим рута:

Ставим пакеты необходимые для правильной работы PostgreSQL :

Apt-get install libicu-dev libxslt1.1 libxml2 libossp-uuid16 libreadline5

Качаем последнию стабильную версию PostgreSQL отсюда .

Ставим пакеты командой:

После этого в системе появится пользователь postgres, будет создан скрипт /etc/init.d/postgresql для старта и остановки СУБД.

После, даем права на папку pgsql пользователю и группе postgres:

Chown postgres:postgres /var/lib/pgsql

Задаем пароль пользователю postgres:

Passwd postgres

Редактируем /etc/group, где существующий id группы tape:x:26: меняем на какой-нибудь другой, например 27:). В итоге, должны быть следующие строки:

Postgres:x:26: tape:x:27:

Стартуем сервис командой, указываем значение переменной LANG. Необходимо для первичного создания базы:

LANG=ru_RU.utf-8 service postgresql start

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

SHMMAX — это максимальный размер (в байтах) на сегменте shared memory равный половине всей доступной памяти на сервере.

SHMALL — общее количество разделяемой памяти (в страницах), какое все процессы на сервере могут использовать.

Затем пропишем полученные значения с помощью команды:

Echo "kernel.shmmax = 521981952" >> /etc/sysctl.conf echo "kernel.shmall = 127437" >> /etc/sysctl.conf

Или пропишем в /etc/sysctl.conf вручную. Для того что бы изменения вступили в силу, набираем:

Alter user postgres with password "YOUR_PASSWORD";

Набираем \q что бы выйти из консоли.

Файл /var/lib/pgsql/data/pg_hba.conf приводим к виду:

#IPv4 local connections: host all postgres 0.0.0.0/0 md5

Главный конфиг /var/lib/pgsql/data/postgresql.conf редактируем в соответствии со следующими данными: Усредненная настройка наиболее важных параметров:

Shared_buffers = 1/8 RAM или больше (но не более 1/4) work_mem = в 1/20 RAM maintenance_work_mem = в 1/4 RAM max_fsm_relations = в планируемое кол-во таблиц в базах * 1.5 max_fsm_pages в max_fsm_relations * 2000; fsync = true wal_sync_method = fdatasync commit_delay = от 10 до 100 commit_siblings = от 5 до 10 effective_cache_size = 0.9 от значения cached, которое показывает free random_page_cost = 2 для быстрых cpu, 4 для медленных cpu_tuple_cost = 0.001 для быстрых cpu, 0.01 для медленных cpu_index_tuple_cost = 0.0005 для быстрых cpu, 0.005 для медленных

Для оптимизации настроек рассчитанных на максимальную производительность, можно попробовать воспользоваться утилитой pgtune .

Wget http://pgfoundry.org/frs/download.php/2449/pgtune-0.9.3.tar.gz

Tar xvfz *.tar.gz

Переходим в каталог с pgtune, выполняем команду:

./pgtune −i $PGDATA/postgresql.conf −o $PGDATA/postgresql.conf.pgtune

-i — путь до входного, текущего файла настроек postgresql.conf,

-o — путь до выходного, нового файла настроек postgresql.conf.

В результате выполнения команды получим идентичный исходному файл настроек, за исключением нескольких новых pg_tune-параметров в самом конце файла.

$PGDATA — переменная указывающая на /var/lib/pgsql/data . Если не задана, указать можно в /etc/environment .

Более полную информацию по настройке postgresql.conf смотрим у Etersoft или применительно к 1С на сайте Вечеслава Гилева. Для тех, кто хочет углубится более подробно в процесс изучения PostgreSQL существует замечательный, подробный мануал от Алексея Васильева. :)

Наиболее часто используемые команды Postgresql:

Изменить root-пароль:

ALTER USER postgres WITH PASSWORD ‘newpassword’;

3. Установка 1С Предприятие 8

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

Sudo apt-get install imagemagick libglib2.0-dev libgsf-1-dev texlive-base ttf-mscorefonts-installer libfreetype6 libfreetype6-dev unixodbc unixodbc-dev

Качаем технологическую платформу 1С8.2 для Linux (Debian/Ubuntu) с сайта 1С .

Установку пакетов необходимо производить в следующем порядке, т.к. существуют зависимости.

Если устанавливать всё сразу по маске, могут возникнуть ошибки.

1) 1c-enterprise82-common_8.2.15-319_amd64.deb // общие компоненты сервера
2) 1c-enterprise82-common-nls_8.2.15-319_amd64.deb // национальные ресурсы для общих компонент
3) 1c-enterprise82-server_8.2.15-319_amd64.deb // сервер 1С:предприятие 8.2 для Linux
4) 1c-enterprise82-server-nls_8.2.15-319_amd64.deb // Национальные ресурсы для сервера 1С
5) 1c-enterprise82-ws_8.2.15-319_amd64.deb // адаптер для публикации Web-сервисов 1С:Предприятия 8 на веб-сервере на основе Apache HTTP Server 2.0 или Apache HTTP Server 2.2;
6) 1c-enterprise82-ws-nls_8.2.15-319_amd64.deb // Национальные ресурсы для компонент веб-сервисов 1с8.2

Добавляем в автозагрузку:

Update-rc.d srv1cv82 defaults

Пользователю usr1cv82 разрешаем писать в /opt/1C и /home/usr1cv82

Chown -R usr1cv82:grp1cv82 /opt/1C

Chown -R usr1cv82:grp1cv82 /home/usr1cv82

Перезапускаем сервер. Проверяем корректность старта службы:

Service srv1cv82 status

Должно высветится:

Init script: STARTED Ragent: RUNNING

На файрволе, если используется, для работы сервера 1С должны быть открыты следующие порты: tcp:1540 - агент сервера (ragent) tcp:1541 - главный менеджер кластера (rmngr) tcp:1560-1591 - диапазон сетевых портов для динамического распределения рабочих процессов. (достаточно открыть tcp:1560)

A INPUT -p tcp -m state --state NEW -m tcp --dport 1540 -j ACCEPT -A INPUT -p tcp -m state --state NEW -m tcp --dport 1541 -j ACCEPT -A INPUT -p tcp -m multiport --dports 1560:1591 -j ACCEPT

Проверка работоспособности рабочих процессов сервера:

Netstat -tlnp | grep:15

Должны получить примерно такую картинку:

Tcp 0 0 0.0.0.0:1560 0.0.0.0:* LISTEN 2814/rphost tcp 0 0 0.0.0.0:1540 0.0.0.0:* LISTEN 2799/ragent tcp 0 0 0.0.0.0:1541 0.0.0.0:* LISTEN 2802/rmngr

Но, получаем следующее:

Tcp 0 0 0.0.0.0:1540 0.0.0.0:* LISTEN 960/ragent

Так же просмотреть запущенные процессы можно с помощью команды:

Должны получить примерно следующее:

Usr1cv82 931 0.0 1.8 338376 18612 ? Ssl Jul04 0:41 /opt/1C/v8.2/x86_64/ragent -daemon usr1cv82 935 0.1 3.0 790496 31376 ? Sl Jul04 2:31 /opt/1C/v8.2/x86_64/rmngr -port 1541 -range 1560:1591 usr1cv82 948 0.4 11.5 720804 117412 ? Sl Jul04 6:21 /opt/1C/v8.2/x86_64/rphost -range 1560:1591 -reghost ubuntus12 -re

Но запускается только ragent:

Usr1cv82 931 0.0 1.8 338376 18612 ? Ssl Jul04 0:41 /opt/1C/v8.2/x86_64/ragent -daemon

К сожалению танцы с бубном ни к чему не привели, и права выставлены везде корректно и сеть настроена должны образом. Нагуглил, что с 15 релизом у многих похожие проблемы, а у меня как раз 8.2.15-319. А 318 Помнится работал:) Решил попробовать самый последний на момент написания обзора 8.2.16.362 и о чудо, с первого раза все завелось как надо.

Теперь необходимо проверить корректность установки компонентов, которые мы установили в самом начале с помощью проверяющего скрипта:

/opt/1C/v8.2/x86_64/utils/*config_server

Если, не получаем не каких сообщений, а в директории /opt/1C/v8.2/x86_64/conf/grcmncfg появился файлик type.xml то значит все ок, в моем случае, скрипт выдает кучу ошибок. В первом сообщение говорится, что невозможно получить доступ к какому-то файлу libc.

Cannot access /lib/libc-*.so: No such file or directory Cannot access /lib64/libc-*.so: No such file or directory

Посмотрим, где этот файл на самом деле сидит:

Find / -name "libc-*.so" -print

Получаем следующий выхлоп:

/lib/x86_64-linux-gnu/libc-2.15.so

Неудивительно что скрипт его не находит, делаем поочередно два симлинка:

Ln -s /lib/x86_64-linux-gnu/libc-2.15.so /lib/libc-2.15.so ln -s /lib/x86_64-linux-gnu/libc-2.15.so /lib64/libc-2.15.so

После чего, снова запускаем скрипт. Ошибка с «доступом» исчезает, но остается следующая:

./config_server: line 193: [: too many arguments ./config_server: line 193: [: too many arguments ./config_server: line 193: [: too many arguments ./config_server: line 193: [: too many arguments ./config_server: line 193: [: too many arguments

В 193 строке содержится следующая запись, которая указывает на опрос переменной $SYSTEM_LIB_PATH, где видимо должны содержаться нужные 1су библиотеки.

[ ! -e $aliasFullName ] && return 1

Посмотрим, что конкретно не может обнаружить скрипт, запускаем:

Echo $aliasFullName

Получаем:

Can"t detect SYSTEM_LIB_PATH, please set this environment variable manually!/libWand.so Can"t detect SYSTEM_LIB_PATH, please set this environment variable manually!/libfreetype.so Can"t detect SYSTEM_LIB_PATH, please set this environment variable manually!/libgsf-1.so Can"t detect SYSTEM_LIB_PATH, please set this environment variable manually!/libglib-2.0.so Can"t detect SYSTEM_LIB_PATH, please set this environment variable manually!/libodbc.so

Как я понял, SYSTEM_LIB_PATH должен обнаруживать искомые файлы в трех возможных директориях:

/usr/lib /usr/lib32 /usr/lib64

Так же, необходимо вручную задать SYSTEM_LIB_PATH в /etc/environment. Например пускай ищет библиотеки только в /usr/lib/

SYSTEM_LIB_PATH="/usr/lib"

Перезапускаем сервер, снова запускаем скрипт, получаем следующее:

/usr/lib/libWand.so /usr/lib/libfreetype.so Please install following package: FreeType /usr/lib/libgsf-1.so /usr/lib/libglib-2.0.so Please install following package: libglib /usr/lib/libodbc.so Please install following package: UnixODBC

Файлы libWand.so и libgsf-1.so находятся там где нужно. Остальные файлы libfreetype.so , libglib-2.0.so и libodbc.so находятся в /usr/lib/x86_64-linux-gnu. Соответственно снова делаем смлинки:

Ln -s /usr/lib/x86_64-linux-gnu/libfreetype.so /usr/lib/libfreetype.so ln -s /usr/lib/x86_64-linux-gnu/libglib-2.0.so /usr/lib/libglib-2.0.so ln -s /usr/lib/x86_64-linux-gnu/libodbc.so /usr/lib/libodbc.so

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

/usr/lib/libWand.so /usr/lib/libfreetype.so /usr/lib/libgsf-1.so /usr/lib/libglib-2.0.so /usr/lib/libodbc.so

На клиенте, если Windows, заходим в консоль управления 1CV8 Servers (Администрирование серверов 1С Предприятия). Жмем, добавить Центральный сервер 1С:Преприятия 8.2, добавляем по имени. Во вкладке рабочие серверы должна появится запись. Создаем новую базу, либо прямо с помощью консоли управления, либо в самом клиенте 1С выбираем опцию:

Добавить новую информационную базу.

Запускаем 1С. Тест Гилева выдает 13,05 балов.

По поводу HASP-ключей, если до 12 пользователей то нужен только сетевой ключ с маркировкой типа NETXX ORGL8, где XX - количество клиентских лицензий. Если более 12 пользователей, но необходим так же локальный ключ для сервера. Фиолетовый ключ HASP HL с маркировкой типа ENSR8 для 32x-битного сервера или зеленый ключ HASP HL Max маркировкой ENS8SA для 64-битного. Ключ HASP HL Max поддерживает так же 32-битный сервер.

Для нормальной работы HASP-ключей необходимо установить два пакета включающих драйвер ключа aksusbd и менеджер лицензий hasplm. Имеет смысл ставить модифицированные варианты драйверов от Entersoft . Для нормальной работы haspd, требуются поддержка 32-битных программ.

Поэтому добавляем ее установкой пакета ia32-libs.

Apt-get install ia32-libs

Теперь сам HASP и менеджер лицензий:

Dpkg -i http://download.etersoft.ru/pub/Etersoft/HASP/stable/x86_64/Ubuntu/12.04/

Вставляем ключ, перегружаем сервер. Работоспособность ключей проверяем командой:

Sudo service haspd status

Должны быть запущенны: aksusbd, winehasp, hasplm, hasplmd.

4. Публикация на веб-сервере

Ставим apache:

Apt-get install apache2

Редактируем /etc/apache2/apache2.conf , где задаем директиву ServerName указывающую на имя сервера.

ServerName "ubuntus12"

В противном случае при запуске apach’a получим сообщение:

Httpd: Could not reliably determine the server"s fully qualified domain name, using 127.0.0.1 for ServerName

В корневом каталоге сайта, создаем директорию base, где base — имя базы к которой мы будем предоставлять доступ.

Mkdir /var/www/base

Теперь нам необходимо, запустить специальный скрипт для публикации базы на веб-сервере:

Переходим в /opt/1C/v8.2/x86_64/ Запускаем скрипт со следующими параметрами:

./webinst -apache22 -wsdir base -dir "/var/www/base" -connStr "Srvr="ubuntus12";Ref="base";" -confPath /etc/apache2/httpd.conf

Проверяем корректность внесенных изменений. В /etc/apache2/httpd.conf должны быть следующие строки:

LoadModule _1cws_module "/opt/1C/v8.2/i386/wsap22.so" # 1c publication Alias "base" "/var/www/base/" AllowOverride None Options None Order allow,deny Allow from all SetHandler 1c-application ManagedApplicationDescriptor "/var/www/base/default.vrd"

В /var/www/base/ так же должен появится файл default.vrd две последние строчки которого должны выглядеть примерно так:

Base="/base" ib="Srvr="ubuntus12";Ref="base";

Выдаем права на директорию, перезапускаем Apache:

Chown -R www-data:www-data /var/www/base

Service apache2 restart

Заходим браузером, предварительно отключив всплывающие окна.

Http://ubuntus12/base

И получаем следующее сообщение:

Оно, и понятно, без специального сетевого ключа, работать не будет:)

5. Резервное копирование и восстановление:

Даем права пользователю postgres на тут папку куда будем выгружать backup.

Chown postgres:postgres /mnt/net

В /mnt/net у меня смонтирована виндовая шара, с помощью команды:

Mount -t smbfs -o username=test,password=11111111,iocharset=utf8 //192.168.1.8/distr /mnt/net

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

Umount -l /mnt/net

Резервное копирование (Backup):

Pg_dump -U postgres -Fc -Z9 dbname -f /mnt/net/Backup/Base/dbname.dump

U (пользователь)
-F (формат извлекаемого файла)
с (custom — внутренний формат сжатия pg_dump, возможны так же варианты tar и plain text)
-Z (установить режим сжатия)
0 — 9 (0 — без сжатия, 9 — максимальный режим)
-f (извлекать в этот файл)

Если выгружаем на виндовую шару, необходимо полный доступ для Users.

Востановление (только из под пользователя postgres): В новую базу:

Createdb -T template0 newdb

#!/bin/sh BKPDIR="/mnt/net/PostgreSQL" DATEYMD=`date "+%Y-%m-%d"` pg_dump -Fc -Z9 mydb -f "${BKPDIR}/${DATEYMD}-mydb-PostgreSQL.dump"

Запись в crontab (из под пользователя postgres):
su postgres
crontab -e //добавить задание
crontab -l //просмотр заданий
crontab -r //удалить задание

# запустить в 18:50 минут

50 18 * * * sh /home/scripts/backup.sh

# запускать каждые 15 минут

*/15 * * * * sh /home/scripts/backup.sh

В продолжение темы:
Вирусы

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

Новые статьи
/
Популярные