Kā palaist Linux komandas fonā

Ka Palaist Linux Komandas Fona



Linux komandu palaišana fonā ļauj lietotājam turpināt citu uzdevumu izpildi, kamēr komanda joprojām darbojas. Lai izpildītu komandu fonā, ir vairāki veidi; viena no vienkāršajām metodēm ir pievienot (&) komandrindas beigās.

Kad process ir iestatīts darbībai fonā, mēs varam tam piekļūt, izmantojot darba vietas komandu. Šajā rakstā ir aprakstīti dažādi veidi, kā izpildīt komandu fonā.







Dažādu fona procesa palaišanas veidu saraksts ir šāds:



Tālāk ir sniegta detalizēta informācija par visām fona procesa palaišanas metodēm:



1. Ampersand (&) zīmes izmantošana

Operētājsistēmā Linux Ampersand (&) ir čaulas operators, kas fonā nosūta komandu kā atsevišķu procesu. Komandā apvienojot & (&), tā tiks izpildīta kā fona process, ļaujot apvalkam nekavējoties turpināt citu komandu apstrādi.





Sintakse fona procesam, izmantojot & zīmi:

$ [ komandu ] &


Simbols & vienmēr tiek pievienots komandas beigās ar vienu atstarpi '&' un pēdējais komandas raksturs.



Piemēram, izveidojiet miega procesu 40 sek.

$ Gulēt 40


Kā redzam, terminālis palaiž miega komandu un neļauj mums veikt citus uzdevumus.


Tagad nospiediet 'Ctrl + Z' lai apturētu šo procesu. Tālāk mēs šoreiz izpildīsim to pašu miega komandu, bet, izmantojot un operatoru &, tā tiks iestatīta fonā.

$ Gulēt 40 &



Tagad šis process ir fonā. Lai uzskaitītu fona darbības procesu, izmantojiet:

$ darba vietas -l



Tagad nogaliniet šo fona procesu, izmantojot:

$ nogalināt -9 [ darba ID ]


Piemēram, lai apturētu pašreizējo miega procesu, izmantojiet:

$ nogalināt -9 6149


Tagad miega process tiek apturēts, lai apstiprinātu fona darbības procesa sarakstu, izmantojot.

$ darba vietas -l



Šeit ir vēl viens lietošanas piemērs & &  zīme ir ar komandu gedit.

Piemēram, ja mēs atveram gedit teksta redaktoru tieši, izmantojot termināli, mēs noteikti izmantosim čaulu citam darbam, pretējā gadījumā mums vispirms ir jāaptur pašreizējais process.

$ gedit


Izmantojot iepriekš minēto komandu, tiks atvērts teksta redaktors, kas to atvērs termināļa priekšā.


Bet pēc “&” izmantošanas komandas gedit beigās čaulu var brīvi izmantot citiem procesiem:

$ gedit &


2: izmantojot komandu “bg”.

Komanda bg ir otrais veids, kā izpildīt komandas fonā. Šī komanda ļauj lietotājam turpināt darbu terminālī, kamēr process darbojas fonā, tādējādi atbrīvojot termināli citiem uzdevumiem. Komanda bg tiek izmantota ilgstošam fona procesam, kas darbojas pat tad, ja lietotājs atsakās.

Tāpat kā & zīmi, mums nav jāuztraucas par tā pievienošanu komandai katru reizi, kad vienkārši nosūtiet terminālim bg tekstu. Tas sāks procesu palaist fonā un atbrīvos termināli turpmākai lietošanai.

Piemēram, izmantosim iepriekšējo piemēru un nosūtīsim miega komandu, izmantojot:

$ Gulēt 40



Tagad process darbojas, un terminālis nav pieejams lietošanai. Lai izmantotu komandu bg un nosūtītu šo procesu fonā, vispirms jāpārtrauc pašreizējais izpildes process, nospiežot “Ctrl+Z” un izpildot šo komandu:

$ bg


Pēc komandas bg nosūtīšanas miega process sākās fonā. Beigās mēs varam redzēt & , kas norāda, ka pašreizējais process darbojas fonā.


Lai pārbaudītu fona procesu palaist uzdevumus:

$ darba vietas -l



Lai pārbaudītu, vai komanda darbojas fonā, izmantojiet:

$ fg



Lai apturētu pašreizējo procesu, izmantojiet tā darba ID ar komandu kill. Lai pārbaudītu darba ID, palaidiet:

$ darba vietas -l



Pēc tam, kad zināt darbu ID iznīcināšanas procesu, izmantojot:

$ nogalināt -9 [ darba ID ]


Piemēram, lai apturētu pašreizējo miega procesu, izmantojiet:

$ nogalināt -9 6584


Lai pārbaudītu, vai process ir apturēts vai nē, vēlreiz palaidiet komandu jobs:

$ darba vietas -l


Mēs redzam, ka miega process vairs nedarbojas fonā:

3: izmantojot komandu nohup

Komanda nohup ir trešā mūsu Linux fona procesu sarakstā. Komanda apzīmē “no hang up” un tiek izmantota, lai novērstu procesa pārtraukšanu līdz termināļa sesijas beigām. Kad process tiek izpildīts, izmantojot nohup, tas turpina darboties pat tad, ja lietotājs atsakās, un procesa izvade tiek novirzīta uz failu ar nosaukumu “nohup.out” .

Komanda nohup, lai nepārtraukti ping google fonā ir, un izvade tiek novirzīta uz teksta failu GooglePing.txt:

$ nohup ping Google com > GooglePing.txt &


Pēc šīs komandas rakstīšanas mēs redzam, ka terminālis ir brīvs, un fonā darbojas fona process nepārtrauktai google pingēšanai.


Lai piekļūtu žurnālfailam, mēs varam izmantot šādu komandu:

$ kaķis GooglePing.txt



Žurnāla failam var piekļūt arī, izmantojot GUI no sākuma ekrāna.

4: Atteikšanās komandas izmantošana

Atteikšanās komanda noņem procesu no čaulas un palaiž to fonā. Kad process tiek noraidīts, tas vairs nav saistīts ar termināli un turpina darboties pat pēc tam, kad lietotājs atsakās vai aizver termināli.

Iepriekš mēs izmantojām komandu &, kas nosūta procesu fonā pēc tā izpildes, bet, aizverot čaulu, process tiek pārtraukts. Lai atbrīvotos no šīs noraidīšanas komandas, ir tur.

Atteikšanās komanda nevar darboties neatkarīgi, taču fonā ir jādarbojas vismaz vienam procesam.

Palaidiet tālāk esošo komandu ar a & & zīmi, kas nosūtīs jūsu komandu uz fonu.

$ ping Google com > GooglePing.txt &


Kad fails ir izveidots, mēs varam to uzskaitīt, izmantojot komandu jobs.


Tagad mūsu process darbojas fonā, lai to atdalītu no termināļa lietošanas:

$ atteikties



Vēlreiz palaidiet komandu jobs, lai apstiprinātu, ka process ir atdalīts no termināļa:

$ darba vietas -l


Tā kā mūsu process pašlaik darbojas, bet tas vairs netiek rādīts terminālī:


Lai apstiprinātu mūsu procesu, mēs varam izmantot komandu cat, lai piekļūtu šim ping failam:

$ kaķis GooglePing.txt



Mēs esam veiksmīgi atdalījuši šo procesu no termināļa, taču tas joprojām darbojas fonā.

5: tmux utilīta izmantošana

Tmux ir sava veida termināļa multipleksora utilīta. Izmantojot tmux, mēs varam izveidot vairākas termināļa sesijas vienā apvalkā. Tas nodrošina iespēju palaist procesus fonā.

Lai palaistu fona procesu programmā Tmux, varat izveidot jaunu sesiju un pēc tam atvienot no tās, izmantojot taustiņu kombināciju Ctrl-b, kam seko d.

Lai instalētu utilītu tmux Ubuntu un Linux mint, izmantojiet:

$ sudo apt uzstādīt tmux



Lai instalētu Fedora palaist:

$ sudo dnf uzstādīt tmux


Lai instalētu Arch Linux, palaidiet:

$ sudo pacman -S tmux


Tagad palaidiet komandu tmux, lai atvērtu jaunu termināli:

$ tmux


Lai izveidotu jaunu tmux sesiju, izmantojiet:

$ tmux jauns -s [ sesijas ID ]


Lai uzskaitītu visas tmux sesijas, izmantojiet:

$ tmux ls


Lai iznīcinātu tmux sesiju, izmantojiet komandu kā:

$ tmux kill-session -t [ sesijas ID ]


Piemēram, lai nogalinātu '0' tmux sesijas izmantošana:

$ tmux kill-session -t 0


Šeit mēs uzskaitījām pašreizējo darbojošos tmux aktīvo sesiju un nogalinājām to, izmantojot iepriekš minēto komandu:


    • Lai atvienotos no tmux sesijas, nospiediet “Ctrl+B+D” .
    • Lai iegūtu visu komandu sarakstu, nospiediet “Ctrl+B+?” .
    • Lai pārslēgtos starp tmux logiem, nospiediet “Ctrl+B+O” .

Lai sadalītu tmux termināli vertikāli, nospiediet “Ctrl+B” un tips % .


Lai atgrieztos galvenajā terminālī no plkst tmux izmantot:

$ Izeja

Secinājums

Fona lietojumprogrammu palaišana operētājsistēmā Linux ir jaudīga funkcija, kas lietotājiem ļauj turpināt ilgstoši veiktos uzdevumus pat pēc atteikšanās no termināļa vai loga aizvēršanas. Parasti an & zīme vai bg komanda tiek izmantota, lai nosūtītu procesu fonā. Tomēr mēs varam arī izmantot nohup vai atteikties komanda, lai atdalītu procesu no termināļa. Beidzot mēs varam izmantot tmux utilīta lai izveidotu vairākus termināļus un palaistu fona procesus, netraucējot terminālim.