Kif tibda Kmand Linux fl-Isfond u Aqla 'l-Proċess fit-Terminal


F'din il-gwida, aħna se nġibu fid-dawl kunċett sempliċi iżda importanti fl-immaniġġjar tal-proċess f'sistema Linux, jiġifieri kif jinqalgħu kompletament proċess mit-terminal ta 'kontroll tiegħu.

Meta proċess ikun assoċjat ma' terminal, jistgħu jseħħu żewġ problemi:

  1. it-terminal tal-kontroll tiegħek huwa mimli b'tant dejta tal-output u messaġġi ta' żball/dijanjosi.
  2. f'każ li t-terminal jingħalaq, il-proċess flimkien mal-proċessi tfal tiegħu jintemmu.

Biex tittratta dawn iż-żewġ kwistjonijiet, għandek bżonn tneħħi totalment proċess minn terminal ta 'kontroll. Qabel ma nimxu fil-fatt biex insolvu l-problema, ejja nkopru fil-qosor kif tmexxi l-proċessi fl-isfond.

Kif tibda Proċess jew Kmand Linux fl-Isfond

Jekk proċess ikun diġà qed jitwettaq, bħall-eżempju tal-kmand tal-qatran hawn taħt, sempliċement agħfas Ctrl+Z biex tieqaf imbagħad daħħal il-kmand bg biex tkompli bl-eżekuzzjoni tiegħu fil- sfond bħala xogħol.

Tista' tara l-impjiegi kollha fl-isfond tiegħek billi ttajpja jobs. Madankollu, stdin, stdout, stderr tagħha għadhom magħquda mat-terminal.

$ tar -czf home.tar.gz .
$ bg
$ jobs

Tista' wkoll tmexxi proċess direttament mill-isfond billi tuża l-ampersand, is-sinjal &.

$ tar -czf home.tar.gz . &
$ jobs

Agħti ħarsa lejn l-eżempju hawn taħt, għalkemm il-kmand tal-qatran inbeda bħala xogħol fl-isfond, xorta ntbagħat messaġġ ta 'żball lit-terminal li jfisser li l-proċess għadu konness mat-terminal tal-kontroll.

$ tar -czf home.tar.gz . &
$ jobs

Żomm il-Proċessi tal-Linux Running Wara l-Ħruġ tat-Terminal

Aħna se nużaw kmand disown, huwa użat wara li l-proċess ikun ġie mniedi u jitqiegħed fl-isfond, ix-xogħol huwa li tneħħi xogħol tal-qoxra mill-impjiegi tal-lista attiva tal-qoxra, għalhekk mhux se tuża fg , bg jikkmanda fuq dak ix-xogħol partikolari aktar.

Barra minn hekk, meta tagħlaq it-terminal tal-kontroll, ix-xogħol mhux se hang jew jibgħat SIGHUP lil xi impjiegi tat-tfal.

Ejja nagħtu ħarsa lejn l-eżempju ta 'hawn taħt ta' l-użu tal-funzjoni inkorporata diswon bash.

$ sudo rsync Templates/* /var/www/html/files/ &
$ jobs
$ disown  -h  %1
$ jobs

Tista' wkoll tuża l-kmand nohup, li jippermetti wkoll li proċess ikompli jaħdem fl-isfond meta utent joħroġ minn qoxra.

$ nohup tar -czf iso.tar.gz Templates/* &
$ jobs

Aqla 'Proċessi Linux Mit-Terminal ta' Kontroll

Għalhekk, biex tneħħi kompletament proċess minn terminal ta 'kontroll, uża l-format tal-kmand hawn taħt, dan huwa aktar effettiv għall-applikazzjonijiet tal-interface grafika tal-utent (GUI) bħal firefox:

$ firefox </dev/null &>/dev/null &

Fil-Linux, /dev/null huwa fajl ta 'apparat speċjali li jikteb (jeħles minn) id-dejta kollha miktuba fuqu, fil-kmand ta' hawn fuq, l-input jinqara minn, u l-output jintbagħat lil /dev/null.

Bħala rimarka ta 'konklużjoni, sakemm proċess ikun imqabbad ma' terminal ta 'kontroll, bħala utent, se tara bosta linji ta' output tad-data tal-proċess kif ukoll messaġġi ta 'żball fuq it-terminal tiegħek. Għal darb'oħra, meta tagħlaq it-terminal ta' kontroll, il-proċess tiegħek u l-proċessi tat-tfal jiġu mitmuma.

Importanti, għal kwalunkwe mistoqsija jew rimarka dwar is-suġġett, ikkuntattjana billi tuża l-formola tal-kummenti hawn taħt.