Kuinka pitää prosessit käynnissä Linuxin nohup-komennolla
Linux-komennolla nohup järjestelmä ohittaa HUP-komennon. Näin prosessit voivat jatkaa toimintaansa taustalla. Niiden tuloste ohjataan sitten tiedostoon nohup.out tai muuhun valitsemaasi tiedostoon.
Mikä on Linuxin nohup?
Jotta ymmärtäisi, mikä Linuxin nohup-komento on, kannattaa tarkastella SIGHUP-signaalia. Tämä on signaali, joka syntyy Linuxissa muun muassa silloin, kun käyttöjärjestelmän ja toisen sovelluksen välisessä datayhteydessä ilmenee vika. Tietyissä tilanteissa on kuitenkin välttämätöntä, ettei tätä signaalia lähetetä. Näin on silloin, kun sovelluksen on tarkoitus jatkaa toimintaansa myös sen jälkeen, kun käyttäjä on kirjautunut ulos järjestelmästä. Signaalin estämiseksi ja ohjelmien toiminnan jatkamiseksi taustalla käytetään Linuxin nohup-komentoa.
Miten Linuxin nohup-komento toimii?
Linuxin nohup-komento sisältyy kaikkiin yleisiin Linux-jakeluihin, kuten Debianiin ja Ubuntuun, joten sitä ei tarvitse asentaa erikseen. Sen avulla voit käskyttää järjestelmää suorittamaan tietyn ohjelman taustalla, jolloin se irrotetaan kirjautumiskomentotulkista. Kaikki tulosteet ohjataan automaattisesti nohup.out-kansioon. Pitkien prosessien kohdalla tämän etuna on, että voit kirjautua ulos keskeyttämättä prosessia.
Miltä Linuxin nohup-komennon syntaksi näyttää?
Linuxin nohup-komennon perusmuoto on aina sama:
$ nohup [Command] [Argument] [&]bash”[Komento]” ja ”[Argumentti]” ovat parametreja, joita voi muokata. Jos haluat, että prosessit jatkavat toimintaansa taustalla kirjautumisen jälkeen, käytä merkkiä ”[&]”.
Mitä vaihtoehtoja nohup-komennolla on?
Linuxin nohup-komento ei hyväksy muita vaihtoehtoja kuin kaksi vakiovaihtoehtoa: ”-h” tai ”–help” ja ”-v” tai ”–version”. Vain silloin, kun ”[komento]”-kohtaan ei anneta parametria, ”-p” tai ”–parents”-vaihtoehto on sallittu.
Esimerkkejä Linuxin nohup-komennosta
Lopuksi esittelemme muutaman esimerkin, jotta ymmärrät paremmin, miten komento toimii.
$ nohup bash example.shbashTämä suorittaa komennon etualalla. Komennon tuloste ohjataan automaattisesti tiedostoon nohup.out.
$ nohup bash example.sh > output.txtbashTämä komento ohjaa tulosteen tiedostoon output.txt.
$ nohup bash example.sh &bashTämän komennon avulla komento jää käynnissä ja jatkaa suorittamistaan taustalla. Jos haluat peruuttaa tämän ja tuoda komennon takaisin etualalle, voit suorittaa fg-komennon.