Când spui „Am creat un serviciu”, mă întreb dacă vrei să spui „Am creat un script shell” sau ceva asemănător. Deoarece crearea unui serviciu ar implica scrierea unui .serviciu
fișier, care reprezintă 90% din provocarea în îndeplinirea sarcinii.
Deci, de dragul acestui răspuns, voi presupune că ați creat un script shell numit query_db.sh
. Următorul pas va fi crearea .serviciu
fișier, apoi activați-l.
Iată cum creați un serviciu:
- Deschideți terminalul (dacă nu este deja deschis)
- Creați un fișier nou pentru serviciu. O sa-l sun pe al meu
query_db.service
:
sudo vi /etc/systemd/system/query_db.service
Notă: Simțiți-vă liber să utilizați orice editor de text doriți. Utilizarea vi
în acest exemplu nu este nici o sugestie, nici o aprobare. Este doar o forță a obiceiului.
- Lipiți următoarele în noul fișier, editând valorile relevante acolo unde este cazul:
[Unitate]
Descriere=Efectuați o interogare
[Serviciu]
User=dheeraj
WorkingDirectory=/home/dheeraj/scripts
ExecStart=/home/dheeraj/scripts/query_db.sh
Tip=simplu
TimeoutStopSec=10
Restart=la eșec
RestartSec=5
[Instalare]
WantedBy=multi-user.target
Notă: Asigurați-vă că schimbați Utilizator
, WorkingDirectory
, și ExecStart
valorile la ceva corect. Celelalte elemente pot rămâne neatinse dacă nu sunteți sigur de cum să le configurați.
- Verificați dacă fișierul script este executabil:
sudo chmod +x /home/dheeraj/scripts/query_db.sh
- Reîncărcați
systemd
daemoni:
sudo systemctl daemon-reload
- Activează-ți demonul:
sudo systemctl enable query_db
- Începeți demonul:
sudo systemctl start query_db
Cam despre asta e. Acum puteți verifica starea serviciului dvs. cu:
sudo systemctl status query_db
Și, desigur, vă puteți opri serviciul cu:
sudo systemctl stop query_db
Dacă preferați să utilizați comenzile mai scurte, schimbați acțiunea cu numele serviciului:
starea serviciului sudo query_db
sudo service query_db stop
Asta este într-adevăr tot ceea ce este.