Книга знаний

1С:Предприятие / v8 / Администрирование / Установка

v8: Установка сервера 1с 8.1 и postgresql на машину с OpenSuse linux

К сожалению, 1с и postgresql так просто не устанавливаются в OpenSuse linux. в этой статье я опишу процесс установки и обработки напильником так, чтобы это было понятно и неспециалисту.Автор статьи: Fragster | Редакторы:
Последняя редакция №12 от 29.01.08 | История
URL: http://kb.mista.ru/article.php?id=632

Ключевые слова: 1с, 1c, postgresql, opensuse, установка


Подготовка


Необходимо скачать с интернета или скопировать с диска дистрибутивы 1с сервера и postgresql. Также возможно необходимо удалить и компоненты postgresql, которые могут быть установлены в вашей системе (так как программы все равно возможно не смогут работать с той postgresql, которая поставляется вместе с 1с)

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


Заходим как рут и пытаемся установить сервер 1с:
su
пароль:
rpm -Uvh /путь к дистрибутиву 1с/*.rpm

как ни странно, установка проудет почти без ошибок, а те ошибки, которые будут, натолкнут нас на пра  
вильное решение:
2:1C_Enterprise-server   ########################################### [ 25%]

srv1cv81                  0:off  1:off  2:off  3:on   4:off  5:on   6:off
Starting 1C:Enterprise 8.1 server: su: предупреждение: невозможно сменить каталог на /home/usr1cv81: Нет такого файла или каталога
OK

Необходимо создать соттветствующую папку и назначить ей владельца:
md /home/usr1cv81
chown usr1cv81:grp1cv81 /home/usr1cv81
(пользователи уже будут созданы установщиком). Если после этого попытаться запустить сервис 1с, то это должно пройти без ошибок
service srv1cv81 start
Starting 1C:Enterprise 8.1 server: OK

В дальнейшем управлять сервисом можно из yast. к сожалению, в конфиге 1с не описана функция status, по этому в yast она всегда будет отображаться как выключенная. Проверить же можно с помощью команды netstat: если она выдает такой результат, то сервер работает:
netstat -n -a -t | grep 1540
tcp        0      0 0.0.0.0:1540            0.0.0.0:*               LISTEN

После всего этого к серверу возможно подсоединиться из консоли кластеров серверов 1с

Установка postgresql


если мы попробуем установить postgresql аналогичным образом, то система выдаст нам сообщение о неудовлетворенных зависимостях:
rpm -Uvh /путь к дистрибутиву postgresql/*.rpm
ошибка: Неудовлетворенные зависимости:
        initscripts нужен для postgresql-8.1.5-14.1C.i386

Возможно, при наличии этого пакета все устанавливается из коробки, и сразу работает, но у меня его не было, по этому пришлось идти длинным путем. Для начала установим postgresql несмотря на все зависимости, и посмотрим на ошибки:
rpm -Uvh --nodeps ./*.rpm
Подготовка...     ########################################### [100%]

   1:postgresql-libs        ########################################### [ 10%]

   2:postgresql             ########################################### [ 20%]

chown: `postgres:postgres': неверный пользователь
   3:postgresql-server      ########################################### [ 30%]

предупреждение: пользователь postgres не существует - используется root
предупреждение: пользователь postgres не существует - используется root
предупреждение: пользователь postgres не существует - используется root
предупреждение: пользователь postgres не существует - используется root
postgresql: unknown service
   4:postgresql-contrib     ########################################### [ 40%]

   5:postgresql-debuginfo   ########################################### [ 50%]

   6:postgresql-devel       ########################################### [ 60%]

   7:postgresql-docs        ########################################### [ 70%]

   8:postgresql-jdbc        ########################################### [ 80%]

   9:postgresql-pl          ########################################### [ 90%]

  10:postgresql-test        предупреждение: пользователь postgres не существует - используется root
предупреждение: пользователь postgres не существует - используется root
.........

из всего этого понятно, что по какой-то причине не создался пользователь postgresql. Поможем ему - создадим пользователя в группе postgresql (группа почему-то присутствует), для этого я использовал yast, но useradd никто не отменял ;). Потом необходимо задать владельцем папки с данными postgresql (она должна принадлежать пользователю postgres) и проинициализировать СУБД
chown postgres:postgres -R /var/lib/pgsql
su postgres -c 'LANG=ru_RU.UTF-8 initdb /var/lib/pgsql/data'
Файлы, сопутствующие этой системе баз данных, будут
принадлежать пользователю "postgres". Этот пользователь
также должен быть владельцем процесса сервера.
Кластер баз данных будет инициализирован с локалью ru_RU.UTF-8.
Кодировка базы по умолчанию установлена в UTF8.

исправление прав на существующую директорию /var/lib/pgsql/data ... ок
создание директории /var/lib/pgsql/data/global ... ок
создание директории /var/lib/pgsql/data/pg_xlog ... ок
создание директории /var/lib/pgsql/data/pg_xlog/archive_status ... ок
создание директории /var/lib/pgsql/data/pg_clog ... ок
создание директории /var/lib/pgsql/data/pg_subtrans ... ок
создание директории /var/lib/pgsql/data/pg_twophase ... ок
создание директории /var/lib/pgsql/data/pg_multixact/members ... ок
создание директории /var/lib/pgsql/data/pg_multixact/offsets ... ок
создание директории /var/lib/pgsql/data/base ... ок
создание директории /var/lib/pgsql/data/base/1 ... ок
создание директории /var/lib/pgsql/data/pg_tblspc ... ок
выбирается значение по-умолчанию для max_connections ... 100
выбирается значение по-умолчанию для shared_buffers ... 1000
создание конфигурационных файлов ... ок
создание базы template1 в /var/lib/pgsql/data/base/1 ... ок
initializing pg_authid ... ок
разрешение неограниченного размера строки для системных таблиц ... ок
initializing dependencies ... ок
создание системных представлений ... ок
загрузка pg_description ... ок
создание конверсий ... ок
установка привилегий для встроенных объектов ... ок
создание информационной схемы ... ок
сборка мусора в базе template1 ... ок
копирование template1 в template0 ... ок
copying template1 to postgres ... ок

ВНИМАНИЕ: используется аутентификация "trust" для локальных подсоединений.
Вы можете её поменять, отредактировав pg_hba.conf или используя опцию -A,
при следующем выполнении initdb.

Success. You can now start the database server using:

    postmaster -D /var/lib/pgsql/data
or
    pg_ctl -D /var/lib/pgsql/data -l logfile start


Описание | Рубрикатор | Поиск | ТелепатБот | Захваченные статьи | Установки | Форум
© Станислав Митичкин (Волшебник), 2005-2025 | Mista.ru

Яндекс.Метрика