Установка SELTA@etersoft под Ubuntu и Fedora

The answer you entered to the math problem is incorrect.

Ну что, www.openkazan.info снова работает для Вас в ускоренном темпе!:) Будем ставить новоиспечённый SELTA@etersoft (о том что это такое читайте здесь http://openkazan.info/etersoft-selta-1%D0%A1-linux). Дистрибутив Ubuntu Feisty обновлённый до Gutsy RC1. Паралельно установка Selta шла на Fedora 8 - ошибки были те же самые. Так как пробывали под Ubuntu, то вначале пришлось установить пакет rpm:

$sudo apt-get install rpm

В отдельный каталог скачали все rpm-ки postgres с ftp сервера etersoft.

на $sudo rpm -i *.rpm

выдал следующее:

/sbin/ldconfig нужен для postgresql-8.1.5-6.1C.i386
initscripts нужен для postgresql-8.1.5-6.1C.i386
libc.so.6 нужен для postgresql-8.1.5-6.1C.i386
libc.so.6(GLIBC_2.0) нужен для postgresql-8.1.5-6.1C.i386
libc.so.6(GLIBC_2.1) нужен для postgresql-8.1.5-6.1C.i386
libc.so.6(GLIBC_2.1.3) нужен для postgresql-8.1.5-6.1C.i386
libc.so.6(GLIBC_2.2) нужен для postgresql-8.1.5-6.1C.i386
libc.so.6(GLIBC_2.3) нужен для postgresql-8.1.5-6.1C.i386
libc.so.6(GLIBC_2.3.4) нужен для postgresql-8.1.5-6.1C.i386
libcrypt.so.1 нужен для postgresql-8.1.5-6.1C.i386
libdl.so.2 нужен для postgresql-8.1.5-6.1C.i386
libm.so.6 нужен для postgresql-8.1.5-6.1C.i386
libnsl.so.1 нужен для postgresql-8.1.5-6.1C.i386
libpam.so.0 нужен для postgresql-8.1.5-6.1C.i386
libresolv.so.2 нужен для postgresql-8.1.5-6.1C.i386
libz.so.1 нужен для postgresql-8.1.5-6.1C.i386
/usr/bin/perl нужен для postgresql-contrib-8.1.5-6.1C.i386
libc.so.6 нужен для postgresql-contrib-8.1.5-6.1C.i386
libc.so.6(GLIBC_2.0) нужен для postgresql-contrib-8.1.5-6.1C.i386
libc.so.6(GLIBC_2.1) нужен для postgresql-contrib-8.1.5-6.1C.i386
libc.so.6(GLIBC_2.1.3) нужен для postgresql-contrib-8.1.5-6.1C.i386
libc.so.6(GLIBC_2.2) нужен для postgresql-contrib-8.1.5-6.1C.i386
libc.so.6(GLIBC_2.3) нужен для postgresql-contrib-8.1.5-6.1C.i386
libc.so.6(GLIBC_2.3.4) нужен для postgresql-contrib-8.1.5-6.1C.i386
libcrypt.so.1 нужен для postgresql-contrib-8.1.5-6.1C.i386
libcrypt.so.1(GLIBC_2.0) нужен для postgresql-contrib-8.1.5-6.1C.i386
libdl.so.2 нужен для postgresql-contrib-8.1.5-6.1C.i386
libm.so.6 нужен для postgresql-contrib-8.1.5-6.1C.i386
libm.so.6(GLIBC_2.0) нужен для postgresql-contrib-8.1.5-6.1C.i386
libnsl.so.1 нужен для postgresql-contrib-8.1.5-6.1C.i386
libpam.so.0 нужен для postgresql-contrib-8.1.5-6.1C.i386
libresolv.so.2 нужен для postgresql-contrib-8.1.5-6.1C.i386
libxml2.so.2 нужен для postgresql-contrib-8.1.5-6.1C.i386
libxslt.so.1 нужен для postgresql-contrib-8.1.5-6.1C.i386
libz.so.1 нужен для postgresql-contrib-8.1.5-6.1C.i386
perl(Getopt::Std) нужен для postgresql-contrib-8.1.5-6.1C.i386
perl(IO::Handle) нужен для postgresql-contrib-8.1.5-6.1C.i386
perl(lib) нужен для postgresql-contrib-8.1.5-6.1C.i386
perl(strict) нужен для postgresql-contrib-8.1.5-6.1C.i386
/bin/sh нужен для postgresql-devel-8.1.5-6.1C.i386
libc.so.6 нужен для postgresql-devel-8.1.5-6.1C.i386
libc.so.6(GLIBC_2.0) нужен для postgresql-devel-8.1.5-6.1C.i386
libc.so.6(GLIBC_2.1) нужен для postgresql-devel-8.1.5-6.1C.i386
libc.so.6(GLIBC_2.2) нужен для postgresql-devel-8.1.5-6.1C.i386
libc.so.6(GLIBC_2.3) нужен для postgresql-devel-8.1.5-6.1C.i386
libc.so.6(GLIBC_2.3.4) нужен для postgresql-devel-8.1.5-6.1C.i386
libcrypt.so.1 нужен для postgresql-devel-8.1.5-6.1C.i386
libdl.so.2 нужен для postgresql-devel-8.1.5-6.1C.i386
libm.so.6 нужен для postgresql-devel-8.1.5-6.1C.i386
libnsl.so.1 нужен для postgresql-devel-8.1.5-6.1C.i386
libpam.so.0 нужен для postgresql-devel-8.1.5-6.1C.i386
libresolv.so.2 нужен для postgresql-devel-8.1.5-6.1C.i386
libz.so.1 нужен для postgresql-devel-8.1.5-6.1C.i386
/bin/sh нужен для postgresql-docs-8.1.5-6.1C.i386
libc.so.6 нужен для postgresql-docs-8.1.5-6.1C.i386
libc.so.6(GLIBC_2.0) нужен для postgresql-docs-8.1.5-6.1C.i386
libc.so.6(GLIBC_2.1.3) нужен для postgresql-docs-8.1.5-6.1C.i386
libc.so.6(GLIBC_2.3.4) нужен для postgresql-docs-8.1.5-6.1C.i386
/sbin/ldconfig нужен для postgresql-libs-8.1.5-6.1C.i386
libc.so.6 нужен для postgresql-libs-8.1.5-6.1C.i386
libc.so.6(GLIBC_2.0) нужен для postgresql-libs-8.1.5-6.1C.i386
libc.so.6(GLIBC_2.1) нужен для postgresql-libs-8.1.5-6.1C.i386
libc.so.6(GLIBC_2.1.3) нужен для postgresql-libs-8.1.5-6.1C.i386
libc.so.6(GLIBC_2.2) нужен для postgresql-libs-8.1.5-6.1C.i386
libc.so.6(GLIBC_2.3) нужен для postgresql-libs-8.1.5-6.1C.i386
libc.so.6(GLIBC_2.3.4) нужен для postgresql-libs-8.1.5-6.1C.i386
libcrypt.so.1 нужен для postgresql-libs-8.1.5-6.1C.i386
libcrypt.so.1(GLIBC_2.0) нужен для postgresql-libs-8.1.5-6.1C.i386
libm.so.6 нужен для postgresql-libs-8.1.5-6.1C.i386
libm.so.6(GLIBC_2.0) нужен для postgresql-libs-8.1.5-6.1C.i386
libnsl.so.1 нужен для postgresql-libs-8.1.5-6.1C.i386
libresolv.so.2 нужен для postgresql-libs-8.1.5-6.1C.i386
/sbin/ldconfig нужен для postgresql-pl-8.1.5-6.1C.i386
libc.so.6 нужен для postgresql-pl-8.1.5-6.1C.i386
libc.so.6(GLIBC_2.0) нужен для postgresql-pl-8.1.5-6.1C.i386
libc.so.6(GLIBC_2.1.3) нужен для postgresql-pl-8.1.5-6.1C.i386
libc.so.6(GLIBC_2.3) нужен для postgresql-pl-8.1.5-6.1C.i386
libc.so.6(GLIBC_2.3.4) нужен для postgresql-pl-8.1.5-6.1C.i386
libcrypt.so.1 нужен для postgresql-pl-8.1.5-6.1C.i386
libdl.so.2 нужен для postgresql-pl-8.1.5-6.1C.i386
libdl.so.2(GLIBC_2.0) нужен для postgresql-pl-8.1.5-6.1C.i386
libdl.so.2(GLIBC_2.1) нужен для postgresql-pl-8.1.5-6.1C.i386
libm.so.6 нужен для postgresql-pl-8.1.5-6.1C.i386
libnsl.so.1 нужен для postgresql-pl-8.1.5-6.1C.i386
libperl.so нужен для postgresql-pl-8.1.5-6.1C.i386
libpthread.so.0 нужен для postgresql-pl-8.1.5-6.1C.i386
libpthread.so.0(GLIBC_2.0) нужен для postgresql-pl-8.1.5-6.1C.i386
libresolv.so.2 нужен для postgresql-pl-8.1.5-6.1C.i386
libutil.so.1 нужен для postgresql-pl-8.1.5-6.1C.i386
/bin/sh нужен для postgresql-server-8.1.5-6.1C.i386
/sbin/chkconfig нужен для postgresql-server-8.1.5-6.1C.i386
/usr/sbin/useradd нужен для postgresql-server-8.1.5-6.1C.i386
libc.so.6 нужен для postgresql-server-8.1.5-6.1C.i386
libc.so.6(GLIBC_2.0) нужен для postgresql-server-8.1.5-6.1C.i386
libc.so.6(GLIBC_2.1) нужен для postgresql-server-8.1.5-6.1C.i386
libc.so.6(GLIBC_2.1.3) нужен для postgresql-server-8.1.5-6.1C.i386
libc.so.6(GLIBC_2.2) нужен для postgresql-server-8.1.5-6.1C.i386
libc.so.6(GLIBC_2.3) нужен для postgresql-server-8.1.5-6.1C.i386
libc.so.6(GLIBC_2.3.4) нужен для postgresql-server-8.1.5-6.1C.i386
libcrypt.so.1 нужен для postgresql-server-8.1.5-6.1C.i386
libcrypt.so.1(GLIBC_2.0) нужен для postgresql-server-8.1.5-6.1C.i386
libdl.so.2 нужен для postgresql-server-8.1.5-6.1C.i386
libdl.so.2(GLIBC_2.0) нужен для postgresql-server-8.1.5-6.1C.i386
libdl.so.2(GLIBC_2.1) нужен для postgresql-server-8.1.5-6.1C.i386
libm.so.6 нужен для postgresql-server-8.1.5-6.1C.i386
libm.so.6(GLIBC_2.0) нужен для postgresql-server-8.1.5-6.1C.i386
libnsl.so.1 нужен для postgresql-server-8.1.5-6.1C.i386
libpam.so.0 нужен для postgresql-server-8.1.5-6.1C.i386
libresolv.so.2 нужен для postgresql-server-8.1.5-6.1C.i386
libz.so.1 нужен для postgresql-server-8.1.5-6.1C.i386
/bin/sh нужен для postgresql-test-8.1.5-6.1C.i386
libc.so.6 нужен для postgresql-test-8.1.5-6.1C.i386
libc.so.6(GLIBC_2.0) нужен для postgresql-test-8.1.5-6.1C.i386
libc.so.6(GLIBC_2.1.3) нужен для postgresql-test-8.1.5-6.1C.i386
libc.so.6(GLIBC_2.3) нужен для postgresql-test-8.1.5-6.1C.i386
libc.so.6(GLIBC_2.3.4) нужен для postgresql-test-8.1.5-6.1C.i386

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

$sudo rpm -i --nodeps *.rpm

всё проходит нормально

Далее читаем http://wiki.etersoft.ru/SELTA/Config?v=j5r и паралельно смотрим в нашу статью, так как наверняка будут такие же ошибки.

$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

На данном этаме у нас имеется рабочий сервер postgresql. Создадим базы данных. Для этого нужно разархивировать Scripts.tar.bz2 взятый с FTP сервера etersoft, далее зайти в каталог Scripts и ввести команды:

$psql -U postgres -d template1 -f mchar.sql
SET
BEGIN
CREATE FUNCTION
CREATE FUNCTION
CREATE FUNCTION
CREATE FUNCTION
CREATE TYPE
CREATE FUNCTION
CREATE CAST
CREATE FUNCTION
CREATE FUNCTION
CREATE FUNCTION
CREATE FUNCTION
CREATE TYPE
CREATE FUNCTION
CREATE CAST
CREATE FUNCTION
CREATE FUNCTION
CREATE FUNCTION
CREATE FUNCTION
CREATE FUNCTION
CREATE OPERATOR
CREATE FUNCTION
CREATE FUNCTION
CREATE FUNCTION
CREATE OPERATOR
CREATE OPERATOR
CREATE FUNCTION
CREATE FUNCTION
CREATE OPERATOR
CREATE OPERATOR
CREATE FUNCTION
CREATE FUNCTION
CREATE FUNCTION
CREATE FUNCTION
CREATE FUNCTION
CREATE FUNCTION
CREATE OPERATOR
CREATE FUNCTION
CREATE FUNCTION
CREATE FUNCTION
CREATE OPERATOR
CREATE OPERATOR
CREATE FUNCTION
CREATE FUNCTION
CREATE OPERATOR
CREATE OPERATOR
CREATE FUNCTION
CREATE FUNCTION
CREATE FUNCTION
CREATE FUNCTION
CREATE FUNCTION
CREATE FUNCTION
CREATE FUNCTION
CREATE FUNCTION
CREATE FUNCTION
CREATE FUNCTION
CREATE FUNCTION
CREATE FUNCTION
CREATE OPERATOR
CREATE OPERATOR
CREATE OPERATOR
CREATE OPERATOR
CREATE OPERATOR
CREATE OPERATOR
CREATE FUNCTION
CREATE FUNCTION
CREATE FUNCTION
CREATE FUNCTION
CREATE FUNCTION
CREATE FUNCTION
CREATE FUNCTION
CREATE OPERATOR
CREATE OPERATOR
CREATE OPERATOR
CREATE OPERATOR
CREATE OPERATOR
CREATE OPERATOR
CREATE FUNCTION
CREATE FUNCTION
CREATE FUNCTION
CREATE FUNCTION
CREATE FUNCTION
CREATE FUNCTION
CREATE FUNCTION
CREATE OPERATOR
CREATE OPERATOR
CREATE OPERATOR
CREATE OPERATOR
CREATE OPERATOR
CREATE OPERATOR
CREATE FUNCTION
CREATE FUNCTION
CREATE FUNCTION
CREATE FUNCTION
CREATE FUNCTION
CREATE FUNCTION
CREATE FUNCTION
CREATE OPERATOR
CREATE OPERATOR
CREATE OPERATOR
CREATE OPERATOR
CREATE OPERATOR
CREATE OPERATOR
CREATE FUNCTION
CREATE FUNCTION
CREATE FUNCTION
CREATE FUNCTION
CREATE FUNCTION
CREATE FUNCTION
CREATE FUNCTION
CREATE OPERATOR
CREATE OPERATOR
CREATE OPERATOR
CREATE OPERATOR
CREATE OPERATOR
CREATE OPERATOR
CREATE FUNCTION
CREATE FUNCTION
CREATE FUNCTION
CREATE FUNCTION
CREATE FUNCTION
CREATE FUNCTION
CREATE FUNCTION
CREATE OPERATOR
CREATE OPERATOR
CREATE OPERATOR
CREATE OPERATOR
CREATE OPERATOR
CREATE OPERATOR
CREATE FUNCTION
CREATE FUNCTION
CREATE FUNCTION
CREATE FUNCTION
CREATE FUNCTION
CREATE FUNCTION
CREATE FUNCTION
CREATE OPERATOR
CREATE OPERATOR
CREATE OPERATOR
CREATE OPERATOR
CREATE OPERATOR
CREATE OPERATOR
CREATE FUNCTION
CREATE FUNCTION
CREATE FUNCTION
CREATE FUNCTION
CREATE FUNCTION
CREATE FUNCTION
CREATE FUNCTION
CREATE OPERATOR
CREATE OPERATOR
CREATE OPERATOR
CREATE OPERATOR
CREATE OPERATOR
CREATE OPERATOR
CREATE FUNCTION
CREATE OPERATOR
CREATE FUNCTION
CREATE OPERATOR
CREATE FUNCTION
CREATE CAST
CREATE FUNCTION
CREATE CAST
CREATE FUNCTION
CREATE AGGREGATE
CREATE FUNCTION
CREATE AGGREGATE
CREATE FUNCTION
CREATE AGGREGATE
CREATE FUNCTION
CREATE AGGREGATE
CREATE OPERATOR CLASS
CREATE OPERATOR CLASS
CREATE OPERATOR CLASS
CREATE OPERATOR CLASS
CREATE FUNCTION
CREATE FUNCTION
CREATE FUNCTION
CREATE FUNCTION
CREATE OPERATOR
CREATE OPERATOR CLASS
CREATE FUNCTION
CREATE FUNCTION
CREATE OPERATOR
CREATE OPERATOR CLASS
COMMIT
SET

$ psql -U postgres -d template1 -f selta_install.sql
psql:selta_install.sql:5: ERROR: тип "tinyint" уже существует
psql:selta_install.sql:6: ERROR: тип "ms_bit" уже существует
psql:selta_install.sql:9: ERROR: объект "pg_func_names" уже существует
psql:selta_install.sql:10: ERROR: объект "pg_indexes_name" уже существует
psql:selta_install.sql:28: ERROR: язык "plpgsql" не существует
ПОДСКАЗКА: Use CREATE LANGUAGE to load the language into the database.
psql:selta_install.sql:58: ERROR: неверная последовательность байт имя кодировки "UTF8": 0xf5d3d4c1
ПОДСКАЗКА: This error can also happen if the byte sequence does not match the encoding expected by the server, which is controlled by "client_encoding".
psql:selta_install.sql:73: ERROR: язык "plpgsql" не существует
ПОДСКАЗКА: Use CREATE LANGUAGE to load the language into the database.
psql:selta_install.sql:85: ERROR: язык "plpgsql" не существует
ПОДСКАЗКА: Use CREATE LANGUAGE to load the language into the database.
psql:selta_install.sql:108: ERROR: язык "plpgsql" не существует
ПОДСКАЗКА: Use CREATE LANGUAGE to load the language into the database.
psql:selta_install.sql:157: ERROR: неверная последовательность байт имя кодировки "UTF8": 0xe4ccd1
ПОДСКАЗКА: This error can also happen if the byte sequence does not match the encoding expected by the server, which is controlled by "client_encoding".
psql:selta_install.sql:167: ERROR: язык "plpgsql" не существует
ПОДСКАЗКА: Use CREATE LANGUAGE to load the language into the database.
psql:selta_install.sql:176: ERROR: язык "plpgsql" не существует
ПОДСКАЗКА: Use CREATE LANGUAGE to load the language into the database.
psql:selta_install.sql:185: ERROR: язык "plpgsql" не существует
ПОДСКАЗКА: Use CREATE LANGUAGE to load the language into the database.
psql:selta_install.sql:194: ERROR: язык "plpgsql" не существует
ПОДСКАЗКА: Use CREATE LANGUAGE to load the language into the database.
psql:selta_install.sql:203: ERROR: язык "plpgsql" не существует
ПОДСКАЗКА: Use CREATE LANGUAGE to load the language into the database.
psql:selta_install.sql:212: ERROR: язык "plpgsql" не существует
ПОДСКАЗКА: Use CREATE LANGUAGE to load the language into the database.

Если вышли такие ошибки, то даём команду:

$ createlang -U postgres -d template1 plpgsql

далее при повторной установке (psql -U postgres -d template1 -f selta_install.sql) система ругается на:

CREATE DOMAIN
CREATE DOMAIN
CREATE TABLE
CREATE TABLE
CREATE FUNCTION
psql:selta_install.sql:58: ERROR: неверная последовательность байт имя кодировки "UTF8": 0xf5d3d4c1
ПОДСКАЗКА: This error can also happen if the byte sequence does not match the encoding expected by the server, which is controlled by "client_encoding".
CREATE FUNCTION
CREATE FUNCTION
CREATE FUNCTION
psql:selta_install.sql:155: ERROR: неверная последовательность байт имя кодировки "UTF8": 0xe4ccd1
ПОДСКАЗКА: This error can also happen if the byte sequence does not match the encoding expected by the server, which is controlled by "client_encoding".
CREATE FUNCTION
CREATE FUNCTION
CREATE FUNCTION
CREATE FUNCTION
CREATE FUNCTION
CREATE FUNCTION
Всё дело в том что файл selta_install.sql написан в KOI8-R, а нам нужно UTF8:

$ iconv -f KOI8R -t UTF-8 selta_install.sql > se_in1.sql

и далее удаляем предыдущюю неудачную установку selta_install.sql

$psql -U postgres -d template1 -f selta_unstall.sql

и подсовываем psql новый файл se_in1.sql в кодировке UTF8

$psql -U postgres -d template1 -f se_in1.sql

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

$psql -U postgres -d template1 -c "ALTER USER postgres PASSWORD '123456'"

Создаём базы данных master и test_sql:

$psql -U postgres -d template1 -c "CREATE DATABASE master"
$psql -U postgres -d template1 -c "CREATE DATABASE test_sql"

Далее ставим 1С http://openkazan.info/node/126 :)


Комментарии

Какой дистрибутив selta.msi Вы использовали при установке ? То что можно скачать с Etersoft не работает, после установки при попытке подключения из !С к БД выдает внутреннюю ошику 126 (сам ODBC-драйвер не запускается).

Если есть возможность, отправьте пожалуйста selta.msi который Вы использовали по почте andrey@it-port.ru. Очень хочется попробовать запустить.

Изображение пользователя admin.

именно тестовую версию и пробывали.

Скорее всего Вы пробовали более раннюю тестовую версию, а не ту, которая лежит сейчас. Сейчас лежит обновленная версия selta.msi от 26 октября или уже даже более поздняя, и она не работает. Если у Вас сохранился работающий вариант, можно пожалуйста его скачать откуда-нибудь или по почте получить (andrey@it-port.ru) ?

P.S. Может конечно я устанавливаю что-то не так, вроде бы четко по инструкции. Пробовал запускать selta.msi на 8-ми разных машинах и на всех одинаковый результат - ошибка 126 при подключении к базе.

Отправить комментарий

Пример: 1+1, ответ: 2
Содержание этого поля является приватным и не предназначено к показу.

Ñòàðí/A>