======================================================================================== # ЗАПУСК КМАЗС-ОФИС на Linux - установка и настройка СУБД Firebird для ОС "Астра Линукс" ======================================================================================== В данной инструкции предоставлена информация - как установить Firebird из репозитория Астра Линукс. Рекомендуется устанавливать Firebird непосредственно из репозитория Астра Линукс, поскольку в этом случае на компьютер будут скачены файлы, подписанные цифровой подписью (для работы в режиме замкнутой программной среды). Если же установить Firebird из стандартного инсталляционного архива с сайта https://firebird.org, то вы не сможете запустить Firebird в режиме ЗПС (либо придётся подписывать файлы самостоятельно). К сожалению, на октябрь 2026г в стандартном репозитории АстраЛинукс1.8 доступен только устаревший Firebird 3.0 (точнее Firebird 3.0.11 - это надежная версия). Внимание! Если вы устанавливаете дополнительное рабочее место, то не следует устанавливать Firebird. Достаточно установить клиентскую часть Firebird (пакет libfbclient2). Команды: Проверка наличия пакета и его версии: sudo apt list --installed | grep libfbclient2 Установка / обновление пакета: sudo apt install libfbclient2 Внимание! Если вы устанавливаете Firebird на отдельный сервер, где не планируется ставить программу КМАЗС-ОФИС, то не следует включать пользователя firebird в группу "kmazs-admins". Группа "kmazs-admins" в этом случае не требуется. Но требуется на папку /opt/kmazs/DataBase назначить группу "firebird" (см. п. 10). ======================================= # 1. Установка и настройка Firebird 3.0 ======================================= 1.1. Проверить, какая версия Firebird сейчас установлена: sudo apt list --installed | grep firebird В результате команды будут отображено: название пакета "firebird", версия и признак [установлен]. Если Firebird 3.0.11 уже установлен, то повторная установка не требуется. Если установлена более старая версия, то имеет смысл её обновить для повышения стабильности Firebird. 1.2. Для удаления пакета firebird (если возникнет необходимость) можно использовать команду: sudo apt remove firebird3.0-server Примечание. Удалять пакет может потребоваться в крайнем случае. Обычно достаточно выполнить обновление. 1.3. Для установки наиболее свежего пакета firebird3.0 использовать команду: sudo apt install firebird3.0-server При этом также будут установлены пакеты: firebird3.0-common firebird3.0-common-doc firebird3.0-server firebird3.0-server-core firebird3.0-utils libfbclient2 libib-util libtommath1 1.3.1 В ходе установки firebird3.0 будет предложено ввести пароль для пользователя SYSDBA. Не следует вводить пароль на данном этапе, поскольку пароль не видно при вводе и есть очень высокий риск ошибиться. Нажмите Enter (или OK). В результате будет сгенерирован случайный пароль, который можно увидеть в файле "/etc/firebird/3.0/SYSDBA.password" в переменной "ISC_PASSWORD". Для открытия данного файла можно воспользоваться командой: "sudo nano /etc/firebird/3.0/SYSDBA.password" (изменять файл не следует). 1.3.2 Информация о путях: /etc/firebird/3.0 - файлы конфигурации Firebird 3.0 (в том числе firebird.conf, databases.conf) Исполняемые файлы и библиотеки Firebird: /usr/sbin/firebird - исполняемый файл Firebird; /usr/bin/gbak - утилита для создания резервных копий (классическая); /usr/bin/nbackup - утилита для создания резервных копий (продвинутая); /usr/bin/gfix - утилита для исправления БД и переключения режимов; /usr/bin/isql-fb - утилита для выполнения SQL-запросов; /usr/bin/gsec - утилита для настройки безопасности; /usr/bin/fbstat - утилита для получения статистики по базе данных /usr/lib/x86_64-linux-gnu/libfbclient.so.3.0.11 - клиентская библиотека (для работы программ с СУБД Firebird); /usr/lib/x86_64-linux-gnu/libfbclient.so.2 - стабильный симлинк на "libfbclient.so.3.0.11" (т.е. автоматически обновляется инсталлятором); /usr/lib/x86_64-linux-gnu/firebird/3.0/lib/libfbclient.so.2 - ещё симлинк на "libfbclient.so.3.0.11"; /var/lib/firebird/3.0/system/security3.fdb - база данных учетных записей пользователей firebird. 1.4 Создать символическую ссылку "/opt/kmazs/libfbclient.so" на стабильный симлинк "/usr/lib/x86_64-linux-gnu/libfbclient.so.2" Внимание! Если папка "/opt/kmazs/" ещё не создана, то сперва создайте её либо отложите создание симлинка "/opt/kmazs/libfbclient.so" сделайте это после установки программы "КМАЗС-ОФИС". Команда для создания симлинка: sudo ln -sf /usr/lib/x86_64-linux-gnu/libfbclient.so.2 /opt/kmazs/libfbclient.so 1.5. Создание безопасного пароля для пользователя SYSDBA (английские символы, дефис, подчеркивание, цифры): 1.5.1 Остановить службу firebird: sudo systemctl stop firebird3.0 1.5.2 Запустить команду "isql-fb" с повышенными правами: sudo /usr/bin/isql-fb -user SYSDBA 1.5.3 Выполнить команды после приглашения "SQL>" (точка с запятой в конце команды - обязательна): CONNECT '/var/lib/firebird/3.0/system/security3.fdb'; ALTER USER SYSDBA PASSWORD 'YourSecurePassword'; COMMIT; EXIT; Внимание! Если пользователь SYSDBA ещё не создан, то следует использовать команду "CREATE USER". Если пользователь SYSDBA уже есть, то следует использовать команду "ALTER USER". Для АстраЛинукс пользователь SYSDBA создаётся на этапе установки пакета "firebird3.0-server". Примечание: стандартным паролем для пользователя SYSDBA является "masterkey" (использовать его допускается только в закрытой корпоративной сети); Примечание: после изменения пароля SYSDBA рекомендуется указать его в файле "/etc/firebird/3.0/SYSDBA.password": sudo nano /etc/firebird/3.0/SYSDBA.password 1.6. Скорректировать настройки в файле /etc/firebird/3.0/firebird.conf См. ниже раздел: (Коррекция настроек в файле "firebird.conf") 1.7. Снова запустить firebird3.0: sudo systemctl start firebird3.0 ======================================= # 2. Установка и настройка Firebird 5.0 ======================================= !!! ВНИМАНИЕ!!! Данный раздел не реализован для АстраЛинукс (Firebird 5.0 отсутствует в репозитории )!!! ============================================================== # 3. Коррекция настроек в файле "firebird.conf" ============================================================== 3.1 Открыть файл с помощью стандартного текстового редактора nano: Примечание. См. команды редактора nano в файле "readme-nano-editor.txt" Команда для Firebird3.0: sudo nano /etc/firebird/3.0/firebird.conf Команда для Firebird5.0: sudo nano /etc/firebird/firebird.conf 3.2 Добавить в начало файла следующие параметры (можно использовать буфер обмена): Внимание! Если используется Firebird 3.0, то нет смысла задавать параметры DataTypeCompatibility и MaxParallelWorkers, т.к. они были введены для Firebird 4.0. #------------------------------- начало блока -------------------------- # Firebird будет "слушать" TCP-порт 3050 RemoteServicePort = 3050 # В ОЗУ будет храниться 16384 страниц (примерно 250 МБ) # Если на компьютере много ОЗУ, то можно увеличить это значение (либо наоборот уменьшить) DefaultDbCachePages = 16384 # Отключение "современных" типов данных, которые отсутствовали в Firebird 3.0 DataTypeCompatibility = 3.0 # Максимальное количество параллельных потоков (например, при восстановлении БД) # Если процессор многоядерный, то можно увеличить данное значение MaxParallelWorkers = 2 # Лимит памяти ОЗУ, используемой для выполнения запросов. # Если на компьютере много ОЗУ, то можно увеличить это значение, например указать =1G TempCacheLimit = 200M #------------------------------- конец блока -------------------------- 3.3 Нажать комбинацию "Ctrl+X", затем "Y" (Yes), затем Enter. ================================= # 4. Создание группы kmazs-admins ================================= Внимание! Если вы установили firebird / reddatabase на сервер, где не будет программы "КМАЗС-ОФИС", то группа "kmazs-admins" там не требуется. В этом случае не выполняйте данный пункт. Если вы ещё не запускали установку deb-пакета программы КМАЗС-ОФИС, то группа kmazs-admins отсутствует. Эта группа необходима для доступа к файлу базы данных. Для создания группы "kmazs-admins" используйте команду: sudo groupadd kmazs-admins ========================================================================= # 5. Добавление пользователя firebird / reddatabase в группу kmazs-admins ========================================================================= Внимание! Если вы установили firebird / reddatabase на сервер, где не будет программы "КМАЗС-ОФИС", то группа "kmazs-admins" там не требуется. В этом случае не выполняйте данный пункт. Внесение изменений в папке "/opt/kmazs" доступна только пользователям, состоящим в группе "kmazs-admins". Для того, чтобы СУБД Firebird / RedDatabase могла работать с файлом базы данных, необходимо соответствующего пользователя (firebird либо reddatabase) включить в группу "kmazs-admins". Если вы установили firebird, но ещё не запускали установку rpm-пакета программы КМАЗС-ОФИС, то добавьте пользователя "firebird" в группу "kmazs-admins" с помощью команды: sudo usermod -aG kmazs-admins firebird Если вы установили RedDatabase, то добавьте пользователя "reddatabase" в группу "kmazs-admins" с помощью команды: sudo usermod -aG kmazs-admins reddatabase ================================ # 6. Перезапуск службы firebird ================================ После изменения файла "firebird.conf", а также после добавления firebird / reddatabase в группу kmazs-admins необходимо перезапустить службу firebird: При использовании Firebird 3.0: sudo systemctl stop firebird3.0 sudo systemctl start firebird3.0 При использовании Firebird 5.0 / RedDatabase: sudo systemctl stop firebird sudo systemctl start firebird При этом, если установлен RedDatabase, то будет перезапущен именно RedDatabase ========================================== # 7. Автоматический запуск службы firebird ========================================== Для включения режима автоматического запуска службы firebird (при включении компьютера) необходимо использовать команду: При использовании Firebird 3.0: sudo systemctl enable firebird3.0 При использовании Firebird 5.0 / RedDatabase: sudo systemctl enable firebird В результате выполнения команды будет создана символическая ссылка на файл firebird.service и выдано сообщение "Created symlink". Данная команда не запускает службу firebird автоматически. Для запуска используйте параметр "start" (см. выше). ============================================================== # 8. Создание символической ссылки "/opt/kmazs/libfbclient.so" ============================================================== Программа КМАЗС-ОФИС использует символическую ссылку "/opt/kmazs/libfbclient.so" для загрузки клиентской библиотеки, с помощью которой производится подключение к базе данных. Заранее убедитесь в наличии каталога "/opt/kmazs" (если его ещё нет, то создайте его с помощью "sudo mkdir /opt/kmazs/"). Для создания символической ссылки используйте одну из команд (в зависимости от способа установки firebird / RedDatabase): Если установлен firebird 3.0.xxx из репозитория: sudo ln -sf /usr/lib/x86_64-linux-gnu/libfbclient.so.2 /opt/kmazs/libfbclient.so Если установлен RedDatabase: sudo ln -sf /opt/RedDatabase/lib/libfbclient.so.2 /opt/kmazs/libfbclient.so Если установлен firebird с использованием инсталлятора с официального сайта: sudo ln -sf /opt/firebird/lib/libfbclient.so.2 /opt/kmazs/libfbclient.so ================================= # 9. Установка чистой базы данных ================================= В составе архива программы КМАЗС-ОФИС присутствуют файлы базы данных под следующие версии Firebird: KMAZSBASE_CLEAR_FB3.FDB - для Firebird 3.0 KMAZSBASE_CLEAR_FB4.FDB - для Firebird 4.0 KMAZSBASE_CLEAR_FB5.FDB - для Firebird 5.0 KMAZSBASE_CLEAR_RED3.FDB - для RedDatabase 3.0 KMAZSBASE_CLEAR_RED5.FDB - для RedDatabase 5.0 После распаковки архива они появятся в каталоге /opt/kmazs/kmazs-clear-db Это связано с тем, что заранее неизвестно, какую версию Firebird пользователь сможет установить на Линукс. Файлы появятся в папке "/opt/kmazs/kmazs-clear-db" после распаковки архива с программой КМАЗС-ОФИС. В дальнейшем необходимо скопировать нужный файл в папку "/opt/kmazs/DataBase", а затем переименовать файл (убрать слово "CLEAR"). Для копирования файла использовать команду: sudo cp /opt/kmazs/kmazs-clear-db/KMAZSBASE_CLEAR_FB3.FDB /opt/kmazs/DataBase/KMAZSBASE.FDB ======================================================= # 10. Настройка группы "firebird" для файла базы данных ======================================================= Внимание! Если вы установили Firebird на сервере, на котором не планируется использование программы КМАЗС-ОФИС, то установите в качестве владельца для папки "/opt/kmazs/DataBase" и файла "KMAZSBASE.FDB" группу "firebird" и дайте ей права на запись: Команда для установки группы "firebird" в качестве владельца папки "DataBase" и её содержимого: sudo chown -R :firebird /opt/kmazs/DataBase Команда для выдачи флагов "rwx" группе-владельцу для папки DataBase и её содержимого: sudo chmod -R g+rwx /opt/kmazs/DataBase Флаг "x" будет выставлен также для файла "KMAZSBASE.FDB" (это рекомендация от разработчиков). ============================= # 11. Проверка TCP-порта 3050 ============================= По умолчанию firewall в РЕД ОС выключен. При необходимости можно его включить. Убедитесь, что Firebird слушает порт 3050 на всех сетевых интерфейсах. Выполните команду: sudo ss -tlpn | grep :3050 Должно быть 0.0.0.0:3050 (либо *:3050). # Посмотреть текущие правила INPUT sudo iptables -L INPUT -n --line-numbers # Разрешить порт 3050 sudo iptables -A INPUT -p tcp --dport 3050 -j ACCEPT Учтите: правила iptables по умолчанию не сохраняются после перезагрузки. ======================== # Дополнительные команды ======================== Определить, где находится файл настроек firebird.conf sudo find / -name "firebird.conf" 2>/dev/null Определить, запущен ли процесс firebird: ps aux | grep [f]irebird Определить версию ODS (при использовании Firebird 5.0): /usr/bin/gstat-fb "/opt/kmazs/DataBase/KMAZSBASE.FDB" -h либо /usr/bin/fbstat "/opt/kmazs/DataBase/KMAZSBASE.FDB" -h Определить версию ODS (при использовании RedDatabase 5.0): /opt/RedDatabase/bin/gstat "/opt/kmazs/DataBase/KMAZSBASE.FDB" -h