
Mark Lucas
0
3237
39
Pokud jste uživatelem systému Linux, budete muset někdy začít s terminálem Linux. Některé příkazy terminálu mohou být populární, jiné temné, ale v mnoha případech je snazší spustit příkaz přes okno terminálu než prostřednictvím GUI.
Co se však stane, pokud potřebujete spustit několik příkazů najednou? Obrazovka GNU usnadňuje multitasking terminálů; pojďme začít používat.
Co je obrazovka GNU?
GNU Screen je nástroj pro linuxový terminál, který rozděluje jeden terminál na několik. To znamená, že můžete spustit jeden příkaz, řekněte a wget
stažení obrazového souboru, zatímco přepínání běží druhý, například systemctl
, zkontrolovat S.M.A.R.T. stav vašeho disku.
To vám umožní spustit nezávislé příkazy, jako jsou tyto, v samostatných relacích, ke kterým se můžete libovolně připojit a odpojit.
Není to jen užitečné pro vaše vlastní PC; je to téměř nezbytné, pokud spravujete vzdálený server. Pokud spouštíte příkazy na serveru přes SSH, co se stane, když se odpojíte? Příkaz možná stále běží, ale nebudete s ním moci snadno monitorovat ani s ním pracovat.
Obrazovka se zabývá tímto problémem za vás. Pokud ztratíte připojení, můžete se znovu připojit k relaci obrazovky, nebo se od něj odpojit a nechat běžet na pozadí, dokud jej znovu nebudete potřebovat..
Jak nainstalovat obrazovku
Obrazovka nepřichází s většinou distribucí Linuxu, ale protože předchází Linuxu, je dobře podporována.
Pokud ji chcete nainstalovat na distribuci založené na Ubuntu nebo Debianu, spusťte následující:
sudo apt-get update obrazovka instalace sudo apt-get
Podobně, pokud používáte Arch, otevřete své shell okno a spusťte:
sudo pacman -Syu sudo pacman -S obrazovka
Pokud používáte Fedoru, spusťte místo toho:
instalační obrazovka sudo yum aktualizace sudo yum
Zahájení relace obrazovky
Zahájení relace obrazovky je jednoduché. Otevřete terminál nebo vytvořte připojení SSH a napište obrazovka
. Zobrazí se úvodní okno obrazovky; stiskem mezery nebo klávesou Enter ji uzavřete.
Jakmile tak učiníte, obrazovka terminálu se vrátí do normálu. Nebude zřejmé, že spustíte relaci obrazovky, ale každý příkaz, který od tohoto okamžiku spouštíte, bude spuštěn v rámci relace, kterou nyní můžete podle potřeby odpojit a znovu připojit.
Prohlížení a odpojování obrazovek
Budete chtít vědět, jak se připojit a odpojit od relace obrazovky, pokud ji plánujete znovu použít. Pokud jste již v relaci obrazovky, stiskněte Ctrl + A následovaný dopisem d (malá písmena).
Relace a všechny příkazy, které jsou v ní aktuálně spuštěny, se odpojí a budou spuštěny na pozadí a připraveny k opětovnému připojení. Za předpokladu, že máte pouze jednu spuštěnou relaci obrazovky, zadejte:
obrazovka -r
Tím se relace znovu připojí a umožní vám pokračovat. Pokud potřebujete relaci vzdáleně odpojit a poté se k ní znovu připojit, zadejte:
screen -rd
Můžete spustit více než jednu relaci obrazovky. Pokud se chcete znovu připojit ke konkrétní relaci, budete muset zjistit ID procesu relace. Typ obrazovky -ls
nebo obrazovka -r
jejich seznam.
Jak ukazuje obrázek nahoře, napište obrazovka -r
následované počátečním identifikačním číslem na začátku každé relace. Například:
obrazovka -r 25407
Pokud chcete relaci ukončit a zrušit všechny spuštěné příkazy v ní, znovu se k ní připojte a napište výstup
.
Další příkazy obrazovkových terminálů, které si pamatujete
Obrazovka má několik triků v rukávu pro uživatele, kteří chtějí z toho získat maximum. Zde je několik nejčastějších příkazů terminálu, které si musíte pamatovat.
Seznam klávesových zkratek na obrazovce
Stejně jako všechny dobré terminálové programy má Screen také klávesové zkratky, které můžete použít. Už ji používáte, Ctrl + A a d, oddělit stávající obrazovky.
Pokud chcete vidět zbytek, jednoduše napište Ctrl + A následován ? aby vám dal seznam, se kterým můžete pracovat.
Vytvořit a přepínat mezi Windows v relaci
Pro spouštění příkazů není nutné přepínat mezi relacemi; můžete také přepínat mezi okny v jedné relaci.
Chcete-li vytvořit nové okno v relaci, stiskněte Ctrl + A následován C (malé) k vytvoření nového okna. Vaše první okno začíná číslem 0, další okno 1, atd.
Udeřil Ctrl + A a poté filtrujte čísla 0-9. Chcete-li zobrazit každý z nich, použijte Ctrl + A a pak w (malá písmena) pro zobrazení seznamu relací s jednociferným ID.
Vytvořte relaci se jménem
Náhodně vygenerované ID je obtížné zapamatovat; pojmenování vaší relace může věci usnadnit. Pokud chcete zahájit relaci se jménem, zadejte:
obrazovka -S název_souboru
Pokud se chcete k této relaci znovu připojit jménem, zadejte:
obrazovka -X název_souboru
Sdílet relaci obrazovky
Chcete sdílet terminálovou relaci s kolegou nebo přítelem? Díky Screen můžete. Typ:
obrazovka -rx
Spíše než odpojit kohokoli aktuálně připojeného k této relaci, stačí se k ní připojit. Ostatní uživatelé uvidí, co píšete, a spuštěné příkazy; budete-li dělat totéž, budete moci sledovat i ostatní uživatele.
Protokolovat výstup obrazovky do souboru
Možná budete muset protokolovat výstup obrazovky do souboru z důvodů údržby nebo auditu. Chcete-li to provést, zadejte:
obrazovka -L
Relace bude zahájena s možností přihlásit se k souboru se jménem screenlog.x (kde X je číslo začínající od nuly) ve vašem domovském adresáři. Chcete-li zahájit protokol v relaci, zadejte Ctrl + A následován H (Shift + h).
Zamkněte relaci obrazovky
Pokud chcete chránit relaci obrazovky, můžete ji uzamknout pomocí existujícího hesla pro systém Linux.
Typ Ctrl + A následován X (malá písmena) pro uzamčení relace, když jste k ní aktuálně připojeni.
Tím se uzamkne v aktuálním okně terminálu; zadejte heslo k odemknutí.
Terminálový multitasking nemohl být jednodušší
Díky obrazovce GNU se nemusíte bát čekání na dokončení příkazu terminálu. Je to užitečné, pokud chcete ovládat vzdálené servery, ale je to také skvělý nástroj pro domácí počítač, pokud potřebujete spustit několik příkazů z jednoho okna.
Je to perfektní nástroj pro systémové administrátory. Nejedná se však o jediný příkaz pro váš terminálový nástroj Linux, a proto byste si měli zarezervovat tento cheat sheet důležitých Linuxových příkazů. Linux Command Commands Cheat Sheet Linux Linux Commands Reference Cheat Sheet terminál příkazového řádku v žádném okamžiku. .