Uživatelé jsou nejdůležitější součástí systému Linux. Linux poskytuje správcům předdefinované příkazy, které jim umožňují efektivně spravovat uživatele. Existuje jeden pro vytváření uživatelů, mazání uživatelů a změnu uživatelských oprávnění. Ale co seznam všech uživatelů, kteří jsou aktuálně přítomni v systému?

V tomto článku probereme, jak můžete získat seznam všech uživatelů v systému Linux, spolu se stručným průvodcem, jak zkontrolovat, zda uživatel v systému existuje nebo ne.

Jak zobrazit seznam všech uživatelů v systému Linux

Když vytvoříte nového uživatele, uživatelské jméno, heslo a další podrobnosti se uloží do konkrétních souborů na počítači se systémem Linux. Naštěstí vám Linux umožňuje číst a upravovat takové soubory bez jakéhokoli omezení. Pomocí těchto souborů můžete znát informace týkající se uživatelů, například jejich uživatelská jména, počet uživatelů a další.

Pomocí souboru Passwd

The heslo soubor je textový soubor, který obsahuje záznamy o heslech všech uživatelů, kteří jsou aktuálně přítomni ve vašem systému. Tento soubor je umístěn v

instagram viewer
/etc adresář ve vašem místním úložišti a obsahuje následující informace:

  1. Uživatelská jména
  2. Šifrovaná hesla
  3. uživatelské ID
  4. ID skupiny uživatele
  5. Celé jméno
  6. The /home adresář uživatele
  7. Přihlašovací shell uživatele

Typ kočka / etc / passwd nebo méně / etc / passwd ve vašem terminálu číst textový soubor. Otevření /etc/passwd soubor vygeneruje výstup, který vypadá nějak takto.

root: x: 0: 0: root: / root: / bin / bash
daemon: x: 1: 1: daemon: / usr / sbin: / bin / sh
bin: x: 2: 2: bin: / bin: / bin / sh
sys: x: 3: 3: sys: / dev: / bin / sh
sync: x: 4: 65534: sync: / bin: / bin / sync
games: x: 5: 60: games: / usr / games: / bin / sh
muž: x: 6: 12: muž: / var / cache / muž: / bin / sh

Výše uvedený výstup obsahuje sedm polí, která obsahují informace týkající se uživatelů. Tato pole jsou v tomto případě oddělena oddělovačem, dvojtečkou. Každý řádek ve výstupu označuje jednoho uživatele.

Chcete-li získat seznam všech uživatelských jmen pomocí heslo soubor:

awk -F: '{print $ 1}' / etc / passwd

Awk je obslužný program příkazového řádku, který uživatelům Linuxu umožňuje vytvářet jednoduché „jednořádkové“ programy, které z terminálu provádějí rychlé operace. Ve výše uvedeném kódu:

  1. -F znamená Field separator. Protože znak dvojtečky je oddělovač v /etc/passwd souboru, předáme dvojtečku jako oddělovač v příkazu awk.
  2. {tisk $ 1} dá systému pokyn k tisku prvního pole. V tomto případě je prvním polem uživatelské jméno uživatelů.
  3. /etc/passwd soubor obsahuje data týkající se uživatelů.

Po provedení výše uvedeného příkazu se zobrazí uživatelská jména všech uživatelů. Protože /etc/passwd soubor obsahuje uživatele systému, výstup bude obsahovat také jejich uživatelská jména.

vykořenit
démon
zásobník
sys
synchronizace
hry
muž

Příkaz awk můžete mírně vyladit, abyste mohli vytisknout celá jména uživatelů. Zadejte následující příkaz pro zobrazení úplných jmen uživatelů v Linuxu:

awk -F: '{print $ 5}' / etc / passwd

Vzhledem k tomu, že uživatelé systému mají stejné uživatelské jméno a celé jméno, nezjistíte na výstupu žádný rozdíl. Pouze uživatelé, které jste přidali do svého systému, budou mít různá uživatelská jména a celá jména.

Případně můžete také použít střih místo příkazu awk. Syntaxe cut je docela podobná příkazu awk.

Chcete-li vytisknout uživatelská jména v systému Linux pomocí vyjmutí:

cut -d: f1 / etc / passwd

Tady, -d je oddělovač, f1 označuje první pole (uživatelské jméno) a /etc/passwd je textový soubor, který obsahuje data.

Tisk křestních jmen uživatelů pomocí vyjmutí:

cut -d: f5 / etc / passwd

Podobně můžete z pole odeslat další pole /etc/passwd soubor jednoduše nahrazením f5 s f1-f7.

Příbuzný: Jak změnit heslo pro Linux

Seznam uživatelů pomocí příkazu getent

Příkaz getent vytiskne obsah důležitých textových souborů, které fungují jako databáze systému. Soubory jako /etc/passwd a /etc/nsswitch.conf obsahují informace týkající se uživatelů a sítí a lze je číst pomocí příkazu getent.

Chcete-li vytisknout obsah souboru /etc/passwd soubor pomocí getent:

dostat heslo

Výstup bude obsahovat sedm různých polí oddělených znakem dvojtečky. Každé pole je vyhrazeno pro konkrétní informace, včetně uživatelských jmen a cest domovského adresáře uživatelů.

root: x: 0: 0: root: / root: / bin / bash
daemon: x: 1: 1: daemon: / usr / sbin: / bin / sh
bin: x: 2: 2: bin: / bin: / bin / sh
sys: x: 3: 3: sys: / dev: / bin / sh
sync: x: 4: 65534: sync: / bin: / bin / sync
games: x: 5: 60: games: / usr / games: / bin / sh
muž: x: 6: 12: muž: / var / cache / muž: / bin / sh

Příkaz getent můžete zřetězit pomocí awk nebo cut, abyste získali pouze seznam uživatelských jmen.

dostat heslo | awk -F: '{print $ 1}'
dostat heslo | cut -d: -f1

Chcete-li vytisknout celá jména uživatelů:

dostat heslo | awk -F: '{print $ 5}'
dostat heslo | cut -d: -f5

Zkontrolujte, zda uživatel existuje nebo ne

V některých situacích možná budete chtít zkontrolovat, zda uživatel ve vašem systému Linux existuje nebo ne. The grep příkaz se hodí, když chcete ze souboru uchopit konkrétní textový vzor.

K ověření existence uživatele můžete použít kterýkoli z následujících příkazů.

compgen -u | grep uživatelské jméno
dostat heslo | grep uživatelské jméno

Pokud uživatel existuje, zobrazí se na obrazovce přihlašovací údaje s ním spojené. Na druhou stranu, pokud uživatel v systému není, dojde k chybě.

Chcete-li zkontrolovat, zda uživatel existuje v systému bez použití grep:

getent passwd uživatelské jméno

Můžete také potrubí dostat nebo Compgen příkaz s grep a echo pro zobrazení vlastního výstupu.

dostat heslo | grep -q uživatelské jméno && echo "Uživatel nalezen" || echo "Uživatel nebyl nalezen"
compgen -u | grep -q uživatelské jméno && echo "Uživatel nalezen" || echo "Uživatel nebyl nalezen"

Výše uvedený příkaz vytiskne „Uživatel nalezen“, pokud uživatel v systému existuje, a „Uživatel nebyl nalezen“, pokud není.

Spočítat počet uživatelů v systému

Chcete-li spočítat počet uživatelů, kteří existují v systému Linux:

compgen -u | wc -l
dostat heslo | wc -l

Ve výše uvedených příkazech Compgen a dostat jsou zodpovědní za zobrazení seznamu obsahujícího všechny uživatele a další informace s nimi spojené. The toaleta znamená počet slov a používá se k výpočtu počtu slov nebo řádků na výstupu. The -l vlajka označuje Čáry.

Ověření uživatelských účtů v systému Linux

Každý správce systému Linux by měl vědět, jak může spravovat a spravovat ostatní uživatele v systému. Zvládnutí příkazů Linuxu, které vám umožňují vytvářet, odebírat, ovládat a vypisovat seznam dalších uživatelů, je skvělý způsob, jak začít se správou uživatelů.

Pokud jste jen začátečník, mělo by být vaším prvním cílem získání pohodlí v prostředí Linuxu. Existují určité věci, které musíte udělat hned po instalaci své vůbec první distribuce Linuxu. Naučit se některé základní příkazy je jedním z nich a je nezbytný pro provádění jednoduchých výpočetních úloh v systému Linux.

E-mailem
Jak začít používat Linux

Máte zájem o používání Linuxu, ale nevíte, kde začít? Naučte se, jak používat Linux, od výběru distribuce po instalaci aplikací.

Související témata
  • Linux
  • Linux
O autorovi
Deepesh Sharma (Publikováno 21 článků)

Deepesh je Junior Editor pro Linux na MUO. Píše informační obsah na internetu již více než 3 roky. Ve volném čase rád píše, poslouchá hudbu a hraje na kytaru.

Více od Deepesh Sharma

Přihlaste se k odběru našeho zpravodaje

Připojte se k našemu zpravodaji s technickými tipy, recenzemi, bezplatnými elektronickými knihami a exkluzivními nabídkami!

Ještě jeden krok…!

V e-mailu, který jsme vám právě poslali, potvrďte svou e-mailovou adresu.

.