GNU/Linux >> Znalost Linux >  >> Cent OS

Jak vypsat seznam uživatelů v Linuxu

Ú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.

  1. Uživatelské jméno
  2. Šifrované heslo (x znamená, že heslo je uloženo v souboru /etc/shadow)
  3. UID uživatele (identifikační číslo uživatele)
  4. ID uživatele (identifikační číslo skupiny)
  5. Pole GECOS (Celé jméno uživatele nebo Komentáře)
  6. Domovský adresář uživatele
  7. Přihlašovací prostředí
Běžný uživatel má UID větší nebo rovné 1000 (novější OS) nebo 500 (starší OS). Uživatelé s UID <1000 (nebo <500) jsou systémovými uživateli.

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/bash
Vý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ů.


Cent OS
  1. Informace o Linuxu GECOS byly demystifikovány

  2. Jak vypsat všechny uživatele ve skupině Linuxu?

  3. Linux - Jak vypsat všechny uživatele

  1. Jak vytvořit seznam uživatelů v CentOS 7

  2. Jak Linux zpracovává více po sobě jdoucích oddělovačů cest (/home////username///soubor)?

  3. Jak zjistit, zda používám systemd na Linuxu?

  1. Linux – sloučení /usr/bin A /usr/sbin do /bin (gnu/linux)?

  2. 3 způsoby, jak zobrazit seznam uživatelů v Linuxu

  3. Zobrazení uživatelů systému v Linuxu