Multitasken op de Linux-terminal met scherm
Advertentie
Als u een Linux-gebruiker bent, moet u op een gegeven moment aan de slag met de Linux-terminal. Sommige terminalopdrachten zijn misschien populair, andere onduidelijk, maar in veel gevallen is het gemakkelijker om een opdracht via een terminalvenster uit te voeren dan via een GUI.
Maar wat gebeurt er als u meerdere opdrachten tegelijkertijd moet uitvoeren? GNU Screen maakt terminal-multitasking zo eenvoudig; laten we je beginnen het te gebruiken.
Wat is GNU Screen?
GNU Screen is een tool voor de Linux-terminal die een terminal in verschillende splitst. Het betekent dat u één opdracht kunt uitvoeren, bijvoorbeeld een wget
download van een afbeeldingsbestand, terwijl u overschakelt naar een tweede, zoals systemctl
, om de SMART-status van uw schijf te controleren.
Hiermee kunt u onafhankelijke opdrachten zoals deze uitvoeren in afzonderlijke sessies die u naar believen kunt verbinden en ontkoppelen.
Het is niet alleen handig voor je eigen pc; het is bijna essentieel als u een externe server beheert. Als u opdrachten op een server uitvoert via SSH, wat gebeurt er als u de verbinding verbreekt? De opdracht kan nog steeds worden uitgevoerd, maar u kunt deze niet eenvoudig volgen of ermee communiceren.
Screen lost dat probleem voor u op. U kunt opnieuw verbinding maken met een schermsessie als u de verbinding verliest, of deze loskoppelen en op de achtergrond laten lopen totdat u opnieuw toegang nodig hebt.
Hoe het scherm te installeren
Scherm wordt niet meegeleverd met de meeste Linux-distributies, maar omdat het dateert van voor Linux, wordt het goed ondersteund.
Als u het op een op Ubuntu of Debian gebaseerde distro wilt installeren, voert u het volgende uit:
sudo apt-get update sudo apt-get install screen
Op dezelfde manier, als je Arch uitvoert, open dan je shell-venster en voer:
sudo pacman -Syu sudo pacman -S screen
Als je Fedora gebruikt, voer dit in plaats daarvan uit:
sudo yum update sudo yum install screen
Een schermsessie starten
Een Screen-sessie starten is eenvoudig. Open een terminal of maak een SSH-verbinding en typ screen
. U ziet het scherm Introductievenster; druk op de spatiebalk of uw enter-toets om deze te sluiten.
Als u dit hebt gedaan, wordt uw terminalscherm weer normaal. Er is geen duidelijk teken dat u een Screen-sessie uitvoert, maar elk commando dat u vanaf dit punt uitvoert, wordt uitgevoerd binnen een sessie die u nu naar wens kunt loskoppelen en opnieuw kunt bevestigen.
Schermen bekijken en loskoppelen
U wilt weten hoe u verbinding kunt maken met een Screen-sessie als u van plan bent deze opnieuw te gebruiken. Als je al in een Screen-sessie bent, druk je op Ctrl + A gevolgd door de letter d (kleine letters).
De sessie en alle opdrachten die momenteel erin worden uitgevoerd, worden losgemaakt om op de achtergrond te worden uitgevoerd, zodat ze later opnieuw kunnen worden verbonden. Ervan uitgaande dat u slechts één schermsessie hebt, typt u:
screen -r
Hiermee wordt uw sessie opnieuw gekoppeld en kunt u doorgaan. Als u een sessie op afstand krachtig moet loskoppelen en vervolgens zelf opnieuw verbinding wilt maken, typt u:
screen -rd
U kunt meer dan één schermsessie uitvoeren. Als u opnieuw verbinding wilt maken met een specifieke sessie, moet u het ID-nummer van het sessieproces achterhalen. Typ screen -ls
of screen -r
om ze weer te geven.
Zoals de afbeelding hierboven laat zien, typt u screen -r
gevolgd door het eerste ID-nummer aan het begin van elke sessie. Bijvoorbeeld:
screen -r 25407
Als u een sessie wilt sluiten en alle actieve opdrachten erin wilt annuleren, maakt u opnieuw verbinding en typt u exit
.
Andere schermterminalopdrachten om te onthouden
Screen heeft een paar trucjes in petto voor gebruikers die er het maximale uit willen halen. Hier zijn enkele van de meest voorkomende terminalopdrachten die u kunt onthouden.
Lijstscherm Sneltoetsen
Zoals alle goede terminalprogramma's heeft Screen sneltoetsen die u kunt gebruiken. U gebruikt er al een, Ctrl + A en d, om bestaande schermen los te koppelen.
Als je de rest wilt zien, typ je gewoon Ctrl + A gevolgd door ? om u een lijst te geven waarmee u kunt werken.
Maken en schakelen tussen Windows in een sessie
U hoeft niet tussen sessies te schakelen om opdrachten uit te voeren; u kunt ook schakelen tussen vensters in één sessie.
Om een nieuw venster in uw sessie te maken, drukt u op Ctrl + A gevolgd door c (kleine letters) om een nieuw venster te maken. Uw eerste venster begint op nummer 0, uw volgende venster 1, enz.
Druk op Ctrl + A en filter vervolgens door de cijfers 0-9. Om elke lijst weer te geven, gebruikt u Ctrl + A en vervolgens w (kleine letters) om een lijst met sessies met een ID van één cijfer te bekijken.
Maak een sessie met een naam
Een willekeurig gegenereerde ID is moeilijk te onthouden; als je je sessie een naam geeft, kan dat dingen gemakkelijker maken. Als u een sessie met een naam wilt starten, typt u:
screen -S examplename
Als u opnieuw verbinding wilt maken met deze sessie op naam, typt u:
screen -X examplename
Deel een schermsessie
Wilt u een terminalsessie delen met een collega of een vriend? Dankzij Screen kunt u dat. Type:
screen -rx
In plaats van iemand los te maken die momenteel verbonden is met deze sessie, neemt u gewoon deel aan deze sessie. Andere gebruikers zien wat u typt en de opdrachten die u uitvoert; u kunt ook andere gebruikers bekijken als zij hetzelfde doen.
Log uw schermuitvoer in een bestand
Mogelijk moet u uw schermuitvoer in een bestand loggen vanwege onderhouds- of auditredenen. Typ hiervoor:
screen -L
Een sessie begint met de mogelijkheid om in te loggen bij een bestand met de naam screenlog.x (waarbij X een getal is, beginnend bij nul) in uw thuismap. Typ Ctrl + A gevolgd door H ( Shift + h ) om een logboek in een sessie te starten.
Vergrendel een schermsessie
Als u een schermsessie wilt beschermen, kunt u de sessie vergrendelen met uw bestaande Linux-wachtwoord.
Typ Ctrl + A gevolgd door x (kleine letters) om een sessie te vergrendelen terwijl u er momenteel mee verbonden bent.
Dit vergrendelt het in uw huidige terminalvenster; Voer uw accountwachtwoord in om te ontgrendelen.
Terminal Multitasking kan niet eenvoudiger
Dankzij GNU Screen hoef je je geen zorgen te maken over het wachten op een terminalopdracht. Het is handig als u externe servers wilt bedienen, maar het is ook een geweldig hulpmiddel voor uw thuiscomputer als u meerdere opdrachten vanuit één venster moet uitvoeren.
Het is de perfecte tool voor systeembeheerders. Het is echter niet het enige commando voor je Linux-terminal-toolbox, daarom moet je dit spiekbriefje van belangrijke Linux-opdrachten van een bladwijzer voorzien. De Linux Commands Reference Cheat Sheet De Linux Commands Reference Cheat Sheet Deze eenvoudige spiekbrief helpt je vertrouwd te raken met Linux opdrachtregelterminal in een mum van tijd. Lees verder .
Ontdek meer over: GNU Screen, Multitasking, Terminal.