Screen debian parancsok. Indítási és kezelési alapok Képernyő. Képernyő-munkamenet zárolása

  • Dátum: 14.05.2021

Néha *nix szerverekkel kell távolról dolgozni ssh-n keresztül, esetemben putty-n keresztül. Ha a vacak internet miatt csatlakozik a lemez, szakad a munkamenet, akkor a khan az összes hiányos folyamatunk, a nem mentett konfigok fejlesztései stb. Az ilyen eseményekre való figyelmeztetés, valamint az áruházi munkamenetek és a hozzájuk való bármikor, bárhonnan való csatlakozás érdekében fedeztem fel a Képernyő ablakkezelőt. Most üzletben.

Telepítés:

#yum install -yscreen

Először tanuljuk meg az ablakok kezelésének alapvető lépéseit.
Nyissa meg bármelyik terminál emulátort (az én esetemben ez az gitt) és fuss bele Képernyő:


Ez az ablak az első ablak Képernyő, amelyet a program automatikusan létrehozott az indításakor. Hozzunk létre egy másik ablakot.
A következő billentyűkombinációt írjuk be a billentyűzeten (mindenhol a -, - elválasztó nélkül):
ctrl+ac

Ebben az ablakban indítsunk el bármilyen folyamatot. Legyen felül, és hozzon létre egy másik ablakot
ctrl+acés indítson el benne valamilyen folyamatot. Ezúttal úgy lesz férfi képernyő

Jelenleg három képernyőablak fut egy gittterminál ablakban.
Hogyan lehet megnézni, hány ablak van? opcióként ctrl+aw

Az ablak bal felső sarkában a következő sort látjuk:
$0 bash 1*$ bash 2-$ bash

Ez az általunk létrehozott aktív képernyőablakok listája. 0 , 1 , 2 az ablakok számai, és bash- a nevüket (címsorukat). Amint látja, az ablakok számozása nullától kezdődik. De mindhárom neve ugyanaz - bash

Ablak:
* $0 bash- az az Képernyő indításkor maga készítette (kicsit előre futva mondhatjuk, hogy számuk több is lehet, és ez a konfigurációs fájlban van beállítva);
* 1-$ bash- ebben az ablakban összezavarodtunk tetejére;
* 2*$bash- ebben az ablakban indítottuk el férfi képernyő.

A váltás a következőképpen történik:
Ctrl+a -p- váltson át az előző virtuális konzolra
Cntrl+a - n vagy tér- váltson át a következő virtuális konzolra
ctrl+a“ -- interaktív (ellentétben ctrl+a-w) az általunk létrehozott ablakok listája. A fel és le nyilakkal navigálhat rajta, és beléphet Belép'om a megfelelő helyre.


A kívánt ablakhoz a szám ismeretében a következő paranccsal léphet:
ctrl+aablak_száma

Például menjünk a második ablakhoz:
ctrl+a1

Vagy kissé módosítva a parancsot:
ctrl+a

Az alsó sorban meg kell adnia annak az ablaknak a számát, amelybe lépni szeretne. Tegyük fel, hogy az első ablakhoz kell mennünk - írja be a számot 0 és nyomja meg Belép:

Ahogy a parancs kimenetéből láttuk ctrl+a-wés Ctrl+a - ", az ablakok nevei (címei) megegyeznek. Javítsuk ki. Toborzunk egy csapatot ctrl+aA

Az alsó sorban meg kell változtatni az ablak címét. Váltson bashról főre, és nyomja meg az Enter billentyűt. Megtalálhatja az aktuális ablak nevét ctrl+aN nevét fogjuk látni az ablak bal felső sarkában.

Ablak információ:
ctrl+aén

Az ablak bal felső sarkában fogjuk látni az információt és annak nevét, esetünkben a Main nevet.

Amint az az előző kimenetekből látható, az ablakok számozása szekvenciálisan történik, növekvő számokkal: 0 - 1 - 2 . Ha valamelyiket bezárjuk, a fennmaradó ablakok számozása nem változik.

Az ablak bezárása Képernyő parancs végrehajtásával hajtjuk végre kijárat az ablakban. Először is le kell állítania az összes futó folyamatot. Az ablakok kombinációval is zárhatók ctrl+a-k. Ennek végrehajtása azonban nem ajánlott, mivel ez a művelet megegyezik a paranccsal megöl- "megölni" a folyamatot.

Zárjuk be a második ablakot. Állítsuk meg a folyamatot tetejéreés csináld kijárat. És akkor lássuk a parancs kimenetét.

Látjuk, hogy a számozás most a következő: 0 — 2 . Változtassuk meg az ablakok számozását, különösen a számozott ablakokat 2 és adj neki egy számot 1 . Futtassuk a parancsot:
ctrl+a:
Az ablak alján kettőspont jelenik meg a parancs beírásához.
Írjuk be a parancsot:
1. szám
És nyomjuk Belép.
Lássuk az eredményt:
ctrl+a

Súgó a billentyűparancsokhoz Képernyő:
ctrl+a?

Alapértelmezett, Képernyő csak egy ablakot jelenít meg a terminálemulátor képernyőjén. Az ablak betörése azonban lehetséges Képernyő a terminálban több. Ehhez van egy parancs az ablak vízszintes részekre való felosztására - régiók. A kényelem ebben az esetben abban rejlik, hogy nem kell váltani az ablakok között - mindegyik látható, és minden folyamat ellenőrzés alatt áll, csak meg kell nézni a kívánt ablakot.
Nyisson meg egy terminál emulátort, és futtassa Képernyőés hajtsa végre a parancsot az emulátor képernyőjének két vízszintes részre osztásához - régiók:
ctrl+aS

Amint a képernyőképen látható, a terminál emulátor ablaka gitt két azonos vízszintes részre oszlik. V Képernyő paranccsal végrehajtott ilyen részek Ctrl+a - S régióknak nevezzük. Nem feltétlenül két ilyen régió van, de sokkal több. Tegyük fel, hogy szerezzünk három ablakot Képernyő esetünkben újra le kell futtatnia a parancsot az aktuális régióban (ez a legfontosabb) Ctrl+a - S. Így létrehozhat három, négy, öt stb. ablakot Képernyő. De az egyértelműség kedvéért a két ablak lehetőségére fogunk összpontosítani.

A felső régióban elindítottuk Képernyőés az a régió van a fókuszban (zöld kurzor). Az alsó régiónk üres – nem fut Képernyőés eddig semmi. Az alsó régióba kell mennünk, ott ablakot kell létrehoznunk Képernyőés indítsa el benne a folyamatot.
Vigyük a fókuszt az alsó régióra:
ctrl+aTab
és hozzon létre benne egy ablakot Képernyő:
ctrl+ac

Van egy parancssorunk.
Kezdjük itt a folyamatot – elejére


Most lépjünk vissza (vigyük át a fókuszt) a felső régióba, és fussunk oda ps-aux.
Írja be újra a parancsot:

ctrl+aTab
és hajtsd végre:
ps-aux

Kapunk:


Az aktuális régió bezárása Képernyő a csapat készítette ctrl+a-X. Végezzük el a jelenlegi felső régiónkban:
ctrl+ax

Kapunk:

Ha több (kettőnél több) régió van nyitva, a parancs futtatásával egyszerre bezárhatja az összeset, kivéve egyet - az aktuálisat:
ctrl+aK

És itt van még:
ctrl+a-| (függőleges felosztás)

Ctrl+A - d- le kell választani - le kell választani az ablakot (de nem zárni)
Ctrl+A - H- írj egy naplóba
Ctrl+A - C- (törlés) a képernyő törlése.
Ctrl+A - d- (leválasztás) letiltja a képernyőt erről a terminálról. Ctrl+A - D-D- (pow_detach) bontsa le a kapcsolatot és törölje a regisztrációt. Hasznos lehetőségek parancs sor: -ls és -list nem indít képernyőt, hanem megjeleníti a képernyő szekciókat azonosító pid.tty.host karakterláncok listáját. A "leválasztott" szóval jelölt munkamenetek a "screen -r" paranccsal folytathatók. A „csatolt” jelzéssel ellátott munkamenetek futnak, és rendelkeznek vezérlőterminállal. Ha egy munkamenet többfelhasználós módban fut, akkor azt a „többfelhasználós” szó jelzi. Az "elérhetetlen" megjelölésű munkamenetek vagy egy másik gazdagépen futnak, vagy megszűntek. Az elérhetetlen munkamenet halottnak minősül, ha a neve megegyezik a helyi hosztnévvel vagy a megadott paraméterrel (ha van ilyen). A kiválasztáshoz szükséges sorok leírása az -r kapcsoló leírásában található. A "halottként" megjelölt munkameneteket ellenőrizni kell és törölni kell. Ha nem biztos abban, hogy egy munkamenetet törölni kell, kérdezze meg a rendszergazdát (hacsak nem Ön, különben végtelen rekurzióhoz vezethet). A munkameneteket a -wipe opcióval törölheti. -törölni ugyanúgy működik, mint a "screen -ls", kivéve, hogy törli a megsemmisült munkamenetek fájljait, ahelyett, hogy "halottnak" (halottnak) jelölné meg őket. Az a munkamenet, amely nem válaszol, halottnak minősül, vagy ha a neve megegyezik a helyi gazdagép nevével, vagy egy kifejezetten megadott egyezési paraméterrel. Az egyezés összeállításának szabályaiért lásd az -r kapcsoló leírását. -r -r sessionowner/ folytatja a leválasztott munkamenetet. Nincs más opció (kivéve a -d/-D kombinációk nem megengedettek). Az opcionális tty.host paraméter megadható annak meghatározására, hogy melyik leválasztott munkamenetről van szó. A második űrlap egy másik felhasználó többfelhasználós munkamenetéhez való csatlakozásra szolgál. Ez az opció azt mondja, hogy a fájlt egy másik felhasználó könyvtárában kell keresni. Megköveteli a setuid-root bitet a képernyőn megjelenő programban. -x Csatlakozzon az aktív (nem leválasztott) képernyő-munkamenethez. (Több megjelenítési mód). -X Küldje el a megadott parancsot egy futó képernyő munkamenetbe. -S munkamenetnév Ez az opció használható a munkamenet elnevezésére annak létrehozásakor. A név azonosításra szolgál a "screen -list" és a "screen -r" hívásakor. Lecseréli az alapértelmezett "tty.host" előtagot. -A Az összes ablak méretét az aktuális terminál méretéhez igazítja. Alapértelmezés szerint a képernyő megpróbálja visszaállítani a régi ablakméretet (ha átméretezhető terminálokhoz csatlakozik (azokhoz, amelyek leírásában "WS" szerepel, például suncmd vagy xterm). -d -m Indítsa el a munkamenetet "lekapcsolt" módban. A munkamenet létrejön, de nem csatlakozik hozzá. Ez hasznos a rendszer szkriptek indításakor. -D -m A képernyőt "letiltott" módban is elindítja, de nem hoz létre új folyamatot. A parancs akkor fejeződik be, ha a munkamenet megszakad. d|-D nem indít új munkamenetet, hanem leválaszt egy már megkezdett munkamenetet. Ugyanaz a hatás érhető el, mint a képernyővezérlő terminálon a „C-a d” gombok megnyomásával. A -D kapcsoló egyenértékű a tápfeszültség leválasztó kapcsolóval. Ha egy munkamenethez sem lehet hozzáférni, az opció figyelmen kívül marad. Az -r/-R-rel együtt más érdekesebb hatások is elérhetők. -d -r Csatlakozzon a munkamenethez, és ha szükséges, először válassza le.

Minden ülésen annak ablakai!

Vegyünk példának egy szkriptet:

#!/bin/bash "Itt küldjük a kilépési parancsot a Proga1 munkamenetbe" képernyő -X -S Proga1 kilépés "Itt megyünk a programkönyvtárba, ami a saját könyvtárunkban található és elindítunk egy Proga1 nevű munkamenetet "lekapcsolt" módban és azonnal futtassuk a nasha_program.sh-t ugyanabban a munkamenetben " cd ~/program / képernyő - A -m -d -S Proga1 nasha_program.sh

Azok. létrehozunk egy munkamenetet Proga1 néven, de nem csatlakozunk hozzá és nem futtatjuk le a programot, és ha már létezik ilyen nevű munkamenet, akkor először az exit parancs elküldésével zárjuk be.

Vezérlők a képernyőn belül:

ctrl+a - c- új lap létrehozása az aktuális képernyőmunka során.
ctrl+a - szám- váltson át a "szám" fülre az aktuális képernyő-munkamenetben.
ctrl+a - A- hozzon létre egy nevet az aktuális lapnak.
ctrl+a - " - kényelmes navigáció a megnevezett lapokon.
ctrl+a - d- leválasztás, leválasztás a képernyőről, kilépés a normál bash-ba. Minden feladat továbbra is végrehajtódik, de a képernyőn belül.
ctrl+d- a szokásos kijelentkezés, mint a terminálról. Ha a lap az egyetlen a munkamenetben, akkor az aktuális képernyő kilép. Ha egy a több közül, akkor bezárul, és szám szerint lép az előző lapra.
Ctrl+D- jelentkezzen ki az összes képernyő-munkamenetből

Képernyővezérlés kívülről, bashból.
képernyő-r- csatolja, ha egy futó képernyő egyetlen szekciója van, csatolja hozzá.
képernyő -r proc-id- csatlakozás a megadott munkamenethez annak folyamatszámával.
képernyő-ls- az éppen futó képernyők listájának kinyomtatása.

Ha a munkamenet egy másik terminálról indul (csatolt), akkor megpróbálhatja a -D -R-t

hangolás

A virtuális konzolok külső kijelzőjét is kissé hangolhatja, ehhez hozzon létre egy fájlt a saját könyvtárában .screenrcés írja be a következőket:

Felirat mindig felirat karakterlánc "%(kw)%-w%(wr)%n %t%(-)%+w" shell -$SHELL Most a virtuális konzolok száma és az aktuális színes megjelenítése mindig a következő helyen jelenik meg az alsó.

A Screen egy teljes képernyős program, amellyel egy fizikai konzol multiplexelhető több folyamat (általában interaktív shell) között. Arra kéri a felhasználót, hogy nyisson meg több külön terminált egyetlen terminálablakkezelőben.

Az Ubuntu 10.04 Server Edition-emen a Képernyő alapértelmezés szerint telepítve volt. De Linux Mint alapból nincs Képernyő, először telepítenem kell vele apt-get parancsokat. Kérjük, kövesse a disztribúció képernyőjének telepítési folyamatát.

# apt-get telepítési képernyő (Debian alapú rendszereken) # yum telepítési képernyő (RedHat alapú rendszereken)

Valójában a Képernyő nagyon jó csapat Linuxban, ami százon belül van elrejtve Linux parancsok. Lássuk a Képernyő funkcióit.

A Képernyő első elindítása

Csak írja be a képernyőt a parancssorba. Ezután megjelenik a képernyő ugyanazzal a felülettel, mint a parancssorban.

[e-mail védett]~$képernyő

Képernyőbeállítások megjelenítése

A képernyőre belépve különféle műveleteket hajthat végre, akárcsak egy normál CLI környezetben. De mivel a képernyő egy alkalmazás, ezért vannak parancsai vagy opciói.

Tárcsa Ctrl-Aés ? . Most látni fogja az összes parancsot vagy opciót a képernyőn.

Képernyőbillentyűk összerendelései, 1/1. oldal. Parancsbillentyű: ^A Szó szerinti ^A: szünet ^B b áramlás ^F f zárképernyő ^X x pow_break B képernyő ^C c szélesség W tiszta C fókusz ^I log H pow_detach D select " windows ^W w colon: nyomtatott példány h bejelentkezés L prev ^H ^P p ^? csend _ wrap ^R r másolás ^[ [ help ? meta a quit \ split S writebuf > detach ^D d history ( ) monitor M readbuf< suspend ^Z z xoff ^S s digraph ^V info i next ^@ ^N sp n redisplay ^L l time ^T t xon ^Q q displays * kill K k number N remove X title A dumptermcap . lastmsg ^M m only Q removebuf = vbell ^G fit F license , other ^A reset Z version v ^] paste . " windowlist -b - select - 0 select 0 1 select 1 2 select 2 3 select 3 4 select 4 5 select 5 6 select 6 7 select 7 8 select 8 9 select 9 I login on O login off ] paste .

A képernyő kilépéséhez nyomja meg a " terek"vagy" Belép". (Ne feledje, hogy minden billentyűparancs, amely a " Ctrl-A", idézőjelek nélkül használjuk).

Képernyő letiltása

A képernyő egyik előnye, hogy letiltható. Ezután visszaállíthatja anélkül, hogy elveszítené a korábban végrehajtott információkat. Íme egy példa szkript:

középen vagy ssh-on a szerverén. Tegyük fel, hogy letölt egy 400 MB-os javítást a rendszeréhez a paranccsal wget.

A letöltési folyamat körülbelül két órát vesz igénybe. Ha le van tiltva SSH munkamenetet vagy megszakadt a kapcsolat baleset miatt, a letöltési folyamat leáll. Mindent elölről kell kezdenie. Ennek elkerülésére használhatjuk a képernyőt, és kikapcsolhatjuk.

Vessen egy pillantást erre a csapatra. Először is be kell lépnie a képernyőre.

[e-mail védett]~$képernyő

Ezután létrehozhat egy letöltési folyamatot. Például a Linux Mintemen frissítettem dpkg paranccsal csomagolni apt-get.

[e-mail védett]~ $ sudo apt-get install dpkg

Minta kimenet

Csomaglisták olvasása... Kész Függőségi fa felépítése Állapotinformációk olvasása... Kész A következő csomagok frissítésre kerülnek: dpkg 1 frissítve, 0 újonnan telepített, 0 eltávolítandó és 1146 nincs frissítve. 2583 kB archívumot kell szerezni. A művelet után 127 kB további lemezterület kerül felhasználásra. Letöltés: 1 http://debian.linuxmint.com/latest/testing/main dpkg i386 1.16.10 47% 14,7 kB/s

"és" d". Nem fog látni semmit, ha megnyomja ezeket a gombokat. Az eredmény így fog kinézni:

[e-mail védett] ~ $

Képernyő újra engedélyezése

Például miután letiltotta a képernyőt, azt feltételezzük, hogy megszakította SSHülés és menj haza. Otthon futsz SSH vissza a szerverére, és látni szeretné, hogyan halad a feltöltés. Ehhez vissza kell állítania a képernyőt. A következő parancsot futtathatja:

[e-mail védett]~ $ képernyő -r

És látni fogja, hogy a folyamat onnan folytatódott, ahol megszakította.

Ha több mint 1 képernyő munkamenetben, meg kell adnia a munkamenet képernyőazonosítóját. Használja a screen -ls parancsot, hogy megtudja, hány képernyő áll rendelkezésre.

[e-mail védett]~ $ képernyő -ls

Minta kimenet

[e-mail védett]~ $ képernyő -ls Vannak képernyők: 7849.pts-0.mint (10/06/2013 01:50:45 PM) (Kiválasztott) 5561.pts-0.mint (10/06/2013 11:12: 05 AM) (leválasztott) 2 aljzat a /var/run/screen/S-pungki mappában

Ha akarja, állítsa vissza a képernyőt 7849.pts-0.mint, majd írja be ezt a parancsot.

[e-mail védett]~ $ képernyő -r 7849

Több képernyő használata

Lehet-e többet futni, mint 1 képernyő elvégezni a munkát? Igen. Egyszerre több képernyőablakkal is dolgozhat. Ennek 2 (két) módja van.

Először is leválaszthatja az első képernyőt, és futtathat egy másik képernyőt a terminálon. Másodszor, beágyazod a képernyőt.

Váltás a képernyők között

Ha beágyazott képernyője van, válthat közöttük a " Ctrl-A"és" n". Ezzel a következő képernyőre lép. Ha vissza kell térnie az előző képernyőre, nyomja meg a " Ctrl-A"és" p".

Új képernyőablak létrehozásához egyszerűen kattintson a " Ctrl-A"és" Val vel".

Az Ön által végzett bejelentkezés

Néha fontos, hogy leírja, mit csinált, amíg a konzolban volt. Tegyük fel, hogy - Linux rendszergazda, amely számos Linux szervert kezel.

A képernyős bejelentkezéssel nem kell minden parancsot leírnia. A Képernyő regisztráció funkció aktiválásához nyomja meg az "strong>Ctrl-A" és a " H". (Kérjük, legyen óvatos, nagybetűt használunk H. Kis betűhasználat h csak egy képernyőképet hoz létre a képernyőről külön fájlban).

A képernyő bal alsó sarkában megjelenik egy értesítés, amely azt mondja, hogy „naplófájl létrehozása” képernyőnapló.0“. Meg fogod találni képernyőnapló.0 fájlt a saját könyvtárában.

Ez a funkció hozzáad mindent, amit a képernyő ablakában tesz. Zárja be a képernyőt a bejelentkezéshez, kattintson a " Ctrl-A"és" H" újra.

[e-mail védett]~ $ képernyő -L

A naplózási funkció engedélyezésének másik módja, ha hozzáadja a " -L" a képernyő első futtatásakor. A parancs így fog kinézni.

[e-mail védett]~ $ képernyő -L

Képernyőzár

A képernyő egyben a képernyőzár parancsikonja is. rákattinthat a " Ctrl-A"és" x" a képernyő zárolásához. Ez akkor hasznos, ha gyorsan szeretné lezárni a képernyőt. Íme egy példa a képernyőzár kimenetére, miután a parancsikonokra kattintott.

Pungki Arianto által használt képernyő a mentán. Jelszó:

A zárolás feloldásához használhatja Linux jelszavát.

Jelszó hozzáadása a képernyőzárhoz

Biztonsági okokból jelszót is elhelyezhet a képernyő munkamenetében. A képernyő újbóli csatlakoztatásakor jelszót kell megadnia. Ez a jelszó eltér a fenti képernyőzár mechanizmustól.

A képernyő jelszavas védelméhez szerkesztheti a „ $HOME/.screenrc". Ha a fájl nem létezik, manuálisan is létrehozhatja. A szintaxis ilyen lesz.

jelszó crypt_password

Készíteni " crypt_password", használhatja a "parancsot" mkpasswd" Linuxon. Itt van a jelszóval rendelkező parancs " pungki123".

[e-mail védett]~ $ mkpasswd pungki123 l2BIBzvIeQNOs

mkpasswd jelszót generál a fent látható módon. Miután megvan a jelszó, átmásolhatja egy fájlba" .screenrc" és mentse. Most a fájl " .screenrc"így fog kinézni.

Jelszó l2BIBzvIeQNOs

Amikor legközelebb elindítja a képernyőt, kapcsolja ki, és a rendszer kérni fogja a jelszót, amikor megpróbálja újra bekapcsolni, az alábbiak szerint:

[e-mail védett]~ $ képernyő -r 5741 Képernyőjelszó:

Írd be a jelszót " pungki123" és a képernyő újra csatlakozik.

Miután futtatta a képernyőn megjelenő jelszót, és kattintson a " Ctrl-A"és" x", akkor a kimenet ez lesz.

Pungki Arianto által használt képernyő a mentán. Jelszó: Képernyőjelszó:

Meg kell adnia egy jelszót kétszer. Az első alkalom a tiéd linux jelszó, a második a fájlban megadott jelszó .screenrc.

Kilépés a képernyőről

2 (két) módja van a képernyőből való kilépésnek. Először is használjuk a " Ctrl-A"és" d" kikapcsolásához. Másodszor - használhatjuk a képernyő kiürítési parancsot. Használhatja is "Ctrl-A"és" NAK NEK", hogy leszögezze a képernyőt.

Bejelentkeztél a távoli szerveredre ssh-n keresztül, boldogan koppintottál a billentyűzeten, valami adminisztrátori ügyet intéztél, és hopp! A karakterek nyomtatása abbamaradt, és ugyanaz az üzenet esett ki, ami időnként ellenállhatatlan vágyat vált ki, hogy eltörje a billentyűzetet. kapcsolat zárva. Ismerős helyzet? Igen, igen, a munkamenet összeomlott, és mindent újra kell csinálnia... Ez elkerülhető a képernyő használatával. Ez nem csak azt teszi lehetővé, hogy a munkamenetet biztonságosan és egészségesen tartsa, hanem azt is, hogy több munkamenetet is nyitva tartson egy terminálablakban.

Mi az a képernyő?
Először nézzük meg a man oldalt: "A képernyő egy teljes képernyős ablakkezelő, amely lehetővé teszi egy fizikai terminál megosztását több független folyamat (általában interaktív shell) között".
A képernyő számos olyan funkcióval rendelkezik, amelyek nagyban segíthetnek távoli szervereken végzett feladatok ssh-n keresztüli végrehajtásában. A három leggyakrabban használt szolgáltatásról fogok beszélni: több ablak, naplózás és munkamenetek. További részletekért keresse fel a man oldalt.

képernyő telepítés
Valószínűleg a képernyő már a rendszeren van. Ezt a paranccsal ellenőrizheti

Ha ez nem sikerül, telepítse a képernyőt a rendszer csomagkezelőjével. A szervereim többnyire CentOS és Debian, ezért a következő képernyőt állítottam be:

# yum telepítési képernyő (CentOS-hez)
# apt-get telepítési képernyő (Debianhoz)

A FreeBSD is bejön, ebben az esetben portokat használok:

# cd /usr/ports/sysutils/screen
tiszta legyen a telepítés

A képernyő használata
A képernyő a parancssorból indul el, mint minden alkalmazás :)

Lehet, hogy nem kap üzenetet, hogy a képernyő fut... A rendszertől függ. Ha nem kap üzenetet, akkor azt gondolhatja, hogy nem történt semmi. Azonban nem. te már a képernyőn futó terminálon belül. Ez egy normál, teljesen működő shell, kivéve néhány speciális parancsot. A Képernyő a Ctrl+A billentyűkombinációt használja, hogy parancsokat adjon ki a saját termináljainak. Próbáld meg lenyomni a Ctrl+A billentyűket, majd?
Valami ehhez hasonlót fog látni:

Képernyőbillentyű-kötések, 1/2. oldal.

Parancsbillentyű: ^A Szó szerinti ^A: a

szünet ^B b zárképernyő ^X x visszaállítás Z
tiszta C log H képernyő ^C c
colon:login L select"'
másolás ^[ [ meta a csend _
leválasztani ^D d monitor M split S
digráf ^V következő ^@ ^N sp n felfüggeszt ^Z z
kijelzi * szám N idő ^T t
csak F-hez illeszkedik Q cím A
áramlás ^F f egyéb ^A vbell ^G
fókusz ^I pow_break B verzió v
Segítség? pow_detach D szélesség W
előzmények ( ) előz ^P p ^? ablakok ^W w
info i readbuf< wrap ^R r
kill K újramegjelenítés ^L l writebuf >
lastmsg ^M m eltávolítás X xoff ^S s
licenc , Removebuf = xon ^Q q

A képernyő elfogadja a parancsbillentyűket a Ctrl+A megnyomása után. Ezt a viselkedést a $HOME/.screenrc konfigurációs fájllal módosíthatja

Több ablak
Képernyő, mint a legtöbb ablakkezelők, több ablakot támogat. Ez nagyon hasznos párhuzamos feladatok futtatásához új ssh-munkamenetek megnyitása nélkül. Például négy vagy öt munkamenetem van folyamatosan nyitva, mindegyikben több feladattal. Korábban körülbelül 15 terminált kellett megnyitnom, bejelentkezéseket, munkameneteket... Fárasztó, nem? Ezeket a kellemetlenségeket a képernyő teljesen megoldja. Most egy terminállal elég jól tudok gazdálkodni.

Egy új ablak nyílik meg a „Ctrl+a c” billentyűkombinációval. Kattintás után ugyanabban az ablakban egy új terminált fog látni a prompttal. Ugyanakkor a korábbi ablakok is tovább működnek. Próbáljuk meg: futtassa a képernyőt, és lépjen be

Mem: 506028K av, 500596K használt, 5432K ingyenes,
0K shard, 11752K buff
393660K gyorsítótárban


6538 gyökér 25 0 1892 1892 596 R 49,1 0,3
6614 gyökér 16 0 1544 1544 668 S 28,3 0,3
7198 admin 15 0 1108 1104 828 R 5,6 0,2

Most nyisson meg egy új ablakot a „Ctrl+a c” megnyomásával

Lépjen vissza a Ctrl+a n billentyűkombinációval

Mem: 506028K av, 500588K használt, 5440K ingyenes,
0K shrd, 11960K buff
Csere: 1020116K av, 53320K használt, 966796K ingyenes
392220K gyorsítótárban

PID FELHASZNÁLÓ PRI NI MÉRET RSS MEGOSZTÁSI STATISZTIKA %CPU %ME
6538 gyökér 25 0 1892 1892 596 R 48,3 0,3
6614 gyökér 15 0 1544 1544 668 S 30,7 0,3

teteje ugyanaz marad. Több ablakot is létrehozhat, és válthat közöttük a Ctrl+a n billentyűkombinációval a következő ablakra, a Ctrl+a p billentyűkombinációval pedig az előzőre váltáshoz. Ebben az esetben minden futó folyamat működőképes állapotban marad.

Leválasztás a képernyőről
Kétféleképpen lehet kijelentkezni a képernyőről: az első egyszerűen kijelentkezni. Használhatja a Ctrl+a K billentyűkódot, vagy egyszerűen írja be az exit parancsot. Ez a módszer „megöli” az aktuális ablakot, ha több képernyője van, vagy teljesen leállítja a képernyőt.
A második út az leválás. Ez a módszer futásban hagyja az aktuális folyamatot, és egyszerűen leválasztja Önt a terminálról. Például, ha egy nagyon hosszú folyamatot indít el egy ssh-munkameneten keresztül, amely nem igényel figyelmet, akkor egyszerűen lekapcsolhatja a képernyőt a Ctrl+a d billentyűkombinációval. Ez visszaviszi az eredeti héjhoz. A képernyőn elindított összes folyamat fut, és később csatlakozhat hozzájuk.

Csatlakozás egy munkamenethez
Egy nagy programot fordít egy távoli szerveren a képernyő segítségével. És természetesen Murphy törvényei szerint a kapcsolat Önön kívül álló okok miatt szakad meg. Ne ess pánikba, képernyő mentett mindent :) Csak csatlakozz újra a szerverhez és nézd meg a képernyő alatt futó folyamatokat

# képernyő -ls
Vannak képernyők:
31619.typ2.server (leválasztott)
4731.ttyp2.server (leválasztott)
2 aljzat a /tmp/screens/S-rootban.

Ebben a példában két képernyő-munkamenet fut. A kívánt csatlakozáshoz használja a parancsot

#screen -r 31619.ttyp2.server

Csak használja a képernyőt az r jelzővel és a munkamenet nevével az újracsatlakozáshoz. Nagyon kényelmes. Például elindíthat egy hosszú folyamatot a munkahelyén, és hazatérve folytathatja a végrehajtásának nyomon követését.

Fakitermelés
Számomra néha nagyon fontosnak tűnik, hogy teljes naplót mentsek el a tetteiről. Szerencsére a képernyő ezt könnyen kezeli. Csak aktiválja a naplózást a Ctrl+a H billentyűkombináció megnyomásával. A képernyő a teljes folyamat során folytatja a naplózást. Nagyon hasznos lehet visszamenni és megnézni a szükséges műveletek sorrendjét.

És még egy kicsit…
A képernyő nyomon követheti az ablaktevékenységet. Függetlenül attól, hogy valami nagyot tölt le, egy programot fordít, vagy csak egy hosszadalmas folyamatot futtat, előfordulhat, hogy hosszú ideig üres terminál lesz, tevékenység jele nélkül. A folyamat pedig eközben tovább fut. Vagy éppen ellenkezőleg, nézze meg a hibakeresési információk áramlását, és várja meg a folyamat végét. A megfigyelés elindításához lépjen a figyelni kívánt terminálhoz, és nyomja meg a Ctrl+a M billentyűkombinációt az aktivitás figyeléséhez (új információ esetén aktiválódik), vagy a Ctrl+a _ billentyűkombinációt az inaktivitás figyeléséhez (amikor a terminál leállítja az információk fogadását). Ezután nyugodtan válthat másik ablakra, vagy létrehozhat egy újat. Ha egy esemény bekövetkezik, a képernyő egy üzenettel figyelmezteti Önt az ablak számával a terminál címében. Ha gyorsan szeretne váltani erre az ablakra, használja a Ctrl+a ” (ez az idézőjel). Megjelenik az összes jelenleg aktív ablak listája. A nyilak segítségével navigálhat a kívánt ablakhoz, vagy egyszerűen tárcsázhatja a kívánt ablak számát. A figyelés leállításához lépjen a kívánt ablakba, és ugyanazzal a paranccsal szakítsa meg a megfigyelést. Például a tevékenység figyelésének leállításához nyomja le a Ctrl+a M billentyűkombinációt

A Screen egy nagyon praktikus program, ha gyakran dolgozik a konzolban úgy, hogy SSH-n keresztül csatlakozik a szerverhez. Ebben az esetben képernyő lehetővé teszi, hogy több különböző képernyőt tartson egy konzolon, kényelmesen váltva közöttük.

A képernyő lehetővé teszi az SSH-kapcsolat bontását, miközben távoli szerveren futó feladatokat ment.

Az Ubuntu telepítéséhez futtassa a parancsot

$ sudo apt-get installscreen

Ezután futtassa a képernyőt:

$képernyő

Indítás után vagy egy parancssori prompt vagy egy "üdvözlőképernyő" jelenik meg a SZÓKÖZ vagy az ENTER billentyű lenyomásával, amelyben szintén a shellre kerül. Ebben az esetben az összes parancs már „belül” a képernyőn elindul.

A képernyőből való kilépéshez (kilépéshez (kilépéshez, nem leválasztáshoz) elég kilépni az összes benne nyitva lévő shellből, vagy megnyomni a Ctl-a \ billentyűkombinációt, és a "tényleg akarod" kérdésre "y"-t válaszolni. kilépni".

A Ctrl-a d billentyűkombináció lenyomásával a munkamenet bezárása vagy befejezése nélkül leválhat az aktuális képernyőről.

Csatlakozás a képernyőhöz

Ha már fut egy képernyő munkamenet a gépen és szeretne csatlakozni hozzá, akkor

  1. ha csak egy munkamenet van, akkor elég egy egyszerű parancs: $ screen –x
  2. ha több munkamenet van, akkor: a képernyő -ls paranccsal láthatja a futó képernyők listáját: $ screen -ls Vannak képernyők a következő helyen: 2762.pts-0.debian (Kiválasztott) 2743.pts-0.debian ( Leválasztott) 2 aljzat a /var/run/screen/S-dieselben.

    Kiválasztjuk a kívánt képernyőt, és csatlakozunk hozzá:

    Képernyő -x 2762.pts-0.debian

    A munkamenetek nevei alapértelmezés szerint nem túl informatívak - csak dolgozzon fel számokat, ha több képernyő-munkamenetet szeretne futtatni és használni különböző feladatokat, kitalálhatsz értelmesebb neveket is. Kitalálunk egy nevet, majd elindítunk egy új képernyőt, így:

    $ képernyő -S "job1"

    ahol a job1 a "megnevezett" munkamenetünk neve. Most az -ls-ben sokkal tisztábban fogunk látni:

    $ screen -ls Vannak képernyők: 2762.pts-0.debian (Kiválasztott) 2795.job1 (Kiválasztott) 2743.pts-0.debian (Kiválasztott) 3 Socket a /var/run/screen/S-diesel fájlban.

    és a nevének megadásával kapcsolódhatunk a job1 munkamenethez:

    $ képernyő -x feladat1

Váltás a képernyők között

Amint azt már megértette, a munkamenetek akkor is mentésre kerülnek, ha nem csatlakozik a szerverhez, és minden, ami bennük fut, továbbra is végrehajtódik. A képernyő lehetőségei azonban nem korlátozódnak erre. Néha, amikor ssh-n keresztül dolgozom, nagyon szeretném, hogy egyszerre több terminál is nyitva legyen, míg a többszöri csatlakoztatás zűrzavar - különösen, ha több szerveren keresztül kell csatlakozni. A képernyő ebben is segíthet. Csak nyomja meg a Ctrl - a c billentyűt, és megnyílik egy másik shell. A nyitott héjak között a Ctrl - a billentyűkombinációval mozoghat<Цифра>, ahol<Цифра>- nyitott shell szám, nullától kezdve, vagy Ctrl - a n / Ctrl - a p - előre hátra. Megkaphatja a nyitott "ablakok" - konzolok listáját (és átválthat a kívántra), a Ctrl - a "billentyűkombináció segítségével; Ha normális nevet (és nem csak unalmas "bash"-ot) szeretne adni egy ablakszálnak, menjen rá, és nyomja meg a Ctrl - a A (kis- és nagybetűk megkülönböztetése), majd a megjelenő promptban írjon be egy nevet.

Parancsvégrehajtás figyelése

Ha több ablak van nyitva, hasznos lehet az egyikben megfigyelni a tevékenységet. Például, ha egy "hosszú ideig futó" parancsot futtat, és szeretné tudni, hogy az mikor fejeződik be. Ezzel a paranccsal az ablakhoz lépünk, nyomjuk meg a Ctrl - a m billentyűt, egy ilyen feliratot látunk: "A 0. ablak (bash) most minden tevékenységet figyel. Ha valami megváltozik az ablakban, a képernyő sípol, és az ablaklistában a szám után egy „@” jelenik meg.

Képernyő görgetés a képernyőn

Az ablak határa fölé ment parancs kimenetének megtekintéséhez nyomja meg a Ctrl-a [

Ezzel a képernyő másolás módba vált. A módból való kilépéshez egyszerűen nyomja meg az Esc billentyűt.

képernyő konfiguráció

A képernyő beállítása a kezdőkönyvtár ~/.screenrc fájljával történik. Például ezt írhatod oda:

Felirat mindig "%(= 45)%(+bw)Képernyő: %n | %h %=%t %c" hardstatus alwayslastline "%-Lw%(= BW)%50>%n%f* %t%( -)%+Lw%<"

Ez egy mindenkor látható listát kap nyitott ablakokés egyéb hasznos információk a képernyő alján.

Ezenkívül a Screen indításakor alapértelmezés szerint az /etc/screenrc fájlból és a felhasználó saját könyvtárából származó .screenrc fájlból származó parancsok végrehajtásra kerülnek. A konfigurációs fájlokban használható parancsok közül sok megtalálható a fenti táblázatokban a "Szöveges parancs" mezőben. Az alábbiakban egy példa a képernyőkonfigurációra egy .screenrc fájlból:

# Licencinformációk megjelenítésének letiltása indításkor Képernyő indítási_üzenet kikapcsolva # Shell megnyitása a chdir képernyő futtatásához -t Munka # Shell megnyitása a konfiguráció kezeléséhez chdir /etc screen -t Konfiguráció # Shell megnyitása a naplók megtekintéséhez chdir /var/log screen -t Naplók # Az indítás utáni első ablak kiválasztása válassza a 0-t

Ez a meglehetősen egyszerű konfigurációs fájl három Work, Configuration, Logs nevű ablakot nyit meg a felhasználó saját könyvtárában, az /etc könyvtárban és a /var/log könyvtárban. Az indítást követően az első Work nevű ablak jelenik meg a képernyőn. Az 1. ábra egy példát mutat be a Képernyő működésére ezzel a konfigurációs fájllal.

Befejezés képernyő

Ha valamilyen okból a képernyő-munkamenet nem válaszol, leállíthatja azt. Ehhez csatlakoznia kell a kívánt munkamenethez, majd nyomja meg a Ctrl - a billentyűket, és írja be a ":quit" parancsot.

A képernyő befejezi ezt a munkamenetet, és erőszakkal bezárja az összes ablakot.

Képernyővel végzett munka

A Screen egyik fő funkciója több konzolablak vagy szövegalapú alkalmazás létrehozása és kezelése egyetlen terminálablakban. A terminál képernyőn egyszerre csak egy ablak lehet (csak akkor lehet több is, ha részekre osztja a terminál képernyőt). A képernyő segítségével gyorsan válthat az ablakok között, menthet, majd később visszatérhet egy szöveges munkamenethez, és megoszthatja azt más felhasználókkal. Ezenkívül a Képernyő lehetővé teszi a Windows címek megadását, az egyes ablakokban végzett tevékenységek nyomon követését, valamint az ablakok tartalmának megosztását a másolás és beillesztés segítségével. Ezen kívül a Screen lehetővé teszi a kulcsok újratervezését, a terminálemulációs beállítások kezelését és sok egyéb apró szövegdoboz-feladat elvégzését, amelyekre nem biztos, hogy állandóan szükség van, de amelyek bizonyos időpontokban segíthetik az adminisztrációs munkát.

Az ábrán egy Képernyõ látható három elnevezett ablakkal (Munka, Konfiguráció, Naplók) és a benne megnyílt Vim szövegszerkesztõvel, egy Screen konfigurációs példafájllal.

Első indítás

A képernyő elindítható a képernyő paranccsal, de először ellenőrizze, hogy a Screen telepítve van-e a rendszeren a következő paranccsal:

$ melyik képernyő /usr/bin/screen

Ha a parancs a fenti példában szereplő elérési utat adja vissza, akkor azonnal elkezdheti használni, ellenkező esetben a Screen telepíthető az operációs rendszer szabványos csomagtámogatási eszközeivel, vagy letölthető a hivatalos webhelyről: http://www.gnu. org/software/screen/ .

Most már futtathatjuk a Képernyőt egyszerűen begépelve:

$képernyő

Az indítás után a verzióra és a licencre vonatkozó információk jelenhetnek meg a képernyőn (a konfiguráció mérlegelésekor figyelembe vesszük, hogyan lehet törölni ennek az üzenetnek a megjelenítését), és ebben az esetben meg kell nyomnia a "Szóköz" vagy az "Enter" billentyűt, utána első pillantásra a szokásos , szövegburkolóba jutunk. Meg kell jegyezni, hogy a parancssorban azonnal megadhat egy parancsot egy adott alkalmazás elindításához, például a top indításához be kell írnia:

$ képernyő felső

Rendben, most fut a Screen, de első ránézésre semmi külső változás - dolgozhatunk futó shellben, vagy használhatjuk a topot. A trükk az, hogy futás közben a Screen minden billentyűleütést közvetlenül az alkalmazásnak továbbít, de (alapértelmezés szerint ) hagy magának olyan vezérlőparancsokat, amelyek a Ctrl + a billentyűkombinációval kezdődnek.

Ez a vezérlőbillentyű-kombináció megváltoztatható a konfigurációs fájlokon keresztül (amelyeket alább tárgyalunk), de minden példában csak az alapértelmezett konfigurációt veszik figyelembe. Így az összes képernyőbillentyűzet-parancs két billentyűkombinációból áll - a Ctrl + a vezérlőbillentyűből és magából a billentyűből, vagy a parancsot képviselő billentyűkombinációból. Szinte minden parancsnak megvan a maga szöveges megfelelője is, amely akár konfigurációs fájlon keresztül, akár a következő parancs futtatásával végrehajtható:

Ebben az esetben két billentyűparancsot kell végrehajtanunk a Ctrl + a, majd a kettőspont billentyű lenyomásával. Ebben az esetben a Képernyő egy parancssort jelenít meg kettőspont formájában a képernyő alján. Ugyanaz a parancs, amelyet éppen egy billentyűparancs segítségével futtattunk, a konfigurációs fájlon keresztül futtatható a kettőspont szöveges paranccsal, amelyre például szükség lehet egy parancssor megjelenítéséhez indításkor, vagy a parancssort okozó billentyűkombináció újratervezéséhez. Az alábbiakban a fenti példához hasonlóan minden billentyűkombinációhoz kiírom a hozzájuk tartozó kulcsszavakat, amelyek használhatók a konfigurációs fájlokban, vagy beírhatók a Ctrl + a és: billentyűkombinációval.

Felmerülhet itt egy jogos kérdés - mi van akkor, ha az alkalmazásnak közvetlenül át kell adnia a Ctrl + a billentyűkombinációt, amelyet a Screen szolgáltatási kulcsként már használnak? Például ugyanezt a kombinációt használja a readline parancssori szerkesztőkönyvtár a sor elejére ugráshoz. Ebben az esetben a Screen a következő parancsot adja:

Ablakkezelés

Az előző részben megtanultuk, hogyan kell futtatni a Képernyőt, és megtanultuk az összes billentyűzetparancs alapvető sablonját. Ideje foglalkozni az ablakok kezeléséhez szükséges parancsokkal. Amikor a Képernyő elindul, egyetlen ablakot hoz létre (kivéve, ha a konfiguráció több ablak létrehozását írja elő egyszerre), és hozzárendeli a 0 számot. Új parancshéjablak hozható létre az alábbi paranccsal:

BILLENTYŰZET SZÖVEG PARANCS LEÍRÁS
ctrl+a c képernyő Hozzon létre egy új ablakot

Ebben az esetben a Képernyő új ablakot hoz létre és hozzárendeli a soron következő számot, esetünkben az új ablak az 1. számú ablak lesz.

Most már van két szöveges ablakunk, amelyek közül az újonnan létrehozott 1-es számú ablak az aktuális, a 0-ás ablak pedig a háttérben. De meg kell jegyezni, hogy még ha az ablak a háttérben is van, akkor is képes érzékelni a benne futó alkalmazás kimenetét, mintha az aktuális lenne. Például elindíthatunk egy folyamatot a 0-s ablakban, amely rendszeres időközönként további információkat ad ki (például ez lehet a tail -f parancs), majd átválthatunk az 1-es ablakra, hogy szövegszerkesztőben működjön. Egy idő után, ha látni akarjuk, hogy mi történik a 0-s ablakban, átválthatunk erre az ablakra, és láthatjuk az ott futó folyamat összes kimenetét. Ezután visszaválthat a szerkesztőablakba.

Az előző bekezdésben leírtam egy példát az ablakok közötti váltásra, de még nem mondtam el, hogy milyen parancsokat használnak erre. Nézzük meg közelebbről az ablakok kezelésére leggyakrabban használt parancsokat:

BILLENTYŰZET SZÖVEG PARANCS LEÍRÁS
ctrl+a w ablakok Felsorolja az összes ablak számát és címét a képernyő alsó sorában
ctrl+a « ablaklista Megjeleníti az összes ablak számainak és címeinek interaktív listáját, amelyből kiválaszthat egy ablakot a váltáshoz
ctrl+a ablak száma válassza ki Válassza ki az ablakot szám szerint. Például a Ctrl + a és 0 parancs hatására az aktuális ablak száma 0 lesz
Ctrl+a n következő Váltás sorrendben a következő ablakra, vagy az első ablakra, ha az utolsó ablakban voltunk
ctrl+a p előz Váltás sorrendben az előző ablakra, vagy az utolsó ablakra, ha az első ablakban voltunk
ctrl+a válassza ki Jelenítsen meg egy felszólítást az ablak számának megadásához a váltáshoz
ctrl+a ctrl+a Egyéb Váltás az utoljára használt ablakra
ctrl+a N szám Az aktuális ablak számának és címének megjelenítése
ctrl+a A cím Állítsa be az aktuális ablak címét
ctrl+a k megöl Kényszerítse be az ablakot, például ha az alkalmazást nem lehet a szokásos módon bezárni

Az egyik ablak bezárásakor a többi ablak száma nem változik, a számozásban "lyukak" jelennek meg, amelyeket később új ablakokkal lehet feltölteni. Bár a Screen-nek van ablakszám megváltoztatására szolgáló parancsa, ez nem veszi figyelembe itt és önálló tanulmányozásra marad. Ha minden ablak be van zárva, a Képernyő kilép, és megjelenik egy üzenet:

Munka szöveggel

Fentebb megtanultuk, hogyan kell elindítani a Képernyőt és kezelni az ablakokat – létrehozni, ablakról ablakra váltani, neveket rendelni és bezárni. Most nézzük meg az ablakok tartalmával való munkát – az egyik ablak szöveges tartalmának másolását és beillesztését a másikba, az ablakok figyelését, a képernyő szöveges másolatának mentését és más hasonló feladatokat:

BILLENTYŰZET SZÖVEG PARANCS LEÍRÁS
ctrl+a M monitor Aktivitásfigyelés engedélyezése/letiltása az aktuális ablakban. Ha a felügyelet engedélyezve van, és a háttérben egy ablakban szöveg jelenik meg, a tevékenységgel kapcsolatos információk megjelennek a szolgáltatássorban.
csend Az inaktivitás figyelésének engedélyezése/letiltása az aktuális ablakban. Ha a monitorozás engedélyezve van, és egy bizonyos ideig nem jelenik meg szöveg a háttérben lévő ablakban, akkor a szolgáltatás sorban megjelenik a tevékenység hiányára vonatkozó információ.
ctrl+a h papíralapú Alapértelmezés szerint írja be az aktuális ablak szöveges képét a Screen könyvtár hardcopy.window_number fájljába.
ctrl+a H log Alapértelmezés szerint engedélyezi/letiltja az aktuális ablak szövegének követését a screenlog.window_number fájlhoz a Sccreen könyvtárban.
ctrl+a [ másolat Lépjen be a másolás módba. Az alábbiakban az ehhez a módhoz tartozó további parancsokat ismertetjük.
ctrl+a ] paszta Illesszen be szöveget az ablakba az alapértelmezett regiszterből (ahova korábban a fenti paranccsal másolta).

Másolás módban a Screen elindít egy, a Vi szerkesztőhöz hasonló szövegszerkesztőt. A leggyakrabban használt szerkesztőparancsok a következők:

  • A kurzorbillentyűk mozgatják a kurzort a képernyő pufferén;
  • A szóköz jelöli a másolási terület kezdetét és végét. A Szóköz másodszori megnyomásával a megjelölt szöveg az alapértelmezett kis- és nagybetűbe kerül, és a Képernyő kilép a másolási módból;

Több ablak a képernyőn

Alapértelmezés szerint a Képernyő csak egy logikai ablakot hagy látható a képernyőn, de ha szükséges, van egy további lehetőség a terminál képernyőjének vízszintes régiókra való felosztására. Így egy terminál képernyőn egyszerre több ablak is megjeleníthető. Nézzük meg közelebbről a képernyőrégiók kezeléséhez szükséges parancsokat:

A 2. ábra egy képernyőt mutat három elnevezett ablakkal (Munka, Konfiguráció, Naplók) és egy két régióra osztott képernyővel. A felső régióban a Munka ablak nyílik meg a Vim szövegszerkesztővel és egy példa Képernyő konfigurációs fájllal. Az alsó régióban a Konfigurációs ablak az /etc/screenrc általános konfigurációs fájl egy részével.

Konzolmunkamenetek

Végül megnézzük a Screen egyik legnépszerűbb funkcióját, képzeljük el a következő helyzetet: a rendszergazda otthon tartózkodva bejelentkezik egy távoli szerverre, megnyit több ablakot, elindítja a szükséges feladatokat, majd megszakítja a kapcsolatot és átmegy a munka. A munkahelyén ismét ugyanarra a szerverre megy, és az elvégzett feladatok eredményeivel visszaállítja az otthon nyitott ablakokat. Kicsit fantasztikusan hangzik? Semmilyen esetben sem! A Képernyőkonzol munkamenetei pontosan ezt a célt szolgálják. Lehetővé teszik az aktuális Képernyő-munkamenet leválasztását az összes ablakkal és futó alkalmazással a terminálról, majd bármikor újra csatlakoztathatja. Ugyanakkor a Képernyő alatt futó összes alkalmazás továbbra is működik, és az ablakait használja az információk megjelenítésére. Ráadásul több konzolmunka is lehet, de ebben a cikkben nem foglalkozunk ezzel részletesen.

Fontolja meg a parancsokat a konzol-munkamenet terminálról való leválasztására:

BILLENTYŰZET SZÖVEG PARANCS LEÍRÁS
ctrl+a d leválasztani Válassza le a konzolmunkamenetet, és hagyja futni a háttérben. Ugyanakkor Screen ezt írja:
ctrl+a D D pow_detach Válassza le a konzolmunkamenetet, hagyja futni a háttérben, és küldjön egy HANGUP jelet a szülőképernyő-folyamatnak. Ha a Screen programot távoli terminálról futtatja, akkor ez a Screen leválasztását, majd a kapcsolat megszakítását jelenti. Ugyanakkor Screen ezt írja:
ctrl+a z felfüggeszteni Válassza le a konzolmunkamenetet, és hagyja futni a szülő shell háttérfolyamataként. Ebben az esetben az alább ismertetett parancsokon kívül a shell háttérfolyamatainak kezelésére szolgáló szabványos parancsok is használhatók a munkamenet visszaállítására.
ctrl+a ctrl + Kilépés Zárja be az összes munkamenet ablakot, és lépjen ki a képernyőről. Megjegyzendő, hogy sok disztribúció újradefiniálja a parancs billentyűkombinációját, de a szöveges parancs így is használható

Egy leválasztott munkamenethez való újracsatlakozáshoz vagy az elérhető munkamenetek listájának megtekintéséhez el kell indítania a Képernyőt a következő lehetőségek egyikével:

Mi a következő lépés?

A képernyő rengeteg különféle funkcióval rendelkezik, és szinte lehetetlen ezeket egy cikkben leírni, így a funkciók egy része a színfalak mögött maradt. Íme néhány olyan képernyő-funkció/beállítás, amelyekről fent nem volt szó, és amelyeket független tanulmányozásra hagytunk:

  • Parancsok a terminál emuláció beállításához;
  • Többfelhasználós konzolmunkamenetek;
  • Billentyűparancsok hozzárendelése vagy átrendelése parancsokhoz;
  • A szöveges parancsok kiegészítő beállításai. Például a minta konfigurációs fájlban használt screen parancs -t opciója;
  • Ritkán használt parancsok, például olyan parancsok, amelyek a Képernyő indításakor használhatók - visszhang és alvás;
  • Környezeti változók, amelyek hasznosak lehetnek a Képernyő konfigurálásakor;
  • További indítógombok Képernyő;

képernyő alternatívák

A Screen egy nagy múltú program, meg kell jegyezni, hogy az első verzió 1987-ben jelent meg. Jelenleg gyakorlatilag nem adnak hozzá új funkciókat a Screen-hez (az egyik ok az lehet, hogy jelenleg nagy számban vannak jelen), és alapvetően csak hibajavítások készülnek. Ha valakinek nem tetszik a Képernyő relatív „öregsége”, vagy nincs szüksége ilyen nagyszámú szolgáltatásra, akkor az alábbi programok közül választhat:

  • dtach () - ennek a programnak a fejlesztése során a fő hangsúly a tömörségen van. A képernyőhöz hasonlóan támogatja a konzolmunkamenetekkel való együttműködést, de nem rendelkezik más képernyőfunkciókkal.
  • SplitVT (http://www.devolution.com/~slouken/projects/splitvt/) – lehetővé teszi, hogy a terminál képernyőjét két részre ossza, és egyszerre két programhéjjal dolgozzon.
  • Tmux() – A Tmux kliens-szerver modellt használ a konzolmunkamenetekhez.
  • Twin (http://linuz.sns.it/~max/twin/) - kísérlet a grafikus megfelelőihez hasonló szöveges ablakfelület létrehozására.

A Screen egy teljes képernyős program, amellyel egy fizikai konzol multiplexelhető több folyamat (általában interaktív shell) között. Arra kéri a felhasználót, hogy nyisson meg több külön terminált egyetlen terminálablakkezelőben.

Az Ubuntu 10.04 Server Edition-emen a Képernyő alapértelmezés szerint telepítve volt. De a Linux Mint alapértelmezés szerint nem rendelkezik képernyővel, először telepítenem kell az apt-get paranccsal. Kérjük, kövesse a disztribúció képernyőjének telepítési folyamatát.

# apt-get telepítési képernyő (Debian alapú rendszereken) # yum telepítési képernyő (RedHat alapú rendszereken)

Valójában a Screen egy nagyon szép Linux-parancs, amely Linux-parancsok százaiban rejtőzik. Lássuk a Képernyő funkcióit.

A Képernyő első elindítása

Csak írja be a képernyőt a parancssorba. Ezután megjelenik a képernyő ugyanazzal a felülettel, mint a parancssorban.

[e-mail védett]~$képernyő

Képernyőbeállítások megjelenítése

A képernyőre belépve különféle műveleteket hajthat végre, akárcsak egy normál CLI környezetben. De mivel a képernyő egy alkalmazás, ezért vannak parancsai vagy opciói.

Tárcsa Ctrl-Aés ? . Most látni fogja az összes parancsot vagy opciót a képernyőn.

Képernyőbillentyűk összerendelései, 1/1. oldal. Parancsbillentyű: ^A Szó szerinti ^A: szünet ^B b áramlás ^F f zárképernyő ^X x pow_break B képernyő ^C c szélesség W tiszta C fókusz ^I log H pow_detach D select " windows ^W w colon: nyomtatott példány h bejelentkezés L prev ^H ^P p ^? csend _ wrap ^R r másolás ^[ [ help ? meta a quit \ split S writebuf > detach ^D d history ( ) monitor M readbuf< suspend ^Z z xoff ^S s digraph ^V info i next ^@ ^N sp n redisplay ^L l time ^T t xon ^Q q displays * kill K k number N remove X title A dumptermcap . lastmsg ^M m only Q removebuf = vbell ^G fit F license , other ^A reset Z version v ^] paste . " windowlist -b - select - 0 select 0 1 select 1 2 select 2 3 select 3 4 select 4 5 select 5 6 select 6 7 select 7 8 select 8 9 select 9 I login on O login off ] paste .

A képernyő kilépéséhez nyomja meg a " terek"vagy" Belép". (Ne feledje, hogy minden billentyűparancs, amely a " Ctrl-A", idézőjelek nélkül használjuk).

Képernyő letiltása

A képernyő egyik előnye, hogy letiltható. Ezután visszaállíthatja anélkül, hogy elveszítené a korábban végrehajtott információkat. Íme egy példa szkript:

középen vagy ssh-on a szerverén. Tegyük fel, hogy letölt egy 400 MB-os javítást a rendszeréhez a paranccsal wget.

A letöltési folyamat körülbelül két órát vesz igénybe. Ha le van tiltva SSH munkamenetet vagy megszakadt a kapcsolat baleset miatt, a letöltési folyamat leáll. Mindent elölről kell kezdenie. Ennek elkerülésére használhatjuk a képernyőt, és kikapcsolhatjuk.

Vessen egy pillantást erre a csapatra. Először is be kell lépnie a képernyőre.

[e-mail védett]~$képernyő

Ezután létrehozhat egy letöltési folyamatot. Például a Linux Mintemen frissítettem dpkg paranccsal csomagolni apt-get.

[e-mail védett]~ $ sudo apt-get install dpkg

Minta kimenet

Csomaglisták olvasása... Kész Függőségi fa felépítése Állapotinformációk olvasása... Kész A következő csomagok frissítésre kerülnek: dpkg 1 frissítve, 0 újonnan telepített, 0 eltávolítandó és 1146 nincs frissítve. 2583 kB archívumot kell szerezni. A művelet után 127 kB további lemezterület kerül felhasználásra. Letöltés: 1 http://debian.linuxmint.com/latest/testing/main dpkg i386 1.16.10 47% 14,7 kB/s

"és" d". Nem fog látni semmit, ha megnyomja ezeket a gombokat. Az eredmény így fog kinézni:

[e-mail védett] ~ $

Képernyő újra engedélyezése

Például miután letiltotta a képernyőt, azt feltételezzük, hogy megszakította SSHülés és menj haza. Otthon futsz SSH vissza a szerverére, és látni szeretné, hogyan halad a feltöltés. Ehhez vissza kell állítania a képernyőt. A következő parancsot futtathatja:

[e-mail védett]~ $ képernyő -r

És látni fogja, hogy a folyamat onnan folytatódott, ahol megszakította.

Ha több mint 1 képernyő munkamenetben, meg kell adnia a munkamenet képernyőazonosítóját. Használja a screen -ls parancsot, hogy megtudja, hány képernyő áll rendelkezésre.

[e-mail védett]~ $ képernyő -ls

Minta kimenet

[e-mail védett]~ $ képernyő -ls Vannak képernyők: 7849.pts-0.mint (10/06/2013 01:50:45 PM) (Kiválasztott) 5561.pts-0.mint (10/06/2013 11:12: 05 AM) (leválasztott) 2 aljzat a /var/run/screen/S-pungki mappában

Ha akarja, állítsa vissza a képernyőt 7849.pts-0.mint, majd írja be ezt a parancsot.

[e-mail védett]~ $ képernyő -r 7849

Több képernyő használata

Lehet-e többet futni, mint 1 képernyő elvégezni a munkát? Igen. Egyszerre több képernyőablakkal is dolgozhat. Ennek 2 (két) módja van.

Először is leválaszthatja az első képernyőt, és futtathat egy másik képernyőt a terminálon. Másodszor, beágyazod a képernyőt.

Váltás a képernyők között

Ha beágyazott képernyője van, válthat közöttük a " Ctrl-A"és" n". Ezzel a következő képernyőre lép. Ha vissza kell térnie az előző képernyőre, nyomja meg a " Ctrl-A"és" p".

Új képernyőablak létrehozásához egyszerűen kattintson a " Ctrl-A"és" Val vel".

Az Ön által végzett bejelentkezés

Néha fontos, hogy leírja, mit csinált, amíg a konzolban volt. Tegyük fel, hogy Ön Linux rendszergazda, aki sok Linux szervert kezel.

A képernyős bejelentkezéssel nem kell minden parancsot leírnia. A Képernyő regisztráció funkció aktiválásához nyomja meg az "strong>Ctrl-A" és a " H". (Kérjük, legyen óvatos, nagybetűt használunk H. Kis betűhasználat h csak egy képernyőképet hoz létre a képernyőről külön fájlban).

A képernyő bal alsó sarkában megjelenik egy értesítés, amely azt mondja, hogy „naplófájl létrehozása” képernyőnapló.0“. Meg fogod találni képernyőnapló.0 fájlt a saját könyvtárában.

Ez a funkció hozzáad mindent, amit a képernyő ablakában tesz. Zárja be a képernyőt a bejelentkezéshez, kattintson a " Ctrl-A"és" H" újra.

[e-mail védett]~ $ képernyő -L

A naplózási funkció engedélyezésének másik módja, ha hozzáadja a " -L" a képernyő első futtatásakor. A parancs így fog kinézni.

[e-mail védett]~ $ képernyő -L

Képernyőzár

A képernyő egyben a képernyőzár parancsikonja is. rákattinthat a " Ctrl-A"és" x" a képernyő zárolásához. Ez akkor hasznos, ha gyorsan szeretné lezárni a képernyőt. Íme egy példa a képernyőzár kimenetére, miután a parancsikonokra kattintott.

Pungki Arianto által használt képernyő a mentán. Jelszó:

A zárolás feloldásához használhatja Linux jelszavát.

Jelszó hozzáadása a képernyőzárhoz

Biztonsági okokból jelszót is elhelyezhet a képernyő munkamenetében. A képernyő újbóli csatlakoztatásakor jelszót kell megadnia. Ez a jelszó eltér a fenti képernyőzár mechanizmustól.

A képernyő jelszavas védelméhez szerkesztheti a „ $HOME/.screenrc". Ha a fájl nem létezik, manuálisan is létrehozhatja. A szintaxis ilyen lesz.

jelszó crypt_password

Készíteni " crypt_password", használhatja a "parancsot" mkpasswd" Linuxon. Itt van a jelszóval rendelkező parancs " pungki123".

[e-mail védett]~ $ mkpasswd pungki123 l2BIBzvIeQNOs

mkpasswd jelszót generál a fent látható módon. Miután megvan a jelszó, átmásolhatja egy fájlba" .screenrc" és mentse. Most a fájl " .screenrc"így fog kinézni.

Jelszó l2BIBzvIeQNOs

Amikor legközelebb elindítja a képernyőt, kapcsolja ki, és a rendszer kérni fogja a jelszót, amikor megpróbálja újra bekapcsolni, az alábbiak szerint:

[e-mail védett]~ $ képernyő -r 5741 Képernyőjelszó:

Írd be a jelszót " pungki123" és a képernyő újra csatlakozik.

Miután futtatta a képernyőn megjelenő jelszót, és kattintson a " Ctrl-A"és" x", akkor a kimenet ez lesz.

Pungki Arianto által használt képernyő a mentán. Jelszó: Képernyőjelszó:

Meg kell adnia egy jelszót kétszer. Az első alkalom a tiéd linux jelszó, a második a fájlban megadott jelszó .screenrc.

Kilépés a képernyőről

2 (két) módja van a képernyőből való kilépésnek. Először is használjuk a " Ctrl-A"és" d" kikapcsolásához. Másodszor - használhatjuk a képernyő kiürítési parancsot. Használhatja is "Ctrl-A"és" NAK NEK", hogy leszögezze a képernyőt.