Linuxi käskude käivitamine taustal võimaldab kasutajal jätkata muude toimingute täitmist, kui käsk töötab. Käsu käivitamiseks taustal on mitu võimalust; üks lihtsamaid meetodeid on lisada ampersand (&) käsurea lõpus.
Kui protsess on seadistatud taustal töötama, pääseme sellele juurde kasutades töökohad käsk. Selles artiklis kirjeldatakse kõiki erinevaid viise, kuidas taustal käsku käitada.
Taustprotsessi käivitamise erinevate viiside loend on järgmine:
Järgnevalt on üksikasjalikult kirjeldatud kõiki taustprotsessi käitamise meetodeid.
1: Ampersandi (&) märgi kasutamine
Linuxis on Ampersand (&) shell-operaator, mis saadab taustal käsu eraldi protsessina. Kombineerides ampersandi (&) käsuga, käivitatakse see taustprotsessina, mis võimaldab kestil kohe teiste käskude töötlemist jätkata.
Ampersand-märki kasutava taustprotsessi süntaks:
$ [ käsk ] &
Ampersandi sümbol lisatakse alati käsu lõppu ühe tühikuga '&' ja käsu viimane märk.
Näiteks looge uneprotsess 40 sekundiks.
$ magama 40
Nagu näeme, töötab terminal unekäsku ega luba meil muid toiminguid täita.
Nüüd vajutage 'Ctrl + Z' selle protsessi peatamiseks. Järgmisena käivitame seekord sama unerežiimi, kuid kasutades ampersandi operaatorit, seadistatakse see taustal.
Nüüd on see protsess tagaplaanil. Taustal töötava protsessi loetlemiseks kasutage järgmist.
Nüüd tapke see taustprotsess, kasutades:
Näiteks käimasoleva unerežiimi lõpetamiseks kasutage järgmist.
Nüüd suletakse uneprotsess, et kinnitada taustal töötava protsessi loendit kasutades.
Siin on veel üks näide kasutamisest & ampersand märk on käsuga gedit.
Näiteks kui avame gedit tekstiredaktori otse terminali kasutades, kasutame kindlasti shelli muuks tööks või muidu peame esmalt praeguse protsessi peatama.
$ gedit
Ülaltoodud käsu kasutamisel avaneb tekstiredaktor, mis avab selle terminali ees.
Kuid pärast '&' kasutamist käsu gedit lõpus saab kesta kasutada muude protsesside jaoks:
2: käsu 'bg' kasutamine
Käsk bg on teine viis käskude taustal käivitamiseks. See käsk võimaldab kasutajal jätkata tööd terminalis, kui protsess töötab taustal, vabastades terminali muude toimingute jaoks. Käsku bg kasutatakse pika taustaprotsessi jaoks, mis töötab isegi siis, kui kasutaja logib välja.
Nagu ampersand-märk, ei pea me muretsema selle iga kord käsule lisamise pärast, kui lihtsalt saadate terminali bg-teksti. See käivitab protsessi taustal ja vabastab terminali edaspidiseks kasutamiseks.
Näiteks kasutame eelmist näidet ja saadame unerežiimi käsu, kasutades:
$ magama 40
Nüüd protsess töötab ja terminal pole kasutamiseks saadaval. Käsu bg kasutamiseks ja selle protsessi taustal saatmiseks peame esmalt peatama praeguse täitmisprotsessi, vajutades nuppu 'Ctrl + Z' ja täites selle käsu:
Pärast bg-käsu saatmist hakkas uneprotsess taustal jätkuma. Näeme lõpus ampersandi '&', mis näitab, et praegune protsess töötab taustal.
Taustal toimuva protsessi käivitamise tööde kontrollimiseks toimige järgmiselt.
Taustal töötava käsu kontrollimiseks toimige järgmiselt.
Praeguse protsessi lõpetamiseks kasutage selle töö ID-d koos kill-käsuga. Töö ID kontrollimiseks käivitage:
Pärast tööde ID tapmisprotsessi teadmist, kasutades:
Näiteks praeguse töötava uneprotsessi lõpetamiseks kasutage järgmist.
Et kontrollida, kas protsess on surnud või mitte, käivitage käsk jobs:
Näeme, et uneprotsess taustal enam ei tööta:
3: käsu nohup kasutamine
Käsk nohup on meie Linuxis töötavate taustaprotsesside loendis kolmas. Käsk tähistab 'no hang up' ja seda kasutatakse protsessi lõpetamise vältimiseks kuni terminaliseansi lõpuni. Kui protsess käivitatakse nohupi abil, jätkab see töötamist isegi siis, kui kasutaja logib välja ja protsessi väljund suunatakse ümber faili nimega 'nohup.out' .
Käsk nohup google'i pidevaks taustal pingimiseks on ja väljund suunatakse ümber tekstifaili GooglePing.txt:
$ nohup ping Google'i com > GooglePing.txt &
Pärast selle käsu kirjutamist näeme, et terminal on vaba ja taustal töötab taustaprotsess google'i pidevaks pingimiseks.
Logifailile juurdepääsuks saame kasutada järgmist käsku:
Logifailile pääseb juurde ka avaekraanilt GUI abil.
4: Disown Command kasutamine
Disown-käsk eemaldab kestast protsessi ja käivitab selle taustal. Kui protsessist keeldutakse, ei seostata seda enam terminaliga ja jätkab töötamist isegi pärast seda, kui kasutaja logib välja või sulgeb terminali.
Varem oleme kasutanud ampersandi '&' käsku, mis saadab protsessi pärast selle käivitamist taustal, kuid kesta sulgemisel protsess lõpetatakse. Sellest lahtiütlemiskäsust vabanemiseks on olemas.
Disown-käsk ei saa iseseisvalt töötada, kuid taustal peab töötama vähemalt üks protsess.
Käivitage allolev käsk koos a & ampersandi märk, mis saadab teie käsu taustale.
$ ping Google'i com > GooglePing.txt &
Pärast faili loomist saame selle loendisse panna, kasutades käsku jobs.
Nüüd töötab meie protsess taustal, et see terminali kasutamisest eraldada:
Käivitage käsk jobs uuesti, et kinnitada, et protsess on terminalist eraldatud:
Kuna meie protsess praegu töötab, kuid seda enam terminalis ei kuvata:
Protsessi kinnitamiseks saame sellele ping-failile juurde pääsemiseks kasutada käsku cat:
Oleme selle protsessi edukalt terminalist eraldanud, kuid see töötab endiselt taustal.
5: utiliidi tmux kasutamine
Tmux on omamoodi terminali multiplekseri utiliit. Kasutades tmuxi, saame ühes shellis luua mitu terminaliseanssi. See annab võimaluse käivitada protsesse taustal.
Taustprotsessi käivitamiseks Tmuxis saate luua uue seansi ja seejärel sellest lahti ühendada, kasutades klahvikombinatsiooni Ctrl-b, millele järgneb d.
Ubuntu ja Linuxi utiliidi tmux installimiseks kasutage järgmist.
$ sudo asjakohane installida tmux
Fedora käivitamiseks installimiseks toimige järgmiselt.
Arch Linuxi installimiseks toimige järgmiselt.
Nüüd käivitage uue terminali avamiseks käsk tmux:
Uue tmuxi seansi loomiseks kasutage järgmist.
Kõigi tmuxi seansside loetlemiseks toimige järgmiselt.
Tmuxi seansi hävitamiseks kasutage käsku järgmiselt:
Näiteks tappa '0' tmuxi seansi kasutamine:
Siin loetlesime praegu töötava tmuxi aktiivse seansi ja tapame selle ülaltoodud käsu abil:
-
- Tmuxi seansist eraldamiseks vajutage 'Ctrl + B + D' .
- Kõigi käskude loendi kuvamiseks vajutage 'Ctrl+B+?' .
- Tmuxi akende vahel vahetamiseks vajutage 'Ctrl + B + O' .
Tmuxi terminali vertikaalseks poolitamiseks vajutage 'Ctrl+B' ja tüüp % .
Põhiterminali naasmiseks alates tmux kasuta:
Järeldus
Taustarakenduste käivitamine Linuxis on võimas funktsioon, mis võimaldab kasutajatel hoida oma kaua kestnud ülesandeid töös isegi pärast terminalist väljalogimist või akna sulgemist. Tavaliselt an ampersand & märk või bg käsku kasutatakse protsessi saatmiseks taustal. Samas saame ka kasutada nohup või lahti ütlema käsk protsessi terminalist eraldamiseks. Lõpuks saame kasutada tmux utiliit luua mitu terminali ja käivitada taustaprotsesse ilma terminali häirimata.