Ghid pentru utilizarea comenzilor de ecran în Linux
Introducere
Comanda screen este un multiplexor de terminal puternic pentru sistemele Linux și Unix-like. Aceasta vă permite să gestionați mai multe sesiuni shell dintr-o singură fereastră de terminal, să mențineți sesiunile în execuție chiar și după deconectare și să vă reconectați la aceste sesiuni ulterior. Acest lucru este deosebit de util pentru sesiunile la distanță prin SSH, deoarece asigură faptul că procesele care rulează mult timp nu sunt întrerupte dacă conexiunea cade. În acest ghid, vom acoperi modul de instalare, utilizare și gestionare a sesiunilor de ecran, împreună cu câteva comenzi comune și sfaturi practice.
De ce să utilizați screen?
Utilizarea ecranului oferă mai multe avantaje:
- Gestionarea sesiunii: Rulați mai multe sesiuni shell într-o singură fereastră de terminal.
- Persistența sesiunii: Continuați rularea proceselor chiar dacă vă deconectați de la terminal sau pierdeți conexiunea SSH.
- Reatașare: Reconectați-vă la o sesiune în orice moment și reluați de unde ați rămas.
- Ușurința de utilizare: Comenzile simple și comenzile rapide facilitează gestionarea sesiunilor.
Instalarea ecranului
screen este de obicei preinstalat pe majoritatea distribuțiilor Linux. Cu toate acestea, dacă nu este disponibil pe sistemul dvs., îl puteți instala utilizând managerul de pachete:
- Debian/Ubuntu:
sudo apt-get update
sudo apt-get install screen
- CentOS/RHEL:
sudo yum install ecran
- Fedora:
sudo dnf install ecran
- Arch Linux:
sudo pacman -S screen
Odată instalat, puteți începe să utilizați screen imediat.
Pornirea unei sesiuni screen
Pentru a începe o nouă sesiune screen, tastați pur și simplu:
screen
Aceasta va deschide o nouă sesiune ecran cu o interfață de linie de comandă care se comportă ca un terminal normal. Puteți începe să executați comenzi sau procese în cadrul acestei sesiuni.
Pentru a porni o nouă sesiune cu un nume specific (pentru a o gestiona mai ușor ulterior), utilizați:
screen -S nume_sesiune
Înlocuiți session_name cu un nume semnificativ pentru sesiunea dvs.
Detașarea și reatașarea la sesiuni
Una dintre cele mai utile caracteristici ale ecranului este posibilitatea de a vă detașa de o sesiune și de a o reatașa ulterior.
Detașarea de la o sesiune
Pentru a vă detașa de o sesiune screen fără a o închide, apăsați:
Ctrl A , D
Secvența Ctrl A spune ecranului că sunteți pe cale să îi dați o comandă, iar D înseamnă “detașare” După detașare, sesiunea dvs. va continua să ruleze în fundal.
Reatașarea la o sesiune
Pentru a vă reconecta la o sesiune detașată, utilizați:
screen -r
Dacă aveți mai multe sesiuni, le puteți lista și puteți alege sesiunea specifică la care să vă atașați:
screen -ls
Această comandă va afișa toate sesiunile screen active, inclusiv ID-urile și numele acestora:
Există ecrane pe:
1234.nume_sesiune (Detașat)
5678.another_session (Detașat)
2 Sockets în /var/run/screen/S-user.
Pentru a vă reatașa la o anumită sesiune, utilizați ID-ul sau numele acesteia:
screen -r 1234
sau
screen -r nume_sesiune
Utilizarea mai multor ferestre într-o singură sesiune ecran
screen vă permite să creați mai multe ferestre în cadrul unei singure sesiuni. Aceasta înseamnă că puteți rula comenzi sau procese diferite în ferestre separate și puteți comuta ușor între ele.
Crearea unei ferestre noi
Pentru a crea o fereastră nouă în cadrul unei sesiuni screen existente, apăsați:
Ctrl A , C
Acest lucru va deschide o fereastră nouă cu o nouă solicitare shell.
Navigarea între ferestre
Pentru a comuta între ferestre, utilizați:
- Ctrl A, N: Treceți la fereastra următoare.
- Ctrl A, P: Treceți la fereastra anterioară.
- Ctrl A, “: Afișați o listă de ferestre deschise și alegeți una la care să comutați.
Redenumirea unei ferestre
Pentru a redenumi o fereastră pentru o mai bună organizare, apăsați:
Ctrl A , A
Tastați noul nume pentru fereastră și apăsați Enter.
Închiderea unei ferestre
Pentru a închide o fereastră, pur și simplu ieșiți din shell-ul care rulează în fereastra respectivă tastând:
exit
sau apăsând Ctrl D .
Blocarea și deblocarea unei sesiuni pe ecran
Dacă trebuie să vă blocați temporar sesiunea pe ecran, utilizați următoarea comandă:
Ctrl A , X
Aceasta vă va cere să introduceți parola de utilizator pentru a debloca sesiunea.
Personalizarea ecranului Configurare
Comportamentul ecranului poate fi personalizat cu ajutorul fișierului .screenrc, care se află în directorul dvs. home. Puteți adăuga comenzi la acest fișier pentru a modifica legarea tastelor implicite, pentru a seta titlurile ferestrelor și pentru a personaliza comportamentul de pornire al ecranului.
Pentru a crea sau edita fișierul .screenrc, utilizați un editor de text:
nano ~/.screenrc
Iată câteva exemple de setări pe care le-ați putea adăuga:
# Schimbați secvența de scăpare implicită la Ctrl B
escape ^Bb#
Setați o linie de stare în partea de jos a ecranuluihardstatus on
hardstatus alwayslastline “%{= kw}%-w%{= BW}%n %t%{-}% w”
Salvați fișierul și reporniți ecranul pentru a aplica modificările.
Exemple de cazuri de utilizare pentru screen
- Rularea proceselor de lungă durată: Dacă trebuie să rulați un script sau o comandă a cărei finalizare durează mult timp, executați-l în cadrul unei sesiuni ecran. În acest fel, chiar dacă vă deconectați de la SSH, procesul va continua să ruleze.
- Gestionarea mai multor sesiuni: Dacă lucrați la mai multe proiecte, puteți utiliza sesiuni de ecran sau ferestre diferite pentru fiecare sarcină.
- Gestionarea serverelor la distanță: Utilizați ecranul pentru a gestiona servere la distanță prin SSH. Acest lucru este util în special pentru administrarea serverelor care necesită întreținere sau monitorizare continuă.
Concluzii
Comanda screen este un instrument versatil și puternic pentru gestionarea mai multor sesiuni terminale și pentru rularea proceselor lungi pe sistemele Linux. Cu capacitatea de a detașa, reatașa și crea mai multe ferestre, screen oferă un mediu robust atât pentru utilizatorii ocazionali, cât și pentru cei experimentați. Fie că rulați scripturi complexe, fie că aveți nevoie doar de o modalitate de a menține o sesiune shell persistentă, stăpânirea comenzii screen vă va spori considerabil productivitatea și flexibilitatea pe Linux.