Pri delu z storitve v distribucijiOdvisno od vrste sistema, ki ga uporabljate (SysV init, Upstart, systemd,…), se lahko način zaustavitve, zagona, zaustavitve, ponovnega zagona itd. Ustavi itd. To je točka, kjer mnogi dvomijo, kako se to dejansko naredi, in dejstvo, da obstaja več različnih sistemov, ne pomaga nekaterim bolj neizkušenim uporabnikom, ki to poskušajo narediti z napačnim ukazom.
Iz tega razloga bom pokazal preprosto vadnico, s katero vam bo jasneje, kako lahko delate v svojem distribucijskem sistemu, kakršen koli že je. Če želite to narediti, morate najprej jasno vedeti, kakšen demon uporabljate. Kot rečeno, vsi distroji ne uporabljajo enako tip zagonskega sistema. Pravzaprav, kot veste, so nekateri nasprotovali novemu sistemud in so s starim sistemom SysV ustvarili vilice ali derivate, kot je primer z Devuanom v primerjavi z Debianom ...
Kako vem, kakšen sistem uporablja moj distribucijski sistem? No, to lahko ugotovite tako, da poiščete te poti, in če jih imate, boste imeli ta sistem v svoji distribuciji:
- Če želite vedeti, ali ste sistemsko: poiščite pot / usr / lib / systemd
- Če želite vedeti, ali imate Upstart: poiščite to drugo pot / usr / share / upstart
- Če želite vedeti, ali imate SysV init: poiščite pot /etc/init.d
- Tu drugiTudi če je nekoliko redkejši, lahko v teh posebnih primerih naredite nekaj podobnega, če sumite, da niso zgoraj navedeni.
Še en način, kako to še bolj olajšati, ker je za vse enako, je v / proc iskati informacije o PID = 1, torej prvem postopku, iz katerega visijo ostali in ki natančno ustreza temu zagonskemu demonu. Če želite to narediti, zaženite naslednji ukaz in vrnil bo ime:
sudo stat /proc/1/exe
Zdaj veste, kakšen sistem imate, zato pojdimo ukaze, s katerimi lahko upravljate storitve:
- SysV toplota: /etc/init.d/[service_demon_name] [dejanje]
- sistemd: systemctl [dejanje] [ime demona]
- Na začetku: storitev [ime_demona storitve] [dejanje]
- drugi: Če uporabljate drug sistem, si oglejte priročnik. Na primer, nekateri redki primeri v Linuxu in drugih Unixih lahko uporabijo signal iz procesa SIGHUP za ponastavitev storitve: kill -HUP $ (cat / var / run / [service-PID])
bi smeli zamenjaj [dejanje] kaj morate storiti. Če morate na primer znova zagnati, uporabite ponastavitev, če želite ustaviti uporabo stop, če želite začeti uporabljati zvezdo itd. In zamenjajte [daemon_name] z imenom demona storitve, ki jo želite zagnati. Na primer:
systemctl reset httpd
Upam, da imate zdaj bolj jasno.
Ali še vedno obstajajo sistemi z nadgrajenim? Mislim, da le nekaj starega Ubuntuja.
Tudi če imate systemd, lahko še vedno imate mapo etc / init.d
Raje uporabljam kakšen drug ukaz, kot je ps ali pstree, in ne zlorabljam sudo-this-sudo-that.
pozdrav
Ukaz "service" deluje tako na sistemih init.d kot na systemd