Kako z ukazom nohup v sistemu Linux zagotoviti neprekinjeno delovanje procesov
Z uporabo ukaza nohup v sistemu Linux sistem prezre ukaz za prekinitev HUP. To omogoča, da procesi še naprej tečejo v ozadju. Izhod se nato preusmeri v datoteko nohup.out ali drugo datoteko po vaši izbiri.
Kaj je Linux nohup?
Da bi razumeli, kaj je ukaz nohup v sistemu Linux, je vredno pogledati signal SIGHUP. To je signal, ki se v sistemu Linux med drugim sproži, ko pride do prekinitve povezave na podatkovni povezavi med operacijskim sistemom in drugo aplikacijo. V nekaterih primerih pa je nujno, da se ta signal ne pošlje. Tako je v primeru, ko mora aplikacija delovati naprej tudi potem, ko se je uporabnik odjavil iz sistema. Za preprečitev signala in omogočanje nadaljnjega delovanja programov v ozadju se uporablja ukaz nohup v sistemu Linux.
Kako deluje ukaz nohup v sistemu Linux?
Linuxov ukaz nohup je vključen v vse običajne distribucije Linuxa, kot sta Debian in Ubuntu, zato ga ni treba namestiti posebej. Z njim lahko sistemu naročite, naj določen program izvaja v ozadju, s čimer ga ločite od prijavnega lupine. Vsi izhodni podatki se samodejno preusmerijo v mapo nohup.out. Pri daljših procesih je prednost tega, da se lahko odjavite, ne da bi prekinili proces.
Kako izgleda sintaksa ukaza nohup v sistemu Linux?
Osnovna sintaksa ukaza nohup v sistemu Linux je vedno enaka:
$ nohup [Command] [Argument] [&]bash»[Command]« in »[Argument]« sta parametra, ki ju je mogoče prilagoditi. Če želite, da se procesi po odjavi še naprej izvajajo v ozadju, uporabite »[&]«.
Katere možnosti ponuja ukaz nohup?
Linuxova komanda nohup ne sprejema nobenih drugih možnosti razen dveh standardnih: »-h« ali »–help« ter »-v« ali »–version«. Le če ne vnesete parametra za »[ukaz]«, je dovoljena možnost »-p« ali »–parents«.
Primeri uporabe ukaza nohup v sistemu Linux
Na koncu vam bomo za lažje razumevanje delovanja ukaza prikazali nekaj primerov.
$ nohup bash example.shbashS tem se ukaz izvede v ospredju. Izhod ukaza se samodejno preusmeri v datoteko nohup.out.
$ nohup bash example.sh > output.txtbashTa ukaz preusmeri izhod v datoteko output.txt.
$ nohup bash example.sh &bashČe uporabite ta ukaz, se bo ukaz ohranil in nadaljeval z izvajanjem v ozadju. Če želite to spremeniti in ukaz ponovno prikazati v ospredju, lahko izvedete ukaz fg.