Úplně první úkol, který každý administrátor Linuxu provede, když uživatel řekne, že se nemůže přihlásit do systému. Ano, abyste věděli, jak vytvořit seznam uživatelů v Linuxu, musíte vyřešit jakýkoli problém s přihlášením.
Doufám, že jste viděli příkazy pro vytvoření uživatele, odstranění uživatele, úpravu uživatele, výpis přihlášených uživatelů. Zde uvidíme, jak vytvořit seznam uživatelů v Linuxu.
Seznam uživatelů v Linuxu pomocí souboru /etc/passwd
Pokud si pamatujete, když vytváříte uživatele, příkaz useradd vloží záznam do souboru /etc/passwd o uživateli. Pomocí souboru /etc/passwd můžeme vypsat seznam místních uživatelů přítomných v systému.
Příkaz User cat nebo less či more pro seznam uživatelů.
cat /etc/passwd
Výstup:
root:x:0:0:root:/root:/bin/bash bin:x:1:1:bin:/bin:/sbin/nologin daemon:x:2:2:daemon:/sbin:/sbin/nologin adm:x:3:4:adm:/var/adm:/sbin/nologin lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin sync:x:5:0:sync:/sbin:/bin/sync shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown halt:x:7:0:halt:/sbin:/sbin/halt mail:x:8:12:mail:/var/spool/mail:/sbin/nologin operator:x:11:0:operator:/root:/sbin/nologin games:x:12:100:games:/usr/games:/sbin/nologin ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin nobody:x:99:99:Nobody:/:/sbin/nologin systemd-network:x:192:192:systemd Network Management:/:/sbin/nologin dbus:x:81:81:System message bus:/:/sbin/nologin polkitd:x:999:997:User for polkitd:/:/sbin/nologin postfix:x:89:89::/var/spool/postfix:/sbin/nologin chrony:x:998:996::/var/lib/chrony:/sbin/nologin sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin webmaster:x:1999:1001::/opt/webadmin:/bin/bash user_name:x:2000:2000:sudo user:/home/user_name:/bin/bash
Každý řádek v souboru /etc/passwd představuje jednoho uživatele.
Soubor /etc/passwd má sedm polí oddělených dvojtečkou.
- Uživatelské jméno
- Šifrované heslo (x znamená, že heslo je uloženo v souboru /etc/shadow)
- UID uživatele (identifikační číslo uživatele)
- ID uživatele (identifikační číslo skupiny)
- Pole GECOS (Celé jméno uživatele nebo Komentáře)
- Domovský adresář uživatele
- Přihlašovací prostředí
Pokud chcete v systému zobrazit pouze seznam jmen uživatelů, můžete výstup jednoduše filtrovat.
cat /etc/passwd | awk -F: '{ print $1}'
Výstup:
root bin daemon adm lp sync shutdown halt mail operator games ftp nobody systemd-network dbus polkitd postfix chrony sshd webmaster user_name
Seznam uživatelů v Linuxu pomocí getent
Příkaz getent zobrazí seznam uživatelů podle dotazů na databáze nakonfigurované v /etc/nssswitch.conf. Databáze obsahuje jak /etc/passwd (místní uživatelé), tak LDAP. Getent tedy zobrazí uživatele z /etc/passwd i LDAP.
Chcete-li získat seznam uživatelů Linuxu, spusťte následující příkaz.
getent passwd
Výstup:
root:x:0:0:root:/root:/bin/bash bin:x:1:1:bin:/bin:/sbin/nologin daemon:x:2:2:daemon:/sbin:/sbin/nologin adm:x:3:4:adm:/var/adm:/sbin/nologin lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin sync:x:5:0:sync:/sbin:/bin/sync shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown halt:x:7:0:halt:/sbin:/sbin/halt mail:x:8:12:mail:/var/spool/mail:/sbin/nologin operator:x:11:0:operator:/root:/sbin/nologin games:x:12:100:games:/usr/games:/sbin/nologin ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin nobody:x:99:99:Nobody:/:/sbin/nologin systemd-network:x:192:192:systemd Network Management:/:/sbin/nologin dbus:x:81:81:System message bus:/:/sbin/nologin polkitd:x:999:997:User for polkitd:/:/sbin/nologin postfix:x:89:89::/var/spool/postfix:/sbin/nologin chrony:x:998:996::/var/lib/chrony:/sbin/nologin sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin webmaster:x:1999:1001::/opt/webadmin:/bin/bash user_name:x:2000:2000:sudo user:/home/user_name:/bin/bashVýstup příkazu gatent bude podobný obsahu souboru /etc/passwd. Pokud je systém nakonfigurován s LDAP, uvidíte navíc uživatele z LDAP.
Pomocí awk vypište pouze uživatelská jména.
getent passwd | awk -F: '{ print $1}'
Výstup:
root bin daemon adm lp sync shutdown halt mail operator games ftp nobody systemd-network dbus polkitd postfix chrony sshd webmaster user_name
Závěr
V tomto příspěvku jste se naučili seznam uživatelů ve vašem systému Linux. Výpis uživatelů v Linuxu je velmi jednoduchý a vše, co musíte sledovat ve výstupu příkazu, obsahuje informace, které potřebujete k řešení problémů s přihlášením uživatelů.