Установка на SUSE Linux Enterprise / OpenSUSE¶
Рекомендуется ознакомиться с разделом Общая информация.
Выполните шаги из раздела Подготовка дистрибутива TESSA.
Для SUSE Linux Enterprise 15
добавьте репозитории SUSE Linux Enterprise Workstation Extension
и SUSE Package Hub
, который содержит некоторые из требуемых пакетов.
Обновите информацию из репозиториев и обновите установленные пакеты до последних версий.
sudo zypper refresh && sudo zypper -n update
Дождитесь окончания обновлений, после чего перезагрузите компьютер.
Установите зависимости, которые потребуются серверу приложений TESSA.
sudo zypper -n install libunwind libicu
Для OpenSUSE
и SUSE Linux Enterprise 15
дополнительно выполните команду:
sudo zypper -n install libgdiplus0
Для SUSE Linux Enterprise 15
дополнительно выполните команды:
cd ~
wget http://download.opensuse.org/repositories/security:/tls/SLE_15/x86_64/libopenssl1_0_0-1.0.2p-49.1.x86_64.rpm
sudo rpm -ivh ~/libopenssl1_0_0-1.0.2p-49.1.x86_64.rpm
rm ~/libopenssl1_0_0-1.0.2p-49.1.x86_64.rpm
Для OpenSUSE
и SUSE Linux Enterprise 12
дополнительно выполните команду:
sudo zypper -n install libopenssl1_0_0
Для SUSE Linux Enterprise 12
выполните регистрацию сервера, выполнив список команд ниже.
Note
В команде SUSEConnect -r 1234567890ABCD -e your@email.com
после ключа -r
укажите ваш регистрационный код, который высылается на почту после регистрации на сайте SUSE. После ключа -e укажите почтовый адрес, использованный при регистрации.
Tip
Описание процесса регистрации доступно на портале технической поддержки SUSE: https://www.suse.com/support/kb/doc/?id=7016626
sudo zypper refresh && sudo zypper -n install SUSEConnect
sudo SUSEConnect -r 1234567890ABCD -e your@email.com
sudo SUSEConnect -p PackageHub/12/x86_64
sudo SUSEConnect -p sle-sdk/12/x86_64
Для SUSE Linux Enterprise 15
опционально установите текстовый редактор nano
:
sudo zypper -n install nano
Для SUSE Linux Enterprise 12
опционально установите текстовый редактор nano
:
cd ~
wget https://nano-editor.org/dist/v2.5/RPMS/nano-2.5.3-1.x86_64.rpm
sudo rpm -ivh ~/nano-2.5.3-1.x86_64.rpm
rm ~/nano-2.5.3-1.x86_64.rpm
Для SUSE Linux Enterprise 15
и SUSE Linux Enterprise 12
выполните команду:
sudo ln -s /lib64/libdl.so.2 /lib64/libdl.so
Установка и настройка PostgreSQL¶
Для SUSE Linux Enterprise 12
подключите репозиторий для установки PostgreSQL.
На вопрос по доверию для ключа, полученного из репозитория PostgreSQL - “Do you want to reject the key, trust temporarily, or trust always?” - нажмите [t]
(доверять временно) или [a]
(доверять постоянно), затем нажмите [Enter]
.
sudo zypper addrepo https://download.postgresql.org/pub/repos/zypp/repo/pgdg-sles-10.repo
sudo zypper refresh
Установите из репозитория и выполните первичную настройку сервера PostgreSQL.
Для SUSE Enterprise Linux 15
:
sudo zypper -n install postgresql-server postgresql-contrib
sudo systemctl enable postgresql && sudo systemctl start postgresql
Для SUSE Enterprise Linux 12
:
sudo zypper -n install postgresql10-server postgresql10-contrib
sudo /usr/pgsql-10/bin/postgresql-10-setup initdb
sudo systemctl enable postgresql-10 && sudo systemctl start postgresql-10
Для OpenSUSE
:
sudo zypper -n install postgresql-server postgresql-contrib
sudo systemctl enable postgresql && sudo systemctl start postgresql
Создайте пользователя, от которого будут подключаться сервисы и утилиты TESSA.
sudo su
su - postgres
psql
CREATE USER tessa WITH SUPERUSER PASSWORD 'Master1234';
\q
exit
exit
Откройте для редактирования файл pg_hba.conf
.
Для SUSE Enterprise Linux 15
и OpenSUSE
:
sudo nano /var/lib/pgsql/data/pg_hba.conf
Для SUSE Enterprise Linux 12
:
sudo nano /var/lib/pgsql/10/data/pg_hba.conf
Задайте в нём настройки в соответствии с разделом Настройка доступа по сети к PostgreSQL.
Откройте для редактирования файл postgresql.conf
.
Для SUSE Enterprise Linux 15
и OpenSUSE
:
sudo nano /var/lib/pgsql/data/postgresql.conf
Для SUSE Enterprise Linux 12
:
sudo nano /var/lib/pgsql/10/data/postgresql.conf
Найдите в нём строку listen_addresses
(нажмите [Ctrl]+[W]
и введите искомую строку). Теперь уберите ведущий символ комментария #
. И замените следующим образом:
listen_addresses = '*'
Tip
Вы можете также указать listen_addresses = 'localhost'
, если СУБД располагается на том же сервере, что и сервер приложений.
Tip
В случае, если одновременных пользователей больше 100, рекомендуется указать max_connections = 200
и обратиться к документации по администрированию PostgreSQL.
Закройте редактор с сохранением изменений. Перезапустите сервис PostgreSQL командой:
Для SUSE Enterprise Linux 15
и OpenSUSE
:
sudo systemctl restart postgresql
Для SUSE Enterprise Linux 12
:
sudo systemctl restart postgresql-10
Настройка веб-сервиса TESSA и создание сертификатов¶
sudo nano /etc/systemd/system/tessa.service
Вставьте этот текст (сочетание клавиш [Shift]+[Insert]
).
Теперь настройте автозапуск сервиса и запустите его, выполнив команду:
sudo systemctl enable tessa && sudo systemctl start tessa
Далее обратитесь к раздел Создание самоподписанного сертификата, чтобы создать сертификаты. Или просто выполните команды:
sudo mkdir -p /etc/pki/tls/certs /etc/pki/tls/private
sudo openssl req -x509 -nodes -days 3650 -newkey rsa:2048 -keyout /etc/pki/tls/private/localhost.key -out /etc/pki/tls/certs/localhost.crt
Установка и настройка веб-сервера Nginx¶
Для SUSE Enterprise Linux 12
перед установкой подключите репозитории Nginx, выполнив команды:
sudo zypper addrepo -G -t yum -c 'http://nginx.org/packages/sles/12' nginx
cd ~
wget http://nginx.org/keys/nginx_signing.key
sudo rpm --import ~/nginx_signing.key
rm ~/nginx_signing.key
Для всех дистрибутивов
установите Nginx:
sudo zypper -n install nginx
Для SUSE Enterprise Linux 15
и OpenSUSE
:
sudo nano /etc/nginx/nginx.conf
Найдите раздел server {
и удалите его (сочетание клавиш [Ctrl]+[K]
удаляет строку). Удалять строки, начинающиеся с символа комментария #
, необязательно.
Вставьте на место удалённого этот текст (сочетание клавиш [Shift]+[Insert]
).
Для SUSE Enterprise Linux 12
:
sudo nano /etc/nginx/conf.d/default.conf
Удалите содержимое файла (сочетание клавиш [Alt]+[T]
) и вставьте этот текст (сочетание клавиш [Shift]+[Insert]
).
Для всех дистрибутивов
: настройте автозапуск сервера и запустите его, выполнив команду:
sudo systemctl enable nginx && sudo systemctl start nginx
Настройка LibreOffice или OpenOffice¶
Убедитесь, что установлен офисный пакет LibreOffice или OpenOffice. Также для этих дистрибутивов проверьте, что установлен пакет unoconv
.
Для SUSE Enterprise Linux 12
подключите репозиторий с пакетом unoconv
:
sudo zypper addrepo https://download.opensuse.org/repositories/Publishing/SLE_12_SP3/Publishing.repo
sudo zypper refresh
На вопрос по доверию для ключа, полученного из репозитория с пакетом unoconv
- “Do you want to reject the key, trust temporarily, or trust always?” - нажмите [t]
(доверять временно) или [a]
(доверять постоянно), затем нажмите [Enter]
.
Для всех дистрибутивов
выполните команду:
sudo zypper -n install unoconv
В конфигурационном файле сервиса Chronos потребуется указать приложение unoconv
для использования вместо встроенного скрипта.
nano ~/tessa/chronos/app.json
Найдите строку:
"UnoconvExternalCommand": null,
Замените её на:
"UnoconvExternalCommand": "unoconv",
При конвертации для приложения unoconv
требуются права на папку ~/.cache/dconf
. Приложение будет запущено от того же пользователя, что и сервис Chronos
(в этой инструкции подразумевается текущий пользователь).
Для установки прав выполните команду (если папка ещё не создана, то будет создана):
mkdir -p ~/.cache/dconf
sudo chown -R $USER ~/.cache/dconf
Установка системы и настройка сервиса Chronos¶
Чтобы установить систему на новую базу данных, запустите следующие команды:
cd ~/build/linux
./setup.sh
Обратитесь к разделу Установка TESSA на новую базу данных за описанием процесса установки.
Обычно достаточно нажать: [Enter]; tessa [Enter]; [Enter]; [Enter]; [Enter]; [Enter].
По завершении установки перезапустите веб-сервис:
sudo systemctl restart tessa
Теперь выполним настройку Chronos. Создайте файл для сервиса Chronos:
sudo nano /etc/systemd/system/chronos.service
Вставьте этот текст (сочетание клавиш [Shift]+[Insert]
).
Теперь настройте автозапуск Chronos и запустите его, выполнив команду:
sudo systemctl enable chronos && sudo systemctl start chronos
Обязательно проверьте, функционирует ли unoconv
. Для этого выполните команду (подождав полминуты, пока сервис Chronos инициализируется):
sudo systemctl status chronos
Найдите процессы unoconv
и LibreOffice среди запущенных процессов (последние две строки):
Процессы могут отсутствовать или появиться и тут же завершиться при запуске сразу после установки. В этом случае либо перезагрузите компьютер, либо закройте, а затем сразу откройте окно терминала, в котором перезапустите сервис Chronos:
sudo systemctl restart chronos
Подождите полминуты и запросите статус для сервиса Chronos. Он должен показать информацию, аналогичную приведённой на изображении выше.
Обратитесь к разделу Проверка установленной системы TESSA, чтобы проверить работу системы.