Systemd на примере сервиса для mikbill

https://habrahabr.ru/company/southbridge/blog/255845/
  • nano /etc/systemd/system/mikbill.service
[Unit]
Description=Mikbill
After=mysql.service
Requires=mysql.service
[Service]
Type=simple
PIDFile=/var/run/mikbill.pid
WorkingDirectory=/var/www/mikbill/admin/app/lib
User=root
Group=root
OOMScoreAdjust=-1000
#ExecStart=/opt/phpbrew/php/php-5.4.45/bin/php
/var/www/mikbill/admin/app/lib/mikbill.php kernel -d
ExecStart=/usr/bin/php /var/www/mikbill/admin/app/lib/mikbill.php kernel -d
ExecStop=/usr/local/bin/bundle exec service -S /var/run/mikbill.state stop
ExecReload=/usr/local/bin/bundle exec service -S /var/run/mikbill.state restart
TimeoutSec=300
Restart=always
[Install]
WantedBy=multi-user.target
Перезапустить демон systemd:
  • systemctl daemon-reload
Запустить:
  • systemctl start mikbill
Разрешаем автозапуск:
  • systemctl enable mikbill
Статус:
  • systemctl status mikbill
  • systemctl -l status mikbill
Вывод должен быть таким:
● mikbill.service - Mikbill
   Loaded: loaded (/etc/systemd/system/mikbill.service; enabled)
   Active: active (running) since Ср 2017-08-09 18:52:27 +05; 7min ago

Добавление в автозапуск
  • systemctl enable mikbill
  • systemctl enable radius
  • systemctl enable mysql
  • systemctl enable php-fpm

проверка автозапуска

  • systemctl is-enabled mikbill
  • systemctl is-enabled radius
  • systemctl is-enabled mysql


********** РАДИУС **********
  • mkdir /var/log/radius
  • nano /etc/systemd/system/radius.service
[Unit]
Description=radius
After=mikbill.service
Requires=mysql.service
Requires=mikbill.service
[Service]
Type=simple
PIDFile=/var/run/radius.pid
#WorkingDirectory=/var/www/mikbill/admin/app/lib
User=root
Group=root
OOMScoreAdjust=-1000
ExecStart=/usr/local/sbin/radiusd -f
ExecStop=/usr/local/bin/bundle exec service -S /var/run/radius.state stop
ExecReload=/usr/local/bin/bundle exec service -S /var/run/radius.state restart
TimeoutSec=300
Restart=always
[Install]
WantedBy=multi-user.target


********** MySQL **********

  • nano /etc/systemd/system/mysql.service
[Unit]
Description=MySQL Server
After=network.target

[Service]
Type=simple
PermissionsStartOnly=true
ExecStartPre=/bin/mkdir -p /var/run/mysqld
ExecStartPre=/bin/chown mysql:mysql -R /var/run/mysqld

ExecStart=/usr/sbin/mysqld --basedir=/usr --datadir=/var/lib/mysql --plugin-dir=/usr/lib64/mysql/plugin --user=mysql --log-error=/var/log/mysqld.log --pid-file=/var/lib/mysql/mysq.pid --socket=/var/lib/mysql/mysql.sock --port=3306
#Deb
#ExecStart=/usr/sbin/mysqld --basedir=/usr --datadir=/var/lib/mysql --plugin-dir=/usr/lib/mysql/plugin --user=mysql --log-error=/var/log/mysqld.log --pid-file=/var/run/mysqld/mysqld.pid --socket=/var/run/mysqld/mysqld.sock --port=3306


TimeoutSec=300
PrivateTmp=true
User=mysql
Group=mysql                                          
WorkingDirectory=/usr                                
OOMScoreAdjust=-1000                                
                                                     
[Install]                                            
WantedBy=multi-user.target


********************PHP fpm *********************
  • nano /etc/systemd/system/php-fpm.service
[Unit]
Description=php-fpm


[Service]
Type=simple
PIDFile= /var/run/php5-fpm.pid
PermissionsStartOnly=true

ExecStart=/bin/bash /opt/phpbrew/php/php-5.4.45/sbin/php-fpm

TimeoutSec=300
PrivateTmp=true
User=root
Group=root                                       
WorkingDirectory=/usr                              
OOMScoreAdjust=-1000                              
                                                   
[Install]                                          
WantedBy=multi-user.target






Комментарии

Популярные сообщения из этого блога

mikbill расшифровка завершений сессий

Accel-ppp команды

Zabbix agent установка и настройка