Kaip naudotis „Linux“ ekrano komanda

Naudodami screenkomandą „Linux“ , galite paleisti veikiančias terminalo programas į antrą planą ir ištraukti jas į priekį, kai norite jas pamatyti. Jis taip pat palaiko dalijamo ekrano ekranus ir veikia per SSH ryšius, net ir atjungus ir vėl prisijungus!

Kas yra ekrano komanda?

screenKomanda terminalas komutatoriumi, ir tai visiškai supakuotas su variantų. Sakyti, kad tai gali daug nuveikti, yra nepakankamai menkas senelis. Žmogaus puslapis eina per 4100 eilučių.

Toliau pateikiami dažniausiai atvejai, kai naudosite screenkomandą, ir mes juos aptarsime toliau šiame straipsnyje:

  • Standartinė operacija yra sukurti naują langą su apvalkalu, paleisti komandą ir tada nustumti langą į antrą planą (vadinamą „atsiejimu“). Kai norite sužinoti, kaip sekasi jūsų procesui, galite vėl patraukti langą į priekį („pritvirtinti“) ir vėl jį naudoti. Tai puikiai tinka ilgiems procesams, kurių nenorite netyčia nutraukti uždarydami terminalo langą.
  • Kai screenpaleisite sesiją, galėsite sukurti naujus langus ir paleisti juose kitus procesus. Galite lengvai šokinėti tarp langų, kad galėtumėte stebėti jų pažangą. Taip pat galite suskaidyti terminalo langą į vertikalius arba horizontalius regionus ir rodyti įvairius screenlangus viename lange.
  • Galite prisijungti prie nuotolinio kompiuterio, pradėti screenseansą ir pradėti procesą. Galite atsijungti nuo nuotolinio kompiuterio, vėl prisijungti, ir jūsų procesas vis tiek bus vykdomas.
  • Galite bendrinti screenseansą tarp dviejų skirtingų SSH ryšių, kad du žmonės realiuoju laiku matytų tą patį.

Diegiamas ekranas

Norėdami įdiegti screen„ubuntu“, naudokite šią komandą:

sudo apt-get install ekranas

Norėdami įdiegti  screen„Manjaro“, naudokite šią komandą:

sudo pacman -Sy ekranas

„Fedora“ įveskite:

sudo dnf diegimo ekranas

Darbo su ekranu pradžia

Norėdami pradėti screen, tiesiog įveskite jį, kaip parodyta žemiau, ir paspauskite Enter:

ekranas

Pamatysite licencijos informacijos puslapį. Galite paspausti tarpo klavišą, kad perskaitytumėte antrąjį puslapį, arba „Enter“, jei norite grįžti į komandų eilutę.

Jūs liekate komandų eilutėje ir atrodo, kad nieko daug neįvyko. Tačiau dabar jūs naudojate apvalkalą multipleksuotame terminalo emuliatoriuje. Kodėl tai yra geras dalykas? Na, pradėkime procesą, kurio įgyvendinimas užtruks daug laiko. Atsisiųsime naujausio „Linux“ branduolio šaltinio kodą ir peradresuosime jį į failą, vadinamą latest_kernel.zip.

Norėdami tai padaryti, įveskite:

garbanos //cdn.kernel.org/pub/linux/kernel/v5.x/linux-5.5.9.tar.xz> latest_kernel.zip

Mūsų atsisiuntimas prasideda, o curlišvestis rodo pažangą.

Negalime jums parodyti kito bitų vaizdo, nes tai yra klavišų paspaudimų seka. Įvedate „Ctrl“ + A, atleidžiate tuos klavišus ir tada paspauskite d, kad atjungtumėte ekraną.

Atsisiuntimo procesas vis dar vyksta, tačiau langas, kuriame rodomas atsisiuntimas, pašalintas. Jūs grįšite į terminalo langą, iš kurio pradėjote screen seansą. Pranešime nurodoma, kad atjungtas screenlangas su etikete 23167.pts-0.howtogeek.

Norint jį vėl pritvirtinti, reikia numerio nuo lango pavadinimo pradžios. Jei pamiršite, visada galite naudoti -lsparinktį (sąrašas), kaip parodyta žemiau, kad gautumėte atjungtų langų sąrašą:

ekranas -ls

Kai būsite pasirengę, galite naudoti -rparinktį (iš naujo pritvirtinti) ir seanso numerį, kad vėl pritvirtintumėte:

ekranas -r 23167

Fone dirbęs langas dabar grąžinamas į terminalo langą, tarsi jis niekada nebuvo išėjęs.

Jei tai bus procesas, kuris bus baigtas, jis galiausiai bus baigtas. Jei tai yra nuolatinis procesas, galų gale norėsite jį nutraukti. Bet kuriuo atveju, kai procesas baigsis, galite įvesti,  exit kad išeitumėte iš screen. Arba galite paspausti „Ctrl“ + A ir tada „K“, kad priverstinai užmuštumėte langą.

Įveskite šią komandą:

išėjimas

Jūs grįšite į ankstesnį terminalo langą, kuriame vis tiek bus rodoma komanda, kurią naudojote langui pritvirtinti. Kadangi uždarėme vienintelį atjungtą langą, gauname pranešimą, screenkuris baigiasi.

SUSIJEDS: Kaip naudoti „curl“, norint atsisiųsti failus iš „Linux“ komandų eilutės

Pavadintų ekrano sesijų naudojimas

-SSeansui pavadinti galite naudoti parinktį (seanso pavadinimas) screen. Jei naudojate įsimintiną vardą, o ne skaitinę sesijos tapatybę, patogiau vėl prisijungti prie sesijos. Mes įveskite šiuos dalykus, kad seansą pavadintume „bigfile“:

ekranas -S bigfile

Paleidę screensesiją matome tuščią langą su komandine eilute. Atsisiųsime didelį failą, kad galėtume kaip pavyzdį naudoti ilgai trunkantį procesą.

Įrašome:

susisukti //ipv4.download.thinkbroadband.com/1GB.zip> bigfile.zip

Pradėjus atsisiuntimą, paspaudžiame „Ctrl“ + A, tada paspauskite D, kad atjungtumėte sesiją. Norėdami pamatyti išsamią seanso sesiją, įveskite toliau pateiktą informaciją, norėdami naudoti -lsparinktį (sąrašas) screen:

ekranas -ls

Už skaitinio identifikatoriaus (23266) matome mūsų sesijos pavadinimą (bigfile). Įrašome šiuos dalykus, įskaitant seanso pavadinimą, kad jį vėl pritvirtintume:

ekranas -r didelis failas

Mes vėl prisijungėme prie atsisiuntimo lango ir matome, kad ilgas atsisiuntimas vis dar vyksta.

Kai atsisiuntimas bus baigtas, įveskite, exitkad uždarytume sesijos langą.

Ekrano naudojimas su keliais „Windows“

Iki šiol screenatskirame lange fone patalpindavome vieną procesą. Tačiau  screensugeba padaryti daug daugiau. Tada atliksime keletą procesų, kurie leis stebėti kai kuriuos mūsų kompiuterio aspektus.

Norėdami pradėti ekrano sesiją, vadinamą „monitoriumi“, įveskite:

ekranas -S monitorius

Naujo lango seanso komandų eilutėje paleisime dmesg ir naudosime -H(žmonėms skaitomas) ir -w(laukite naujų pranešimų) parinktis. Tai parodys branduolio buferio pranešimus; nauji pranešimai bus rodomi jiems atsirandant.

Įrašome:

dmesg -H -w

Rodomi esami pranešimai. Mes negrįžome į komandų eilutę, nes dmseglaukia naujų pranešimų ir juos parodys, kai jie bus.

SUSIJEDS: Kaip naudoti „dmesg“ komandą „Linux“

Mes norime paleisti kitą programą, todėl mums reikia naujo screen lango. Paspauskite „Ctrl“ + A, tada „C“, kad sukurtume naują langą. Mes ketiname naudoti watchpakartotinai vmstat, kad gautume dažnai atnaujinamą virtualios atminties naudojimą mūsų kompiuteryje.

Naujoje komandų eilutėje įveskite:

žiūrėti vmstat

vmstatProdukcija yra ir atnaujina kas dvi sekundes.

Dabar vyksta du mūsų procesai. Norėdami šokti tarp  screenlangų, paspauskite Ctrl + A ir lango numerį. Pirmasis, kurį sukūrėme, yra langas nulis (0), kitas - 1 langas ir pan. Norėdami pereiti į pirmąjį langą (tą dmesg), paspauskite Ctrl + A ir 0.

Jei paspausime „Ctrl“ + A ir 1, tai nukels mus atgal į vmstatlangą.

Tai gana madinga! Mes galime paspausti „Ctrl“ + A, tada D, kad atsiribotumėte nuo šios sesijos; vėliau galime vėl pritvirtinti. Abi sesijos vis tiek bus vykdomos. Vėlgi, norėdami perjungti langus, paspauskite Ctrl + A ir lango, į kurį norime perjungti, skaičių (0 arba 1).

Pereikime prie kito veiksmo ir peržiūrėkite abu ekranus viename lange. Tai padarę, ištiesite terminalo langą tokiu dydžiu, kad šis žingsnis būtų naudingas. Mūsų pavyzdžiai yra apriboti ekrano kopijų dydžiu, todėl mūsų langai atrodys šiek tiek ankšti.

Norėdami tai padaryti, paspauskite „Ctrl“ + A, tada „Shift“ + S (reikalinga didžioji raidė „S“).

Langas padalijamas į du „regionus“.

Viršutinis regionas vis tiek rodomas vmstat, o apatinis - tuščias. Žymeklis paryškintas žemiau esančioje ekrano kopijoje. Norėdami perkelti jį į apatinį regioną, paspauskite „Ctrl“ + A, tada „Tab“.

Žymeklis pereina į apatinį regioną, kuris iš tikrųjų yra tik tuščia vieta. Tai nėra apvalkalas, todėl nieko negalime į jį įvesti. Norėdami gauti naudingą ekraną, paspauskite „Ctrl“ + A, tada paspauskite „0“, kad dmesglangas būtų rodomas šiame regione.

Tai suteikia mums tiesioginius išėjimus viename lange. Jei paspausime „Ctrl“ + A ir D, kad atjungtumėte langą, o tada vėl pritvirtinsite, prarasime padalytų langų rodinį. Tačiau mes galime jį atkurti naudodami šiuos sparčiuosius klavišus:

  • „Ctrl“ + A, S: padalykite langą horizontaliai.
  • „Ctrl“ + A , „ Tab“: perkelkite į apatinį regioną.
  • „Ctrl“ + A, 0: lango rodymas nulis apatiniame regione.

Mes galime žengti dar žingsnį toliau. Dabar apatinę sritį padalinsime vertikaliai ir į ekraną pridėsime trečią procesą. Kai žymeklis yra apatiniame regione, paspauskite Ctrl + A ir C, kad sukurtume naują langą su apvalkalu. Apatiniame regione rodomas naujas langas ir pateikiama komandų eilutė.

Tada vykdome dfkomandą, norėdami patikrinti failų sistemos naudojimą:

df

Pamatę dfbėgimą, paspaudžiame „Ctrl + A“ ir „pipe“ simbolį (|). Tai vertikaliai padalija apatinį regioną. Norėdami pereiti į naują regioną, paspauskite „Ctrl“ + A ir „Tab“. Tada paspauskite Ctrl + A ir 0, kad būtų parodytas dmesglangas.

Taip pat galite judėti iš vieno regiono į kitą ir pridėti daugiau vertikalių ar horizontalių skilimų. Štai keletas naudingesnių klavišų derinių:

  • „Ctrl“ + A: šokite pirmyn ir atgal tarp dabartinių ir ankstesnių regionų.
  • „Ctrl“ + A, Q: Uždarykite visus regionus, išskyrus dabartinį.
  • „Ctrl“ + A, X: uždarykite dabartinį regioną.

Naudojant ekraną per SSH

Naudodami screengalite pradėti lango seansą, jį atjungti, kad jis vis dar veiktų fone, atsijungti ar vėl prisijungti ir seansą vėl pridėti.

Su komanda sukurkime SSH ryšį su kompiuteriu iš kito  ssh . Turime nurodyti paskyros, su kuria prisijungsime, pavadinimą ir nuotolinio kompiuterio adresą.

Mūsų pavyzdyje įveskite:

ssh [email protected]

Kai mes atpažinsime nuotoliniame kompiuteryje ir prisijungsime, įveskite šiuos veiksmus, kad pradėtumėte screensesiją, vadinamą „ssh-geek“:

ekranas -S ssh-geek

Demonstravimo tikslais, mes paleisti  top per screenlangą, bet galite pradėti bet kurią užsitęsusį ar begalinis procesas.

Įrašome:

viršuje

Kartą, kai  topveikia lange, paspauskite Ctrl + A, tada D, kad atjungtumėte langą.

Grįžome į pradinį nuotolinio terminalo langą.

Jei įvesime tekstą exit, kaip parodyta žemiau, jis atjungs SSH sesiją ir vėl grįšime į savo vietinį kompiuterį:

išėjimas

Mes norime prisijungti iš naujo:

ssh [email protected]

Kai mes vėl prisijungsime ir prisijungsime, mes galime įvesti šiuos veiksmus, kad vėl pritvirtintumėte screensesiją:

ekranas -r ssh-geek

Dabar mes vėl prisijungėme prie vis dar veikiančio mūsų top.

Tai puiku, jei norite pradėti procesą vienoje mašinoje, o tada tęsti ten, kur baigėte, kitoje.

SUSIJEDS: Kaip sukurti ir įdiegti SSH raktus iš "Linux Shell"

Ekrano sesijos bendrinimas

Taip pat galite naudoti screenseansą, kad du žmonės galėtų matyti tą patį langą ir bendrauti su juo. Tarkime, kažkas, valdantis „Fedora“ savo kompiuteryje, nori prisijungti prie mūsų „Ubuntu“ serverio.

Jis rašė:

ssh [email protected]

Prisijungęs jis pradeda ekrano seansą, pavadintą „ssh-geek“, naudodamas parinktį -S (seanso pavadinimas). Jis taip pat naudoja -d(atjungti) ir  -m(priverstinio sukūrimo) parinktis, kad sukurtų naują screensesiją, kuri jau yra atsieta.

Jis įveda taip:

ekranas -d -m -S ssh-geek

Jis, naudodamas -X(daugiakranio režimo) parinktį, prideda seansą:

ekranas -X ssh-geek

„Manjaro“ kompiuteryje kitas asmuo prisijungia prie „Ubuntu“ kompiuterio naudodamas tuos pačius paskyros kredencialus, kaip parodyta žemiau:

ssh [email protected]

Kai ji prisijungs, ji įveda  screenkomandą ir naudoja parinktį -X (kelių ekranų režimas), kad prisijungtų prie tos pačios lango sesijos, taip:

ekranas -X ssh-geek

Dabar viską, ką bet kuris žmogus įveda, pamatys kitas. Pvz., Kai vienas asmuo duoda komandą data, jie abu mato ją įvestą, taip pat jos išvestį.

Abu žmonės dabar dalijasi screensesija, vykdoma nuotoliniame „Ubuntu“ kompiuteryje.

Programinei įrangai, kuri pirmą kartą išvydo dienos šviesą 1987 m., screen Vis dar pakanka gero produktyvumo. Susipažinus su juo bus gerai praleistas laikas!

SUSIJ :S: 37 svarbios „Linux“ komandos, kurias turėtumėte žinoti