Настройка Fedora-PostgreSQL-1C
Оговорюсь сразу для любителей критиковать — я — непрофессионал и делал только лишь бы работало, возможно коряво, о безопасности не заботился — это отдельная тема.
1) качаем с https://fedorahosted.org/liveusb-creator/ прогу для создания загрузочной флэшки под свою ОС.
2) качаем с http://fedoraproject.org/ru/get-fedora образ Fedor-ы
3) делаем флэшку
4) ставим Fedor-у, при установке сразу позаботимся о необходимом месте для своей БД и выделим достаточное место под /var (Postgre будет хранить базу по умолчанию в /var/lib/postgresql/data)
5) после установки рекомендую изменить имя компа в /etc/hostname на что-нибудь понятное, лучше просто латинское слово
6) рекомендую прописать вручную ip в Параметры/Сеть — выбрать своё соединение, нажать кнопку со значком шестеренки — попадаем в настройки соединения — выбираем «IPv4», Адреса = Вручную — прописываем статический IP (конечно можно прописать в маршрутизаторе назначение IP по MAC или использовать любой другой способ, но я делал так)
7) заходим в Nautilus (файловый менеджер) — Подключиться... (к серверу по сетевому адресу) — ftp://download.etersoft.ru/pub - «Подключиться» - «Подключиться» - идём в Etersoft/Postgre@Etersoft/stable/ - далее:
- кому 32 bit — выбираем Fedora
- кому 64 bit — выбираем x86_64/Fedora
далее берем свою версию Fedor-ы или ближайшую папку (в моём случае /x86_64/Fedora/19) и качаем оттуда:
libpq5.5-9.2eter-9.2.1-eter1fedora.x86_64.rpm
postgre-etersoft9.2-9.2.1-eter1fedora.x86_64.rpm
postgre-etersoft9.2-contrib-9.2.1-eter1fedora.x86_64.rpm
postgre-etersoft9.2-seltaaddon-9.2.1-eter1fedora.x86_64.rpm
postgre-etersoft9.2-server-9.2.1-eter1fedora.x86_64.rpm
переходим туда куда скачали, выделяем их всех и устанавливаем (для совсем чайников — правый клик на выделенных файлах - «Открыть с помощью «Установка программ»)
9) внесем необходимые для запуска службы posgresql изменения через терминал:
su
<пароль суперпользователя>
echo «kernel.shmmax = 134217728» >> /etc/sysctl.conf
chown -R postgres:postgres /var/lib/postgresql
reboot
ждём пока перезагрузится — продолжаем
su
<пароль суперпользователя>
service postgresql start
passwd postgres
<устанавливаем новый пароль пользователя postgres>
<повторяем новый пароль пользователя postgres>
su -l postgres
psql
alter user postgres with password '<новый пароль пользователя postgres>'
\q
exit
gedit /var/lib/postgresql/data/postgresql.conf
правим значения соответствующих параметров в открывшемся файле:
max_connections = 150
shared_buffers = 75MB
effective_cache_size = 512MB
autovacuum = on
autovacuum_naptime = 5min
fsync = on
сохраняем, закрываем
gedit /var/lib/postgresql/data/pg_hba.conf
local all all trust
host all 0.0.0.0/0 trust
сохраняем, закрываем
service postgresql restart
chkconfig --add postgresql
chkconfig postgresql on
10) ставим 1С, использовал следующие пакеты:
сервер:
1C_Enterprise83-common-8.3.4-437.x86_64.rpm
1C_Enterprise83-common-nls-8.3.4-437.x86_64.rpm
1C_Enterprise83-server-8.3.4-437.x86_64.rpm
1C_Enterprise83-server-nls-8.3.4-437.x86_64.rpm
1C_Enterprise83-ws-8.3.4-437.x86_64.rpm
1C_Enterprise83-ws-nls-8.3.4-437.x86_64.rpm
клиенты:
1C_Enterprise83-client-8.3.4-437.x86_64.rpm
1C_Enterprise83-client-nls-8.3.4-437.x86_64.rpm
Если нужно изменить порты сервера и кластера 1С (при наличии нескольких серверов/кластеров в одной сети) и установить отличные от 1540 и 1541, тогда до запуска агента сервера предприятия необходимо запустить терминал:
su
<пароль суперпользователя>
gedit /etc/sysconfig/srv1cv83
в открывшемся файле разблокируем и установим соответствующие значения номеров портов:
SRV1CV8_PORT=1550
SRV1CV8_REGPORT=1551
сохраняем, закрываем
аналогично на всякий случай:
gedit /etc/init.d/srv1cv83
в процедуре меняем порт
#------------------------------------------------------------
# returns ragent main port
#------------------------------------------------------------
function getRagentPort() {
local cmdline=`getRagentRealCmdLine`
local port="$SRV1CV8_PORT"
[ ! -z "$cmdline" ] && port=`extractParam port $cmdline`
[ ! -z "$port" ] && echo $port || echo 1550
}
и соответственно тут
#------------------------------------------------------------
# returns ragent reg port
#------------------------------------------------------------
function getRegPort() {
local cmdline=`getRagentRealCmdLine`
local regport="$SRV1CV8_REGPORT"
[ ! -z "$cmdline" ] && regport=`extractParam regport $cmdline`
[ ! -z "$regport" ] && echo $regport || echo 1551
}
выполним в терминале необходимые для запуска изменения:
su
<пароль суперпользователя>
chown -R usr1cv8:grp1cv8 /opt/1C
service srv1cv83 stop
/opt/1C/v8.3/x86_64/ragent -daemon
service srv1cv83 start
chkconfig --add srv1cv83
chkconfig srv1cv83 on
И всё, должно подключаться в том числе удаленно, по крайней мере у меня работало на УРА ! (вопросы HASP не рассматривал)
Настроим резервное копирование базы на другой комп в сети:
создадим скрипт:
в терминале
touch /etc/pgsql-backup
gedit /etc/pgsql-backup
содержание файла:
# ! /bin/sh
# Зададим переменные
DATE=$(date +%Y%m%d)
# Резервное копирование
cd /root/backup
pg_dump -U postgres fedora | gzip > $DATE-fedora.pgsql.gz
# Сохраним на Server-1C
mount -t cifs //192.168.1.33/Backup /mnt/backup -o username=Админ,password=
cp /root/backup/$DATE-fedora.pgsql.gz /mnt/backup
umount -t cifs //192.168.1.33/Backup /mnt/backup
# Уборка
rm -f $DATE-fedora.pgsql.gz
сохраним, закроем
и поставим запуск по расписанию:
в терминале:
su
<пароль суперпользователя>
crontab -u root -e
откроется редактор vi (прямо в окне терминала):
нажимаем «i» - включится режим редактирования, наберем строку:
@midnight /etc/pgsql-backup
нажимаем «ESC», набираем «:w!» нажимаем «ENTER»
набираем «:q» нажимаем «ENTER»
расписание сохранено, теперь каждую полночью будет происходить выгрузка резервной копии базы в папку 192.168.1.33/Backup (надо предварительно создать и расшарить).
Если нужно другое время, тогда вместо «@midnight...» указываем точное дату/время
<минут> <часов> <число> <месяц> <год> <путь к скрипту>
Надеюсь помог, честно старался, сам инфу по всему Инету собирал, нигде от и до не написано, везде обрывки да ещё с претензией что ты хорошо знаком как с Линуксом так и с другим софтом...