понедельник, 19 сентября 2011 г.

Конвертация centos6 в sl6 (convert centos 6 to sl 6x)

Итак, намучавшись с centos6 (не работающий проброс ключа hasp в виртуальную машину), решился на подлый шаг - преобразование centos в scientific linux.
Подтолкнуло к этому чтение форумов, где утверждается что данный функционал не работает (точнее то работает, то нет) на rhel 6 и только заработал на 6.1, а, как известно, релиз centos 6.1 даже на горизонте не маячит.
Начинаем
Бэкап всего что попадется под руки.
Устанавливаем репы SL:
rpm -ivh --force http://ftp.scientificlinux.org/linux/scientific/6x/x86_64/os/Packages/sl-release-6.1-2.x86_64.rpm
Чистим yum
yum clean all 
Обновляем сам yum и rpm
yum update yum* rpm*
обновляем систему
yum update
Удаляем лишнее
rpm -e centos-release
rpm -e yum-plugin-fastestmirror

Обновляем логопиты
yum distro-sync
Переустанавливаем пакеты вендора centos
rpm -qa --qf "%{NAME} %{VENDOR}\n"|grep CentOS 
Так мы вывели список таких пакетов
и вперед: yum reinstall по списку)
reboot
Немного поволновавшись за систему, ушел пить чай
В результате все прошло идеально, ошибок в логах нет
И, самое главное, ключ появился в виртуальной машине. Сервер предприятия его подхватил и пользователи свободно зашли в 1с.
P.S. Бинарная совместимость клонов rhel это просто праздник...
Придала решимости мне вот эта статья
Ага, озадачился установкой системы мониторинга и развертывания

не забыть в начале установить make gcc

вторник, 6 сентября 2011 г.

1C Postgresql Backup

Так из того, что до сих пор не было сделано, это бэкап. Это плохо(
Доделал, чем с вами и делюсь)
За основу был взят скрипт отсюда, спасибо за простой и не напряжный вариант.
Единственно, пришлось немного поправить скрипты и пути, были небольшие опечатки.
файл crontab для пользователя postgres:
crontab -e -u postgres

0 8-20/2 * * * /var/lib/pgsql/backups/archpgbase /var/lib/pgsql/backups hourly gpi
0 2 * * * /var/lib/pgsql/backups/archpgbase /var/lib/pgsql/backups daily gpi
0 4 1 * * /var/lib/pgsql/backups/archpgbase /var/lib/pgsql/backups monthly gpi

файл скрипта.

bash-4.1$ cat /var/lib/pgsql/backups/archpgbase
#!/bin/sh
arcdir=$1
bindir=/usr/bin
PASS=237511
USAGE= "Usage: arcdb hourly|daily|mountly [SQLhost]"
if [ "$4" = "" ]; then
SQLhost='127.0.0.1'
fi
echo "SQLhost: $SQLhost"
if ! [ -d $1 ]; then
echo $USAGE
exit 1
fi
echo "Target dir: $1"
if [ "$3" = "" ]; then
echo $USAGE
exit 1
fi
echo "Database: $3"
case $2 in
hourly)
find $arcdir/$2/$3/ -type f -ctime 1 -delete
;;
daily)
find $arcdir/$2/$3/ -type f -ctime 31 -delete
;;
monthly)
find $arcdir/$2/$3/ -type f -ctime 365 -delete
;;
*)
echo $USAGE
exit 1
;;
esac
if ! [ -e $arcdir/$2/$3 ]; then
mkdir $arcdir/$2/$3
fi
export PGPASSWORD=123456
$bindir/pg_dump -h $SQLhost -U postgres -c $3 | gzip >>$arcdir/$2/$3/`date +%y%m%d%H%M`.gz

создаем директории в /var/lib/pgsql/backups/
monthly
daily
hourly

отдаем пользователю постгресса во владениее папки
chown -R postgres /var/lib/pgsql/backups

делаем скрипт исполняемым

chmod +x /var/lib/pgsql/archpgbase

все. все просто и понятно)


Полезно!

Как раз занимаясь разборками с KVM, обнаружил следующее:
http://libc6.org/virtualization/
Помогло кое-в чем разобраться, спасибо огромное)

понедельник, 5 сентября 2011 г.

Сервер 1с на Linux

Сегодня повторил установку для дружественной организации.
Делал, как и описывал один в один. Не заработало. Возникли две проблемы, достаточно неприятные (просто жаль убитого времени).
1. Проблема - не доустановился пакет с cabextract на этапе установки шрифтов от Майкрософт. В результате ошибка при запуске платформы 1С "Не удалось инициализировать графическую подсистему".
Пришлось проверять каждый пакет на правильность установки. А все из-за ключа yum --nogpgcheck, просто не все подписывают свои пакеты, что есть плохо
2. Проблема - не пробросился в виртуальную машину ключ сервера 1С:Предприятия. Ругается в логах на ошибку прав. Хотя прав ему хватает.
Решение легкое, но не правильное - если есть возможность в bios превратить контроллер usb в 1.1 из 2.0. 
Решение трудное - установить пакет qemu-kvm от Scientific Linux 6.1. Не очень хочется, но данный баг починили только в RHEL 6.1.
Решение долгое - дождаться пока CentOS Team выпустит наконец версию 6.1, и обновиться
По различным причинам выбрал последний вариант (у мамки нет настроек usb, ставить левые пакеты страшновато, пользователей работает пока всего 10).

четверг, 1 сентября 2011 г.

Установка: часть 3 - Терминальный сервер

Итак у нас получился вполне себе работоспособный сервер 1С:Предприятия на базе CentOS, что не может не рабовать)
Для окончательного избавления от Windows Server не хватает только терминального режима работы. Чем я занимался последние два дня... Ага, именно, два дня!
Как я себе это представлял:
1. Какая-нибудь ОС дружного и не очень семейства Linux
На самом деле, думал я, без разницы какая, главное постабильней. в качестве DE - LXDE, ибо легкая (что в названии DE и написано)
2. За пользовательские сеансы отвечать будет NX
Других-то вариантов на горизонте нет
3. 1С будет последней доступной платформы в режиме толстого клиента
Знаю я, знаю, про тонкого клиента, да и про веб-клиента. Вы его пробовали? Покажите мне розничный интерфейс на управляемых формах, и я пойду в лес, лягу в берлогу к медведю и буду... не важно короче. Склады и магазины работают в АРМах и их нет в управляемых формах))
4. Поскольку клиент-то толстый (неполиткоректно как-то звучит) нужен wine для его запуска.


Поехали.

Установка: часть 2 - Косяк

Столкнулся с небольшой проблемкой после установки.
sshd на сервере Centos 6 не позволяет проводить аутентификацию пользователей по PublicKey. Все дело во включенном SELinux. Временное решение - отключить))
Разберусь с SELinux включу назад, ибо секурно))