![AOMEI BACKUPPER: Acesta este instrumentul de backup de care aveți nevoie?](/f/b386ea739bebc27b874ec640bc90b848.png?width=100&height=100)
Systemd este o suită de software modernă care oferă multe componente pe un Linux sistem, inclusiv un manager de sistem și servicii. Este compatibil cu SysV și LSB init și funcționează ca înlocuitor pentru sysvinit.
Un serviciu systemd este definit într-un fișier unitar (o unitate este o reprezentare a unui serviciu și a resurselor sistemului, cum ar fi dispozitive, socluri, puncte de montare etc.). Fișierele unității de service personalizate ar trebui să fie stocate în /etc/systemd/system/ director și trebuie să aibă un .serviciu
extensie. De exemplu, un obicei aplicația de testare utilizări ale serviciului /etc/systemd/system/test-app.service fisierul unitar.
[ S-ar putea sa-ti placa si: De ce a trebuit înlocuit „init” cu „systemd” în Linux ]
Un fișier unitar este un fișier în stil ini cu text simplu, care include de obicei trei secțiuni comune. Prima secțiune este de obicei Unitate secțiune care conține informații generice despre unitate care nu sunt dependente de tipul unității.
Următoarea secțiune este secțiunea tip unitate, pentru un serviciu, este a
Serviciu secțiune. Și secțiunea finală este Instalare secțiunea care conține informații de instalare pentru unitate.În acest ghid, vom arăta cum să creați un nou systemd service și gestionați serviciul folosind comanda systemctl, în Linux.
Pentru a rula o aplicație sau program sau script ca serviciu sub systemd, puteți crea un nou serviciu systemd după cum urmează. Începeți prin a crea serviciul unitate fișier numit test-app.service (nu uitați să înlocuiți aplicația de testare cu numele real al serviciului sau al aplicației dvs.), sub /etc/systemd/system/:
# vi /etc/systemd/system/test-app.service.
Următoarea configurație este utilizată pentru a defini un serviciu pentru rularea a Balon folosind aplicația Gunicorn, un server HTTP Python WSGI pentru UNIX.
[Unitate] Descriere=Daemon Gunicorn pentru servirea aplicației de testare. După=network.target [Serviciul] Utilizator=rădăcină. Grup=rădăcină. WorkingDirectory=/apps/test-app/ Environment="PATH=/apps/test-app/bin" ExecStart=/apps/test-app/bin/gunicorn --workers 9 -t 0 --bind 127.0.0.1:5001 -m 007 wsgi: app --log-level depanare --access-logfile /var/log/gunicorn/test_app_access.log --error-logfile /var/log/gunicorn/test_app_error.log. ExecReload=/bin/kill -s HUP $MAINPID. RestartSec=5 [Instalare] WantedBy=multi-user.target.
Să descriem pe scurt fiecare directivă de configurare din configurația de mai sus:
.vrea/
sau .necesita/
directorul fiecăreia dintre unitățile (unitățile) enumerate, multi-utilizator.tinta în acest caz, când test-app.service unitatea este activată folosind comanda systemctl enable.Puteți găsi toți parametrii de configurare a unității de service, bine descriși în Configurarea unității de service documentație.
Salvați fișierul unității și închideți-l. Apoi reîncărcați systemd cu acest nou fișier de unitate de serviciu executând:
# Comanda systemctl daemon-reload.
Nu uitați să rulați întotdeauna această comandă după editarea unui fișier unitate.
Pentru a porni/activa serviciul, rulați comanda systemctl după cum urmează:
# systemctl start test-app.service.
Pentru a verifica dacă serviciul rulează sau nu, lansați comanda systemctl așa cum se arată.
# systemctl status test-app.service.
Pentru a activa serviciul să pornească la pornirea sistemului, utilizați activare systemctl comanda. Puteți verifica dacă serviciul a fost activat folosind systemctl este activat comandă după cum urmează:
# systemctl enable test-app.service. # systemctl este activat test-app.service.
Alternativ, puteți, de asemenea, să activați și să porniți serviciul în același timp, așa cum se arată.
# systemctl enable --now test-app.service.
Pentru a opri/dezactiva serviciul, rulați systemctl stop comandă după cum urmează:
# systemctl stop test-app.service.
Pentru a reporni serviciul, rulați reporniți systemctl comandă după cum urmează:
# systemctl reporniți test-app.service.
De asemenea, puteți dezactiva un serviciu pentru a preveni pornirea acestuia la pornirea sistemului, folosind ssystemctl dezactivat comanda. Puteți verifica dacă serviciul a fost activat folosind systemctl este activat comandă după cum urmează:
# systemctl dezactivează test-app.service. # systemctl este dezactivat test-app.service.
Alternativ, îl puteți dezactiva și opri în același timp, așa cum se arată.
# systemctl disable --now test-app.service.
Pentru mai multe detalii despre gestionarea serviciilor Systemd și a altor resurse, rulați:
# man systemctl.