Jako správce systému pracující ve víceuživatelském prostředí byste měli vědět, kdo je přihlášen do vašeho systému. Naštěstí vám operační systém Linux umožňuje toho dosáhnout pomocí jednoduchého a vestavěného příkazu známého jako „who“ . Kdo příkaz je jedním z GNU Core Utilities, který používá /var/log/utmp soubor poskytující informace o tom, kdo je přihlášen do systému, kdy se přihlásil a odkud se přihlásil. Je podobný příkazu „w“ a zobrazuje stejné informace spolu s některými dalšími informacemi, jako např. naposledy, kdy byl systém spuštěn a ve které úrovni běhu se systém nachází, a ještě něco navíc.
V tomto článku vysvětlíme, jak používat kdo příkaz v operačním systému Linux spolu s některými možnostmi příkazového řádku.
Poznámka:Příkazy popsané v tomto článku byly testovány na systému Debian 10 Buster.
Zjistit, kdo je v systému
Kdy kdo Pokud se příkaz používá bez jakýchkoli voleb příkazového řádku, zobrazí následující informace:
- Kdo je přihlášen do systému
- Jak se přihlásili (uživatelský terminál)
- Datum a čas přihlášení
- Odkud se přihlásili (název hostitele nebo adresa IP vzdáleného serveru)
Výše uvedený výstup ukazuje, že do našeho systému jsou přihlášeni 3 uživatelé. První uživatel v seznamu je přihlášen přímo do systému a další dva jsou přihlášeni ze vzdálených systémů. Zobrazuje také datum a čas, kdy se přihlásili, a IP adresy serverů, ze kterých jsou přihlášeni.
Běžně používané možnosti
Zde probereme některé z běžně používaných kdo možnosti příkazového řádku:
Zobrazení data a času posledního spuštění systému
Chcete-li zobrazit datum a čas posledního spuštění systému, použijte kdo příkaz s volbou -b nebo –boot takto:
$ who -b
Zobrazení záhlaví sloupců v příkazu who
Kdo příkaz bez možnosti příkazového řádku zobrazí informace ve sloupcích bez jakýchkoli záhlaví. Často je těžké si zapamatovat, o čem jednotlivé sloupce jsou. Nicméně pomocí volby -h nebo –heading s kdo můžete zobrazit nadpisy v horní části každého sloupce.
$ who –H
Zobrazit dobu nečinnosti uživatele
Doba nečinnosti je doba, která uplynula bez jakékoli aktivity uživatele během relace uživatele. Chcete-li zobrazit dobu nečinnosti každého uživatele, použijte kdo příkaz s volbou -u nebo –users:
$ who -u
Pokud vidíme výše uvedený výstup, (starý) v řádku prvního uživatele ukazuje, že uživatel byl neaktivní od posledních 24 hodin, (00:11) v řádku druhého uživatele ukazuje, že druhý uživatel byl neaktivní od posledních 11 minut . (.) ve třetím řádku uživatele ukazuje, že uživatel je aktuálně aktivní.
Zobrazit rychlý počet a jména aktuálních uživatelů
Pokud chcete stručné informace o přihlášených uživatelích, použijte kdo příkaz s volbou -q nebo –count. Zobrazí jméno a počet uživatelů přihlášených do systému.
$ who -q
Zobrazení přihlašovacích procesů
Chcete-li zobrazit aktuální přihlašovací procesy v systému, použijte příkaz who s volbou -l nebo –login takto:
$ who -l
Zobrazit stav zprávy
Můžete také zobrazit stav zpráv aktuálně přihlášených uživatelů. Použijte příkaz who s jednou z možností -T, -w nebo –message:
$ who –T
Za jménem každého uživatele uvidíte stav zprávy jako „+ “ nebo „– “ podle toho, zda je zasílání zpráv zapnuto nebo vypnuto. Ve výše uvedeném výstupu můžete vidět, že zasílání zpráv je pro první dva uživatele zapnuto, zatímco pro třetího uživatele je vypnuté.
Zobrazit mrtvé procesy
Můžete také zobrazit mrtvé procesy v Linuxu. Chcete-li to provést, použijte kdo příkaz s volbou -d nebo –dead takto:
$ who -d
Zobrazení aktuální úrovně běhu
Run level je režim v Linuxu, který systém používá k provádění různých funkcí. V systému je sedm úrovní běhu (0-6), které jsou kategorizovány na základě dostupných služeb.
$ who -r
Chcete-li zobrazit aktuální úroveň běhu systému, použijte kdo příkaz s volbou -r takto:
Zobrazit všechny informace
Všechny možnosti příkazového řádku, které jsme probrali výše, poskytují různé informace. Chcete-li zobrazit všechny informace v jednom výstupu, použijte kdo zadejte volbu -a nebo –all následovně:
$ who -a
Použijte více možností s příkazem who
Kdo příkaz lze také použít s více možnostmi příkazového řádku. Použijte kdo příkaz následovaný několika možnostmi pomocí jediné pomlčky.
Chcete-li například zobrazit všechny informace spolu se záhlavími sloupců, příkaz by byl:
$ who -aH
Najít nápovědu
Následující příkazy vám mohou poskytnout pomoc týkající se who příkaz.
Chcete-li zobrazit stručné informace o tom, kdo příkaz whatis použijte následovně:
$ whatis who
Chcete-li zobrazit kdo příkazovou stránku, použijte následující příkaz:
$ man who
Použijte možnost –help s kdo příkaz pro zobrazení nápovědy.
$ who –help
Tip:
Chcete-li uložit výstup kdo příkaz v souboru pro účely záznamu zadejte kdo následovaný přesměrovačem (>) symbol a název souboru, kam chcete uložit výstup.
$ who > file_name
Výstup kdo příkaz bude uložen do souboru, nikoli zobrazení na terminálu.
V tomto článku jsme probrali kdo spolu s některými užitečnými možnostmi příkazového řádku. Viděli jste toho kdo příkaz umí mnohem více než jen poskytování informací o přihlášeném uživateli.