КонсультантПлюс
Содержание
Установка КонсультантПлюс [ править ]
Для запуска под ALT оболочке КонсультантПлюс необходимы установленная библиотека WINE + движок Gecko. На текущий момент (10.2017) для нормальной работы (особенно с сетевым комплектом) лучше использовать wine-vanilla ( i586-wine-vanilla для 64-битных ОС):
Под пользователем установить шрифты:
Настройка клиент-серверной версии [ править ]
Для примера, директория Консультанта с базами данных и запускаемым файлом cons.exe уже размещена на сетевом ресурсе сервиса Samba в директории //server/public/consultant .
Также пользователя необходимо добавить в группу users:
Настройка станции администратора [ править ]
Подключение сетевого диска [ править ]
Лучше всего для подключения ресурса использовать утилиту autofs. Настроить нужно по инструкции: Autofs#samba, предварительно заведя на Самбе необходимого пользователя. Имя директории для монтирования указывается при настройке в файле /etc/auto.tab в начале строки. Пусть это будет consultant, следовательно ресурс смонтируется в папку /mnt/auto/consultant . После настройки autofs — не забудьте включить одноименный сервис.
Далее от обычного пользователя запускаем команду winecfg и в открывшемся окне переходим на вкладку «Диски». Добавляем диск K: -> /mnt/auto/consultant, нажимаем кнопку «Дополнительно» и тип диска устанавливаем «Сетевой». Затем выполняем следующие команды:
после этого появится ярлык на рабочем столе пользователя (к команде в нем необходимо будет добавить /LINUX).
Регистрация [ править ]
Главное, что потребуется — бинарник conslin, собранный под соответствующую архитектуру, который согласно прилагаемой к нему инструкции помещают в /usr/local/bin и запускают с правами суперпользователя. Для успешных регистрации и обновления баз, данный бинарник должен быть запущен, проще всего настроить его на автостарт при каждом запуске через rc.local. На данный момент его можно найти в поставке Консультанта:
Затем нужно выполнить запуск Консультанта с ключом /REG:
С помощью представителя Консультант регистрируем комплект, а после запускаем с ключом /ADM: чтобы произошло формирование словарей.
Обновление БД [ править ]
Обновление баз производится вызовом команды:
если у Вас мало дискового пространства на станции администратора, также лучше указать временную папку на сетевом ресурсе, добавив соответствующий ключ: /TEMPINETDIR=K:\TEMP
Автообновление БД по расписанию [ править ]
Поставьте на расписание от пользователя команду
xvfb-run придётся доустановить, он нужен поскольку cons.exe необходим десктоп для вывода сообщений о ходе обновления. В /etc/crontab команда на запуск по расписанию, скажем в 3:00 ежедневно, может выглядеть например так:
и не забудьте запустить сервис crond.
Настройка клиентских станций [ править ]
Сводится к установке требуемых пакетов ( wine-vanilla-full wine-gecko autofs ) и настройке сетевого диска (см. выше).
Подключение каждого нового пользователя на машинах с Линуксом не требует регистрации новой рабочей станции в КонсультантПлюс через станцию администратора, в отличии от Windows (в этом случае нужно с ключом /ADM зайти в меню «Сервис» -> «Регистрация станций»)
Настройка файловой версии [ править ]
Помимо установки требуемого ПО ( wine-vanilla-full wine-gecko ), потребуется заготовить непривилегированного пользователя — пусть это тоже будет пользователь consultant — и отдельный каталог для компонентов приложения и баз данных, например /opt/consultant
Требуется право записи в каталог для группы consultant, в любом случае на подкаталог /ADM точно требуется. Весь комплект КонсультантПлюс следует записать в отведенный каталог, и делать это либо от пользователя consultant, либо после копирования назначить его и группу владельцами. Всех локальных пользователей, которым нужно ПО, следует включить в группу consultant. Если этого не сделать, характерной ошибкой будет сообщение о недоступности файла CONS.ADM
Чтобы WINE получил каталог, проще всего сделать символическую ссылку на /opt/consultant из домашнего каталога пользователя.
Если поместить ссылку в /etc/skel, каждый новый пользователь получит её автоматически. От обычного пользователя КонсультантПлюс будет запускаться так:
Нормально будет изготовить такой ярлык и раздать его на рабочие столы пользователей и в /etc/skel если необходимо.
Регистрация станции администратора и обновление БД в этом случае необходимо делать под пользователем consultant. Процедуры аналогично описанным для сетевой версии.
Многопользовательский режим (для файловой версии) [ править ]
Можно подключить пользователей по протоколу NX через FreeNX и nxclient. Если изначально поставить сервер под КонсультантПлюс в режиме «Рабочая станция», при установленном туда freenx-server в распоряжении пользователей сразу окажется LibreOffice и (если настроено) печать на локальные принтеры. Работает также буфер обмена. Если же порт tcp/22 сервера пропустить в Интернет, то пользователи умеющие установить дома nxclient и помнящие пароль смогут воспользоваться базами Консультанта и во внеурочное время.
Приятно, что при этом способе подключение каждого нового пользователя не требует регистрации новой рабочей станции в КонсультантПлюс, поскольку для него все пользователи считаются локальными. И вообще вмешательства администратора, если настроить /etc/skel.
Сервер консультант плюс на linux
Есть такая база, правовая база данных КонсультантПлюс, каждый IT-специалист знает это произведение российской компьютерной мысли и наверное устанавливал не раз. Конечно, можно пользоваться только online-версией этой замечательной правовой базы данных, но зачем? Ведь есть возможность получить эту компьютерную программу на руки, подписав договор с региональным представителем (региональным информационным центром) и выплачивая небольшие деньги. Именно от них, от региональных представителей, можно получить волшебный файл-демон лицензирования conslin , который позволяет провести-таки регистрацию правовой базы данных КонсультантПлюс (ведь мы же пользуемся только легальным программным обеспечением, не так ли?) и файл с инструкцией по установке: linux.rtf . Нет уверенности в том, что файл с инструкцией по установке можно публиковать публично, так как в нём не указаны условия его распространения, но там довольно банальные вещи, кроме некоторых секретных элементов, которые включены в пределах разумного цитирования в настоящую инструкцию.
Начальная установка
Просто ставим с mini.iso систему Ubuntu Linux 12.04, куда доустанавливаем только самые нужные нам компоненты. Где взять mini.iso? Конечно же здесь:
Установка проста и не замысловата. Минимальная система, без каких-либо посторонних сервисов. Единственное, что важно, по окончанию установки необходимо выбрать из огромного репозитория свободного программного обеспечения именно те пакеты, которые вам действительно понадобятся:
openssh-server – для удалённого доступа к операционной системе.
wine – тот самый неэмулятор Wine Is Not Emulator, который позволит нам запускать на сервере неродные для Linux, исполнимые файлы системы КонсультантПлюс с целью регистрации этого программного продукта, регистрации рабочих станций, обновления правовой базы данных КонсультантПлюс.
xvfb – ещё одна программа неэмуляции, это самый настоящий X-сервер, но умеющий работать без устройств отображения и устройств ввода-вывода. Казалось бы, зачем такое нужно? А вот нужно, например, сейчас, когда нет необходимости ставить настоящий X-сервер на постоянную основу, а лишь пользоваться им спорадически. Ведь все же знают, что, за редкими исключениями, сервер с X-сервер – совсем никакой не сервер.
Такие сервисы, как правовая база данных КонсультантПлюс, удобно держать на сервере виртуальных машин на базе настоящего промышленного гипервизора Kernel-based Virtual Machine (KVM). Для создания образа жесткого диска виртуальной машины рекомендуется 10-гигабайтный “резиновый” образ qcow2 или qed (который умеет расширять свой размер, в зависимости от наполнения данными, но можно сделать и фиксированного объема), который по-настоящему занимает на сервере виртуальных машин изначально чуть более 1 гигабайта . Файлы же правовой базы данных не рекомендуется, а обязательно следует разместить на “резиновом” разделе с максимальным объемом не менее 30 гигабайт , что следует из практики использования, когда изначально объем всех файлов составлял около 9 гигабайт , а после года работы системы – около 14 гигабайт , учитывая, что подключены только федеральные базы законодательства без отраслевых вариантов и регионального законодательства. Оперативной памяти виртуальной машины для обычной работы системы КонсультантПлюс достаточно 256 мегабайт , но, выяснилось, что для обновления системы необходимо не менее 512 мегабайт , так как при недостатке памяти жуткий комплекс из wine и cons.exe вываливается в переполнение стека. Все указанные выше показатели применимы и к реальному аппаратному обеспечению (за исключением “резиновости” разделов и невозможности увеличить оперативную память оперативно).
Предварительные действия
Создаем раздел на диске для файлов системы КонсультантПлюс с помощью программы fdisk (где X – буква диска):
Форматируем раздел, создавая на на нашем диске для файлов системы КонсультантПлюс файловую систему ext4 (где X – буква диска, а Y – цифра раздела):
Создаём точку монтирования (подключения) файловой системы:
Монтируем (подключаем) в нашу систему раздел диска в подготовленную нами выше директорию через файл описания точек монтирования fstab:
прописывая в нем запись монтирования раздела диска:
73bec7a9-a1d0-5c3f-9244-0cde01363eb4 – пример UUID раздела диска для монтирования;
/var/lib/cons – точка монтирования (подключения) раздела диска
ext4 – тип файловой системы, который мы указали при форматировании подключаемого раздела
relatime,nodiratime,commit=120 – параметры, ускоряющие работу файловой системы, путем уменьшения частоты записи на диск служебной информации.
0 – параметр, чтобы раздел не обрабатывался программой dump, которая по умолчанию и не установлена
2 – параметр, который заставлять fsck проверять раздел последним (можно поставить 0, чтобы вообще не проверять, но зачем?)
Применяем внесённые изменения:
Если диск виртуальный, то применяем ещё и дополнительные настройки для ускорения диска (это можно сделать даже в действующей системе, на “ходу”):
где добавляем через sudo -s то, что наш диск не крутится и может использовать любое ядро процессора для поток ввода-вывода, ведь у нас одно ядро в виртуальной машине и выбирать собственно не из чего (X – буква диска):
Указанные выше параметры просто применить и в сессии “суперпользователя” через:
но действовать это будет только до перезагрузки.
Создаём осмысленное имя пользователя, от которого у нас будет работать главный пользователь КонсультантПлюс и собственно будут запускаться фоновые процессы обслуживания:
Создаём имя пользователя, от которого у нас будет работать все остальные пользователи базы данных и у которых будут права только на чтение общего ресурса samba4:
Подготовка директории с базой данных
Каким-либо образом получаем доступ к дистрибутиву и копируем содержимое диска КонсультантПлюс в заранее подготовленную директорию /var/lib/cons (которая является, как мы помним, корнем специального раздела диска или отдельного диска для файлов правовой системы КонсультантПлюс):
Присваиваем все файлы в директории /var/lib/cons пользователю и группе cons:
Узнаем одну из тайн сообщества КонсультантПлюс, которая была почерпнута в секретном linux.rtf . Директория ADM должна иметь атрибуты rwxrwsr-x, т.е. для пользователя чтение-запись-доступ и для группы чтение-запись-доступ + SGID (бит показывает, что создаваемые в директории файлы будут принадлежать той же группе, что и каталог, а не группе пользователя, который создаёт в директории файл):
Что же лежит и будет лежать в директории /var/lib/cons/ADM? Да там же:
MBPxxxxxx.ADM , в котором хранится информация о авторизованных клиентских компьютерах (xxxxxx – номер поставки).
Оба файла имеют права rwxrwxr-x (775). Если права будут другими, то на клиентских машинах будет ошибка о занятости системы КонсультантПлюс некими иными пользователями. Бывает, когда некорректно проходят операции обновления, переиндексации, добавления новых клиентских компьютеров, права сбиваются на rwx—— (700)
Для возможности запуска cons.exe на клиентских компьютерах в неLinux-системах почему-то пришлось выставлять права rwxr-xr-x (755), а было rwxr-x— (750):
Подготовка общего ресурса SAMBA4
Редактируем файл настройки SAMBA /etc/samba/smb.conf:
В глобальной секции прописываем сетевую группу, режим авторизации, немного магии для ускорения чтения/записи на ресурсы SAMBA:
Закоментируйте ненужные нам секции:
Прописываем секцию общего ресурса SAMBA:
Создаем пользователей ресурса SAMBA:
Включаем пользователей ресурса SAMBA:
Регистрация комплекта и клиентских компьютеров
Копируем секретный демон лицензирования conslin в сервер, обычно в директорию /usr/local/bin/ и прописываем запуск его при старте сервера в /etc/rc.local до команды exit 0:
Можно конечно сделать демон /etc/init.d/conslin, но… стоит ли напрягаться? Помним, что & обязателен для того, чтобы conslin исполнялся при старте в фоне и загрузка продолжалась далее, а то мало ли что, это же злобный проприетарный модуль, что там внутри – неизвестно, зависнуть он может в любой момент и делать может что угодно, хотя есть информация, может работать по полгода и проблем не создавать (тьфу-тьфу). При старте демон conslin открывает TCP-порт 3333 на всех сетевых интерфейсах сервера.
Подключаемся с Вашего компьютера администратора удалённо с пробросом Х-сессии на сервер для регистрации комплекта:
Звоним или пишем региональному представителю КонсультантПлюс, говорим полученные цифры от программы, пишем в загрузившееся окно цифры от представителя, радуемся регистрации.
Подключаемся удалённо с Вашего компьютера администратора с пробросом X-сессии на сервер с базой данных для регистрации клиентских компьютеров:
/adm – запуск в режиме администрирования;
/linux – запуск на Linux-системе.
Программная оболочка КонсультантПлюс загружается и мы идём в Меню/Сервис/Регистрация станций .
Запускаем на клиентском компьютере cons.exe, так же идём в меню Меню/Сервис/Регистрация станций .
Происходит магия лицензирования – смотрим на прогрессбар на комьютерах, жмём как на клиентской машине, так и на запущенной на Вашем компьютере оболочке КонсультантПлюс кнопки “ОК” . Регистрация должна быть произведена произведена. Клиентская машина записана на сервере как авторизованная для подключения и использования базы данных.
Что можно делать вручную?
Все эти действия делаются визуально на компьютере администратора, используя его X-сервер, но выполняются на сервере.
Обновлять базу данных через локальную директорию для обновлений (если у вас всё очень плохо с Интернетом):
Обновлять базу данных через сеть Интернет:
Тестировать базу данных на неисправности и ошибки:
Индексировать файлы базы данных (это необходимо, когда теряется возможность нажимать на ссылки в программе, пишется фальшивое вообщение о том. что якобы “в данном комплекте не зарегистрирована эта возможность” ):
Создаём скрипт автоматического обновления
Создаём файл /usr/local/bin/cons-update.sh со следующим содержимым:
Не забываем сделать его исполнимым:
чтобы скрипт стал исполнимым. И сделать через sudo crontab -e запись:
чтобы база обновлялась один раз в неделю, а именно в понедельник, в 6 OMST (UTC+7) или 3 MSK (UTC+4) часов. Время и период подсказали сотрудники регионального информационного центра КонсультантПлюс, говорят, что нагрузка на сервера с обновлениями минимальна в это время, а чаще делать обновление не имеет смысла.
В процессе подготовки скрипта была раскрыта тайна, что оказывается, на самом деле, vr. res файл – исполнимый и его можно запускать через wine. И он тоже будет работать. Но злоупотреблять этим не надо, так как он постоянно обновляется и его версии тихонечко растут.