Ako vytvoriť novú službu s systemd

vytvoriť novú službu s systemd

Tento tutoriál (vytvoriť novú službu s systemd) popisuje kroky nasledovať program premeniť systemd služba, ktorá môže byť spustený automaticky pri spustení systému. Pre náš príklad, Vytvoríme vám službu spustiť démona Povodeň Štart ( deluged ), ale môžu byť použité na iný program.

Predpoklady

  • Mať administrátorské práva
  • Vedieť, ako používať terminál

How to create a new service with systemd

Vytvorenie programu zapuzdrenie skript

Prenasledovaný nepodporuje zastavenia alebo stimul parametre, Musíme vytvoriť skript, ktorý bude robiť, že. Môžeme uložiť skript v / usr / local / bin

sudo mačka> /usr/local/bin/deluge.sh

Then paste the following code:

#! / bin / bash 
# /usr/local/bin/deluge.sh 
#
 
function d_start ( ) 
{ 
	Echo  "Povodeň: starting service" 
	deluged --pidfile = / tmp / deluge.pid
	 sleep  5 
	Echo  "PID is $ (cat /tmp/deluge.pid) " 
}
 
function d_stop ( ) 
{ 
	Echo  "Povodeň: stopping Service (PID = $ (cat /tmp/deluge.pid) )" 
	kill $ ( cat  / tmp / deluge.pid ) 
	rm  / tmp / deluge.pid
 }
 
function d_status ( ) 
{ 
	ps  -ef  |  grep deluged |  grep  -v  grep 
	echo  "PID indicate indication file $ (cat /tmp/deluge.pid 2> / dev / null) " 
}
 
# Some Things That run always 
touch  / var / lock / deluge
 
# Management instructions of the service 
box  "$ 1"  in 
	start )
		d_start
		;; 
	Stop )
		d_stop
		;; 
	Reload )
		d_stop
		sleep  1
		d_start
		;; 
	Stav )
		d_status
		;; 
	* ) 
	Echo  "Usage: $ 0 {Štart | zastaviť | Aktualizuj | stav}" 
	Ukončite  1 
	;; 
antimikrobiálnych látok výstupu  0

Vytvorenie súboru služby

V Systemd, služby sú definované v súboroch vstupenky · nachádza sa v / atď / systemd / systém / .

Vytvoriť balík služieb pre naše program:

sudo mačka> /etc/systemd/System/deluge.Service

Then paste the following code:

[Jednotka]
Popis = potopa daemon po network.target = auditd.service

[Služba]
Typ = vetvenia ExecStart = / usr / miestne / bin / Štart deluge.sh ExecStop = / usr / miestne / bin / Stop deluge.sh ExecReload = / usr / miestne / bin / načítať deluge.sh

[Inštalácia]
WantedBy = multi-user.target

Inštalácia služby

Sme teraz musí načítať zoznam služieb:

sudo systemctl daemon reload

Potom aktivujte spustenie služby pri spustení:

sudo systemctl umožňujú deluge

Príkazy pre správu kľúčových služieb

Pre orientáciu, nasledujúce príkazy pre správu služieb:

V našom príklade, <service> == deluge

systemctl sudo 
objednávky Popis
Štart Spustiť službu
zastaviť Zastaviť službu
stav Stav služby
je povolené Či služba sa aktivuje pri štarte
zapnúť Aktívny štart služby
vypnúť Zakáže spustenie služby

Záver

Please note, services are launched by root , Takže ak ste už nastavený program s iným používateľom, to bude:

  • buď kópie konfigurácie root ,
  • alebo služby na správnu konfiguráciu (pre deluged je tu možnosť -config )

Tak, zostáva len overiť, že všetko funguje spustením služby:

sudo systemctl start deluge

Ak všetko, čo môžete reštartovať počítač skontrolovať, že sa služba spustí automaticky:

sudo reboot

Môže sa vám tiež páči

O autorovi: admin

nechať odpoveď

Vaša emailová adresa nebude zverejnená. Povinné polia sú označené *