20 ekrano komandų pavyzdžių, kaip valdyti „Linux“ terminalus


Trumpai: šiame vadove aptarsime keletą naudingų ekrano komandos pavyzdžių. Pasibaigus šiam vadovui, naudotojai galės dirbti su keliomis apvalkalo seansais naudodami vieną „Linux“ terminalo langą.

Kaip Linux naudotojams, mums dažnai reikia atlikti ilgai trunkančias užduotis, tokias kaip didelių failų atsisiuntimas ar kopijavimas, daug laiko reikalaujančių duomenų bazių užklausų vykdymas ir pan. Kartais šios svarbios užduotys staiga nutraukiamos dėl seanso skirtojo laiko.

Norėdami sušvelninti tokius scenarijus, galime naudoti komandą screen, kuri yra viso ekrano programinės įrangos programa, kurią galima naudoti norint sutvirtinti fizinę konsolę tarp kelių procesų (paprastai interaktyvių apvalkalų). Tai siūlo vartotojui atidaryti kelis atskirus terminalo egzempliorius vienoje terminalo langų tvarkyklėje.

Programa Ekranas yra labai naudinga, jei dirbate su keliomis programomis iš komandinės eilutės sąsajos ir atskiriant programas nuo terminalo apvalkalo. Tai taip pat leidžia bendrinti seansus su kitais vartotojais ir atjungti/prijungti terminalo seansus.

Šiame vadove aptarsime, kaip įdiegti, konfigūruoti ir naudoti ekrano komandą Linux sistemoje. Šiame vadove mes suprasime ekrano komandos naudojimą ir naudą naudodami praktinius pavyzdžius.

Taigi pradėkime.

Įdiekite ekrano komandą „Linux“.

Mano Ubuntu Server Edition komanda screen buvo įdiegta pagal numatytuosius nustatymus. Tačiau Linux Mint pagal numatytuosius nustatymus neįdiegtas ekranas, todėl prieš naudojant turiu jį įdiegti naudojant apt-get komandą. .

Norėdami įdiegti ekraną, vadovaukitės platinimo diegimo procedūra.

sudo apt-get install screen      [On Debian, Ubuntu and Mint]
sudo yum install screen          [On RHEL/CentOS/Fedora and Rocky Linux/AlmaLinux]
sudo emerge -a sys-apps/screen   [On Gentoo Linux]
sudo apk add screen              [On Alpine Linux]
sudo pacman -S screen            [On Arch Linux]
sudo zypper install screen       [On OpenSUSE]    

Dabar patikrinkime, ar komanda sėkmingai įdiegta:

screen --version

Screen version 4.8.00 (GNU) 05-Feb-20

Tiesą sakant, ekranas yra labai gera terminalo multiplekserio programa Linux sistemoje, kuri yra paslėpta šimtuose Linux komandų.

Pažiūrėkime, kaip naudojama komanda ekranas sistemoje Linux, pateikdami toliau pateiktus pavyzdžius.

Ekrano komandų sintaksė

Komandos ekranas sintaksė yra tokia

screen [OPTIONS] [ CMD [ ARGS ] ]

Aukščiau pateiktoje sintaksėje matome, kad visi parametrai yra parinktys ir jie pavaizduoti laužtiniais skliaustais ([]).

1. Pradžios ekranas pirmą kartą

Tiesiog komandų eilutėje įveskite ekraną. Tada ekrane sąsaja bus rodoma tiksliai taip, kaip komandų eilutėje.

screen

2. Rodyti ekrano parametrą

Kai įeisite į ekraną, galite atlikti visą savo darbą taip, kaip esate įprastoje komandinės eilutės aplinkoje. Tačiau kadangi ekranas yra programa, todėl jame yra komandos arba parametrai.

Įveskite „Ctrl-A“ ir „?“ be kabučių. Tada ekrane matysite visas komandas ar parametrus.

Norėdami išeiti iš pagalbos ekrano, galite paspausti „tarpo klavišą “ arba „Enter“. (Atminkite, kad visi spartieji klavišai, naudojantys „Ctrl-A“, daromi be kabučių).

3. Kaip išvardyti visus atidarytus langus

Ankstesniame pavyzdyje pradėjome naują apvalkalo seansą naudodami ekrano komandą. Dabar naudokite klavišų kombinaciją ctrl-a + ", kad pateiktume visus atidarytus dabartinės ekrano seanso langus:

Aukščiau pateiktame išvestyje matome lango numerį ir pavadinimą. Pirmas stulpelis rodo lango numerį ir prasideda nuo nulio.

Kitas stulpelis rodo lango pavadinimą, o numatytasis jo formatas yra @:.

4. Kaip nutraukti ekrano lango seansą

Aktyvų lango seansą galime nutraukti naudodami klavišų kombinacijas ctrl-a + k. Svarbu pažymėti, kad šis veiksmas nutrauks komandos vykdymą iš dabartinio virtualaus lango.

Aukščiau pateiktame išvestyje matome, kad komanda ekranas laukia vartotojo patvirtinimo. Kairiajame apatiniame kampe rodomas įspėjamasis pranešimas.

Kaip ir kitose „Linux“ komandose, galime naudoti y' norėdami tęsti arba n', kad nutrauktume operaciją.

5. Kaip pradėti ekrano seansą su pavadinimu

Naudodami komandą ekranas galime sukurti seansą vartotojo nustatytu pavadinimu, kuris praverčia, kai yra keletas galimų seansų.

Taigi, naudokite komandos parinktį -S, kad sukurtume pavadintą seansą:

screen -S demo-screen

Aukščiau pateiktoje komandoje demonstracinis ekranas yra seanso pavadinimas.

6. Atjunkite terminalo seansą su ekranu

Vienas iš ekrano pranašumų yra galimybė jį atjungti. Tada galėsite jį atkurti neprarasdami nieko, ką padarėte ekrane. Štai scenarijaus pavyzdys:

Savo serveryje esate SSH viduryje. Tarkime, kad atsisiunčiate 400 MB sistemos pataisą naudodami komandą wget.

Apskaičiuota, kad atsisiuntimo procesas užtruks 2 valandas. Jei atjungsite SSH seansą arba staiga netyčia nutrūksta ryšys, atsisiuntimo procesas bus sustabdytas. Turite vėl pradėti nuo pradžių. Norėdami to išvengti, galime naudoti ekraną ir jį nuimti.

Pažvelkite į šią komandą. Pirmiausia turite įvesti ekraną.

screen

Tada galite atlikti atsisiuntimo procesą. Pavyzdžiui, Linux Mint atnaujinu dpkg paketą naudodamas komandą apt.

sudo apt install dpkg
Reading package lists... Done
Building dependency tree      
Reading state information... Done
The following packages will be upgraded:
  dpkg
1 upgraded, 0 newly installed, 0 to remove and 1146 not upgraded.
Need to get 2,583 kB of archives.
After this operation, 127 kB of additional disk space will be used.
Get:1 http://debian.linuxmint.com/latest/ 
testing/main dpkg i386 1.16.10 [2,583 kB]
47% [1 dpkg 1,625 kB/2,583 kB 47%]     14,7 kB/s

Atsisiuntimo metu galite paspausti „Ctrl-A“ ir „d“. Paspausdami tuos mygtukus nieko nematysite. Išvestis bus tokia:

[detached from 5561.pts-0.mint]
pungki@mint ~ $

7. Iš naujo prijunkite terminalo seansą su ekranu

Atjungę ekraną, tarkime, kad atjungiate SSH seansą ir grįžtate namo. Savo namuose vėl pradedate SSH į savo serverį ir norite matyti atsisiuntimo proceso eigą. Norėdami tai padaryti, turite atkurti ekraną. Galite paleisti šią komandą:

pungki@mint ~ $ screen -r

Ir pamatysite, kad procesas, kurį palikote, vis dar vyksta.

Kai turite daugiau nei 1 ekrano seansą, turite įvesti ekrano seanso ID. Naudokite ekraną -ls, kad sužinotumėte, kiek ekranų yra.

pungki@mint ~ $ screen -ls
pungki@mint ~ $ screen -ls
There are screens on:
        7849.pts-0.mint (10/06/2021 01:50:45 PM)        (Detached)
        5561.pts-0.mint (10/06/2021 11:12:05 AM)        (Detached)
2 Sockets in /var/run/screen/S-pungki

Jei norite atkurti ekraną 7849.pts-0.mint, įveskite šią komandą.

pungki@mint ~ $ screen -r 7849

8. Naudojant kelių ekranų terminalo langus

Kai jums reikia daugiau nei 1 ekrano, kad galėtumėte atlikti savo darbą, ar tai įmanoma? Taip tai yra. Vienu metu galite paleisti kelis ekrano langus. Yra 2 (du) būdai tai padaryti.

Pirma, galite atjungti pirmąjį ekraną ir paleisti kitą ekraną tikrame terminale. Antra, sukuriate įdėtą ekraną, kaip parodyta.

Norėdami sukurti naujus langus, du kartus naudokite klavišų kombinaciją ctrl-a + c, kad sukurtumėte du naujus langus. Tada naudokite klavišų kombinaciją ctrl-a + ", kad pateiktume visus aktyvius langus:

Aukščiau pateiktame išvestyje matome, kad dabar yra trys langai.

9. Kaip pervardyti ekrano langą

Ankstesniame pavyzdyje sukūrėme du naujus langus. Tačiau jų numatytieji pavadinimai nepateikia jokios informacijos apie juos. Tokiais atvejais galime jiems priskirti keletą prasmingų pavadinimų.

Galime naudoti klavišų kombinaciją ctrl-a + A, kad pervardytume dabartinę lango seansą. Šis klavišų derinys ragina vartotoją nustatyti lango pavadinimą:

10. Perjungimas tarp ekrano terminalo langų

Ankstesniame pavyzdyje sukūrėme kelis langus. Dabar pažiūrėkime, kaip juos perjungti.

Pirmiausia išvardykime visus aktyvius langus naudodami klavišų kombinaciją ctrl-a + ". Tada naudokite rodyklės aukštyn arba žemyn klavišus, kad pasirinktumėte atitinkamą langą. Galiausiai paspauskite klavišą Enter, kad perjungtumėte į pasirinktą langas.

Šiame pavyzdyje pasirinkome langą, kurio pavadinimas – db-query.

11. Kaip pereiti į kitą ekrano langą

Norėdami pereiti į kitus langus, galime naudoti klavišų kombinaciją ctrl-a + n. Supraskime tai pavyzdžiu.

Pirmiausia perjunkite į pirmąjį langą ir patvirtinkite jį naudodami klavišų kombinaciją ctrl-a + ":

Dabar du kartus paspauskite klavišų kombinaciją ctrl-a + n, kad pereitumėte į trečiąjį langą, ir naudokite klavišų kombinaciją ctrl-a + ", kad patvirtintumėte tą patį.

Aukščiau pateiktame išvestyje matome, kad dabar esame trečiame lange.

12. Kaip pereiti į ankstesnį ekrano langą

Panašiai galime naudoti ctrl-a + p derinį, kad perjungtume į ankstesnį langą.

Šiuo metu esame trečiame lange. Taigi, du kartus panaudokime klavišų kombinaciją ctrl-a + p ir patikrinkime, ar vėl esame pirmame lange:

Aukščiau pateiktame išvestyje matome, kad dabar grįžome į pirmąjį langą.

13. Kaip perjungti dabartinį ir ankstesnį langą

Kartais mes tiesiog norime perjungti du langus. Tokiais atvejais galime naudoti klavišų kombinaciją ctrl-a + ctrl-a.

Norėdami tai suprasti, pirmiausia perjunkite į pirmąjį langą:

Tada perjunkite į paskutinį langą:

Galiausiai naudokite klavišų kombinaciją ctrl-a + ctrl-a, kad vėl pereitumėte į pirmąjį langą.

14. Kaip pereiti į konkretų ekrano langą

Ankstesniuose pavyzdžiuose matėme įvairius būdus, kaip perjungti langus. Tačiau kartais norime pereiti prie konkretaus lango. Tokiais atvejais galime naudoti langų numerius.

Pirmiausia naudokite klavišų kombinaciją ctrl-a + ", kad surastume lango numerį:

Aukščiau pateiktoje išvestyje pirmasis stulpelis rodo lango numerį. Svarbu pažymėti, kad ekrano komanda pradedama numeruoti nuo nulio.

Dabar naudokite ctrl-a + 2 klavišų kombinaciją, kad pereitume į trečiąjį langą ir patikrintume, ar esame tinkamame lange:

15. Kaip padalyti ekrano langą horizontaliai

Kaip ir įprasti terminalai, taip pat galime padalinti ekrano langą. Norėdami padalinti langą horizontaliai, galime naudoti klavišų kombinaciją ctrl-a + S.

Dabar galime naudoti klavišų kombinaciją ctrl-a + tab norėdami pereiti tarp regionų.

Galiausiai, norėdami pašalinti dabartinį regioną, galime naudoti klavišų kombinaciją ctrl-a + X. Svarbu pažymėti, kad čia turime naudoti didžiąsias X raides.

16. Kaip padalyti ekrano langą vertikaliai

Panašiai galime naudoti klavišų kombinaciją ctrl-a + |, kad padalintume dabartinį langą vertikaliai:

Be to, norėdami uždaryti dabartinį regioną, taip pat galime naudoti klavišų kombinaciją ctrl-a + tab tarp regionų ir ctrl-a + X klavišų kombinaciją.

17. Įgalinkite ekrano registravimą sistemoje „Linux“.

Kartais svarbu įrašyti, ką nuveikėte, kol esate pulte. Tarkime, kad esate Linux administratorius, kuris valdo daug Linux serverių.

Naudojant šį ekrano registravimą, jums nereikia užsirašyti kiekvienos atliktos komandos. Norėdami suaktyvinti ekrano registravimo funkciją, tiesiog paspauskite „Ctrl-A“ ir „H“. (Būkite atsargūs, naudojame didžiąsias „H“ raides. Naudojant ne didžiąsias raides „h“, bus sukurta tik ekrano ekrano kopija kitame faile, pavadintame popierine kopija) .

Apatiniame kairiajame ekrano kampe bus pranešimas, nurodantis, kad jums patinka: Kuriamas žurnalo failas „screenlog.0“. Pagrindiniame kataloge rasite failą screenlog.0.

Ši funkcija pridės viską, ką darote, kai esate ekrano lange. Norėdami uždaryti ekraną ir įrašyti bėgimo veiklą, dar kartą paspauskite „Ctrl-A“ ir „H“.

Kitas būdas suaktyvinti registravimo funkciją – pirmą kartą paleidus ekraną galite pridėti parametrą „-L“. Komanda bus tokia.

pungki@mint ~ $ screen -L

18. Užrakinkite Linux terminalo ekraną

Ekrane taip pat yra spartusis klavišas užrakinti ekraną. Norėdami užrakinti ekraną, galite paspausti sparčiuosius klavišus „Ctrl-A“ ir „x“. Tai patogu, jei norite greitai užrakinti ekraną. Štai užrakinimo ekrano išvesties pavyzdys, kai paspaudžiate spartųjį klavišą.

Screen used by Pungki Arianto  on mint.
Password:

Norėdami jį atrakinti, galite naudoti savo „Linux“ slaptažodį.

19. Pridėkite slaptažodį prie ekrano seanso

Saugumo sumetimais galite įvesti slaptažodį į ekrano seansą. Kai norėsite iš naujo prijungti ekraną, bus prašoma įvesti slaptažodį. Šis slaptažodis skiriasi nuo anksčiau pateikto Užrakinimo ekrano mechanizmo.

Kad ekranas būtų apsaugotas slaptažodžiu, galite redaguoti failą „$HOME/.screenrc“. Jei failo nėra, galite jį sukurti rankiniu būdu. Sintaksė bus tokia.

password crypt_password

Norėdami sukurti aukščiau esantį „crypt_password“, galite naudoti komandą „mkpasswd“ sistemoje „Linux“. Štai komanda su slaptažodžiu „pungki123“.

pungki@mint ~ $ mkpasswd pungki123
l2BIBzvIeQNOs

mkpasswd sugeneruos maišos slaptažodį, kaip parodyta aukščiau. Gavę maišos slaptažodį, galite nukopijuoti jį į failą „.screenrc“ ir išsaugoti. Taigi failas „.screenrc“ bus toks.

password l2BIBzvIeQNOs

Kai kitą kartą paleisite ekraną ir jį atjungsite, bus paprašyta įvesti slaptažodį, kai bandysite jį pridėti iš naujo, kaip parodyta toliau:

pungki@mint ~ $ screen -r 5741
Screen password:

Įveskite slaptažodį, kuris yra „pungki123“, ir ekranas vėl prisijungs.

Įdiegę šį ekrano slaptažodį ir paspaudę „Ctrl-A“ ir „x“, išvestis bus tokia.

Screen used by Pungki Arianto on mint.
Password:
Screen password:

Slaptažodžio bus paprašyta du kartus. Pirmasis slaptažodis yra jūsų Linux slaptažodis, o antrasis slaptažodis yra slaptažodis, kurį įdėjote į failą .screenrc.

20. Išėjimas iš ekrano terminalo seanso

Yra 2 (du) būdai išeiti iš ekrano. Pirma, ekranui atskirti naudojame „Ctrl-A“ ir „d“. Antra, galime naudoti komandą exit, kad uždarytume ekraną. Taip pat galite naudoti „Ctrl-A“ ir „K“, kad užmuštumėte ekraną.

Ekrano komandų kodų lapas

screen -S <session_name>

Pradėkite naują seansą sesijos pavadinimu.

screen -ls

Sąrašas vykdomų seansų/ekranų.

screen -x

Prijunkite prie bėgimo seanso.

screen -r <session_name>

Pridėti prie bėgimo seanso pavadinimu.

screen -d <session_name>

Atjunkite bėgimo seansą.

Ctrl-a c

Sukurti naują langą.

Ctrl-a Ctrl-a

Pakeisti į paskutinį kartą lankytą aktyvų langą.

Ctrl-a <number>

Keisti į langą pagal numerį.

Ctrl-a ' <number or title>

Keisti į langą pagal numerį arba pavadinimą.

Ctrl-a n or Ctrl-a <space>

Keisti į kitą sąrašo langą.

Ctrl-a p or Ctrl-a <backspace>

Pakeiskite į ankstesnį sąrašo langą.

Ctrl-a "

Žiūrėkite langų sąrašą.

Ctrl-a w

Rodyti lango juostą.

Ctrl-a k

Užmušti dabartinį langą.

Ctrl-a \

Užmušk visus langus.

Ctrl-a A

Pervardykite dabartinį langą.

Ctrl-a S

Padalinkite ekraną horizontaliai.

Ctrl-a | or Ctrl-a V

Padalinkite ekraną vertikaliai.

Ctrl-a tab

Pereiti į kitą rodymo sritį.

Ctrl-a X

Pašalinti dabartinį regioną.

Ctrl-a Q

Pašalinti visus regionus, išskyrus dabartinį.

Ctrl-a H

Įgalinti prisijungimą prie ekrano seanso.

Ctrl-a x

Užraktas (apsaugotas slaptažodžiu) ekranas.

Tai dalis kasdien naudojamų ekrano komandų. Vis dar yra daug funkcijų ekrano komandoje. Daugiau informacijos galite rasti ekrano vadovo puslapyje.

Ar žinote kokį kitą geriausią ekrano komandos „Linux“ pavyzdį? Praneškite mums savo nuomonę toliau pateiktuose komentaruose.