- 1 1. Úvod
- 2 2. Jak zkontrolovat seznam uživatelů v Ubuntu
- 3 3. Jak zkontrolovat aktuálně přihlášené uživatele
- 4 4. Jak zkontrolovat podrobné informace o uživateli
- 5 5. Správa uživatelů v Ubuntu (Přidání, Odstranění, Úprava)
- 6 6. Praktické scénáře pro správu uživatelů
- 7 7. Často kladené otázky
- 7.1 7.1 Můžu přímo upravovat /etc/passwd?
- 7.2 7.2 Rozdíl mezi příkazy who a users
- 7.3 7.3 Jak zkontrolovat historii přihlášení pro konkrétního uživatele
- 7.4 7.4 Jak změnit heslo uživatele
- 7.5 7.5 Jak dočasně deaktivovat uživatele
- 7.6 7.6 Přidat uživatele do skupiny sudo
- 7.7 7.7 Změnit domovský adresář uživatele
- 7.8 7.8 Kompletně odstranit uživatele a jejich data
- 7.9 7.9 Zkontrolovat podrobnou aktivitu přihlášených uživatelů
1. Úvod
Ubuntu je oblíbená distribuce Linuxu používaná mnoha uživateli, od osobních prostředí po podnikové serverové systémy. Při správě systému Ubuntu je správa uživatelských účtů nezbytná. Zejména kontrola seznamu registrovaných uživatelů pomáhá se správou zabezpečení a organizací účtů.
Tento článek vysvětluje, jak vypisovat uživatele na Ubuntu. Pokrývá vše od základních příkazů po metody pro získání podrobných informací, což je užitečné pro začátečníky i zkušené administrátory.
2. Jak zkontrolovat seznam uživatelů v Ubuntu
V Ubuntu lze informace o uživatelích snadno získat pomocí specifických souborů a příkazů. Následující metody umožňují zkontrolovat seznam uživatelů.
2.1 Zobrazení seznamu uživatelů pomocí /etc/passwd
V Ubuntu jsou všechny informace o uživatelích uloženy v souboru /etc/passwd. Zobrazením tohoto souboru můžete ověřit všechny registrované uživatele.
Příklad příkazu
cat /etc/passwd
Spuštění tohoto příkazu zobrazí informace ve formátu následujícím:
root:x:0:0:root:/root:/bin/bash
user1:x:1000:1000:User One,,,:/home/user1:/bin/bash
user2:x:1001:1001:User Two,,,:/home/user2:/bin/bash
Každý řádek se skládá z polí oddělených dvojtečkami (:), která obsahují následující informace:
- Uživatelské jméno
- Heslo (nyní reprezentováno jako x)
- ID uživatele (UID)
- ID skupiny (GID)
- Informace o uživateli (pole komentáře)
- Domovský adresář
- Výchozí přihlašovací shell
Protože tento soubor obsahuje i systémové uživatele, můžete extrahovat pouze běžné přihlašovací uživatele pomocí metod níže uvedených.
2.2 Vypisování pouze uživatelských jmen
K vypisování pouze uživatelských jmen použijte následující příkaz:
cut -d: -f1 /etc/passwd
Alternativně můžete použít příkaz awk:
awk -F':' '{ print $1 }' /etc/passwd
Příklad výstupu:
root
user1
user2
2.3 Vyhledávání specifického uživatele
K ověření, zda specifický uživatel existuje, použijte příkaz grep:
grep 'user1' /etc/passwd
Tento příkaz zobrazí pouze záznam související s user1.
2.4 Vypisování skupin prostřednictvím /etc/group
K zkontrolování skupin, ke kterým uživatel patří, se podívejte na soubor /etc/group:
cat /etc/group | cut -d: -f1
K vypisování skupin, ke kterým specifický uživatel patří, použijte:
groups user1
Příklad výstupu:
user1 : user1 sudo
To znamená, že user1 je také členem skupiny sudo.
3. Jak zkontrolovat aktuálně přihlášené uživatele
Ubuntu poskytuje několik příkazů k ověření, kteří uživatelé jsou aktuálně přihlášeni. Tyto příkazy pomáhají získat informace o relacích a přihlášení.
3.1 Kontrola přihlášených uživatelů pomocí who
Příkaz who vypíše všechny aktuálně přihlášené uživatele.
Příklad příkazu
who
Příklad výstupu
user1 tty1 2025-02-16 10:05
user2 pts/0 2025-02-16 11:30
Vysvětlení polí
- Uživatelské jméno (přihlášený uživatel)
- Název terminálu (např.
tty1pro lokální,pts/0pro SSH) - Čas přihlášení
Příkaz who je jednoduchý a užitečný, když chcete rychle zkontrolovat stav přihlášení.
3.2 Kontrola podrobných informací pomocí w
Příkaz w poskytuje podrobnější informace než who.
Příklad příkazu
w
Příklad výstupu
11:35:25 up 2:15, 2 users, load average: 0.03, 0.02, 0.00
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
user1 tty1 10:05 1:30m 0.10s 0.10s -bash
user2 pts/0 192.168.1.10 11:30 0.00s 0.05s 0.02s sshd
Vysvětlení polí
- Doba provozu systému
- Počet přihlášených uživatelů
- Průměrné zatížení CPU
- Uživatelské jméno
- Terminál
- Vzdálený hostitel
- Čas přihlášení
- Doba nečinnosti
- Využití CPU
- Běžící proces
IP adresa v poli FROM pomáhá ověřit vzdálená SSH přihlášení, což je užitečné pro monitorování a správu zabezpečení.
3.3 Zobrazení přihlášených uživatelů pomocí users
Pokud chcete zjednodušený seznam zobrazující pouze uživatelská jména přihlášených uživatelů, je užitečný příkaz users.
Příklad příkazu
users
Příklad výstupu
user1 user2
Tento příkaz je zjednodušenou verzí who a zobrazuje pouze přihlášená uživatelská jména.
3.4 Identifikace aktuálního uživatele pomocí whoami
Pro zjištění, který uživatel spouští aktuální relaci, použijte příkaz whoami.
Příklad příkazu
whoami
Příklad výstupu
user1
Tento příkaz jednoduše zobrazí uživatelské jméno uživatele aktuální relace, což je užitečné pro ověření kontextu provádění.
3.5 Kontrola historie přihlášení pomocí last
Příkaz last vám umožní prohlédnout historii přihlášení uživatelů.
Příklad příkazu
last
Příklad výstupu
user1 pts/0 192.168.1.10 Mon Feb 15 10:20 still logged in
user2 tty1 Mon Feb 15 09:30 - 10:00 (00:30)
root tty1 Sun Feb 14 22:15 - 23:45 (01:30)
- Uživatelské jméno
- Použitý terminál
- Vzdálená IP adresa
- Čas zahájení přihlášení
- Čas odhlášení (nebo stále přihlášen)
- Celková doba trvání relace
Tento příkaz pomáhá administrátorům sledovat předchozí přístupy a detekovat podezřelé přihlášení.
4. Jak zkontrolovat podrobné informace o uživateli
Ubuntu poskytuje několik příkazů pro získání podrobných informací o registrovaných uživatelích. Prohlížení detailů jako UID, členství ve skupinách a přihlašovacího shellu pomáhá administrátorům přesně spravovat oprávnění. Tato sekce vysvětluje metody pomocí id, groups, finger a chage.
4.1 Kontrola UID, GID a skupin pomocí id
Příkaz id zobrazuje UID (identifikátor uživatele), GID (identifikátor skupiny) a členství ve skupinách.
Příklad příkazu
id user1
Příklad výstupu
uid=1001(user1) gid=1001(user1) groups=1001(user1),27(sudo),1002(docker)
uid→ Identifikátor uživatelegid→ Identifikátor primární skupinygroups→ Všechny skupiny, do kterých uživatel patří
Zkontrolovat informace o aktuálním uživateli
id
4.2 Kontrola členství ve skupinách pomocí groups
Příkaz groups rychle vypíše skupiny, do kterých uživatel patří.
Příklad příkazu
groups user1
Příklad výstupu
user1 : user1 sudo docker
groups je užitečný, když chcete vidět jen názvy skupin bez podrobných ID.
4.3 Získání podrobných informací o uživateli pomocí finger
Příkaz finger poskytuje podrobné informace o uživateli, jako je celé jméno, přihlašovací adresář a typ shellu.
Příkaz pro instalaci
sudo apt install finger
Příklad příkazu
finger user1
Příklad výstupu
Login: user1 Name: User One
Directory: /home/user1 Shell: /bin/bash
Last login: Mon Feb 16 10:20 (UTC) on pts/0
- Login → Uživatelské jméno
- Name → Celé jméno (volitelné)
- Directory → Domovský adresář
- Shell → Výchozí shell
- Last login → Čas posledního přihlášení

4.4 Kontrola vypršení platnosti hesla pomocí chage
Příkaz chage umožňuje administrátorům zkontrolovat dobu platnosti hesla a poslední změnu hesla.
Příklad příkazu
sudo chage -l user1
Příklad výstupu
Last password change : Jan 15, 2025
Password expires : Mar 15, 2025
Password inactive : never
Account expires : never
Minimum number of days between password change : 7
Maximum number of days between password change : 60
Number of days of warning before password expires : 5
- Poslední změna hesla → Datum poslední změny hesla
- Platnost hesla vyprší → Datum vypršení platnosti hesla
- Heslo neaktivní → Doba nečinnosti před neplatností hesla
- Platnost účtu vyprší → Datum vypršení platnosti účtu
- Minimální počet dní mezi změnami hesla
- Maximální počet dní mezi změnami hesla
- Dny varování před vypršením platnosti hesla
Správci mohou tyto informace použít k prosazování zásad pro hesla a zlepšení bezpečnosti systému.
5. Správa uživatelů v Ubuntu (Přidání, Odstranění, Úprava)
Správná správa uživatelů zlepšuje stabilitu a bezpečnost systému. Ubuntu poskytuje několik administrativních příkazů, jako jsou adduser, deluser a usermod. Tato sekce vysvětluje, jak přidávat, odstraňovat a upravovat uživatele.
5.1 Přidávání uživatelů
Ubuntu umožňuje přidávat nové uživatele pomocí příkazů adduser nebo useradd.
5.1.1 Příkaz adduser (Doporučeno)
Příkaz adduser poskytuje interaktivní způsob přidávání uživatelů.
sudo adduser newuser
Příklad interaktivního výzevu:
Adding user `newuser' ...
Adding new group `newuser' (1002) ...
Adding new user `newuser' (1002) with group `newuser' ...
Creating home directory `/home/newuser' ...
Copying files from `/etc/skel' ...
Enter new UNIX password: ********
Retype new UNIX password: ********
passwd: password updated successfully
Changing the user information for newuser
Enter the new value, or press ENTER for the default
Full Name []:
Room Number []:
Work Phone []:
Home Phone []:
Other []:
Is the information correct? [Y/n]
- Uživatelský účet
- Dedikovaná skupina
- Domovský adresář (
/home/newuser) - Heslo pro přihlášení
- Základní informace o účtu
5.1.2 Příkaz useradd (Pokročilé)
Příkaz useradd je přátelský k scriptům a nabízí jemnější ovládání, ale neautomaticky nastavuje všechno.
sudo useradd -m -s /bin/bash newuser
sudo passwd newuser
-m→ Vytvořit domovský adresář-s /bin/bash→ Nastavit přihlašovací shell
Při používání tohoto příkazu je třeba heslo nastavit odděleně.
5.2 Odstraňování uživatelů
Uživatele můžete odstranit pomocí deluser nebo userdel.
5.2.1 Příkaz deluser (Doporučeno)
Příkaz deluser odstraní uživatelský účet.
sudo deluser newuser
Odstranit také domovský adresář
sudo deluser --remove-home newuser
Toto odstraní účet a adresář /home/newuser.
5.2.2 Příkaz userdel (Pokročilé)
Příkaz userdel nabízí větší ovládání.
sudo userdel newuser
sudo userdel -r newuser
5.3 Úprava existujících uživatelů
K úpravě informací existujícího uživatele použijte příkaz usermod.
5.3.1 Změna uživatelského jména
sudo usermod -l newname oldname
5.3.2 Změna domovského adresáře
sudo usermod -d /new/home/path user1
sudo usermod -d /home/newuser -m user1
5.3.3 Úprava členství ve skupině
sudo usermod -aG sudo user1
groups user1
5.3.4 Změna hesla
sudo passwd user1
Enter new UNIX password: ********
Retype new UNIX password: ********
passwd: password updated successfully
6. Praktické scénáře pro správu uživatelů
Správa uživatelů v Ubuntu jde za vypsáním a úpravou účtů. Porozumění tomu, jak aplikovat příkazy v reálných scénářích, je nezbytné pro udržování bezpečného a efektivního prostředí. Tato sekce představuje běžné případy použití a jak je řešit.
6.1 Vyhledávání uživatelů odpovídajících specifickým kritériím
6.1.1 Zobrazení uživatelů s administrátorskými právy (sudo)
K vypsání uživatelů se sudo právy použijte příkaz getent k prohlédnutí souboru /etc/group:
getent group sudo
Příklad výstupu
sudo:x:27:user1,user2
sudo:x:27:→ Informace o skupiněuser1,user2→ Uživatelé patřící do skupiny sudo
6.1.2 Zobrazení uživatelů schopných přihlášení
Soubor /etc/passwd obsahuje systémové účty. K extrakci pouze uživatelů, kteří se mohou přihlásit:
grep '/bin/bash' /etc/passwd
Příklad výstupu
user1:x:1001:1001::/home/user1:/bin/bash
user2:x:1002:1002::/home/user2:/bin/bash
- Jsou zahrnuti pouze uživatelé se shellami jako
/bin/bashnebo/bin/sh - Systémové účty používající
/usr/sbin/nologinnebo/bin/falsejsou vyloučeny
6.1.3 Zobrazení systémových uživatelů (účty bez přihlášení)
grep -E '/usr/sbin/nologin|/bin/false' /etc/passwd
Příklad výstupu
daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin
syslog:x:104:110::/home/syslog:/bin/false
To pomáhá správci identifikovat účty, které by neměly být omylem odstraněny.
6.2 Periodické čištění nepoužívaných uživatelů
6.2.1 Zobrazení posledního přihlášení všech uživatelů
lastlog
Příklad výstupu
Username Port From Latest
root tty1 Mon Feb 12 14:02:08 +0000 2025
user1 pts/0 192.168.1.10 Mon Jan 15 10:30:12 +0000 2025
user2 pts/1 192.168.1.20 Never logged in
- Nikdy se nepřihlásil → Uživatel se nikdy nepřihlásil
sudo deluser user2 --remove-home
6.2.2 Ověření poslední změny hesla
sudo chage -l user1
sudo passwd --expire user1
Při příštím přihlášení uživatele bude pro bezpečnostní důvody vyžadováno resetování hesla.
6.3 Kontrola uživatelů připojených přes SSH
who | grep pts
Příklad výstupu
user1 pts/0 192.168.1.10 11:30
To pomáhá identifikovat vzdálené uživatele a jejich IP adresy.
6.4 Export všech informací o uživatelích do CSV
getent passwd | awk -F: '{print $1 "," $3 "," $4 "," $6}' > users.csv
Příklad users.csv
root,0,0,/root
user1,1001,1001,/home/user1
user2,1002,1002,/home/user2
- Exportuje uživatelské jméno, UID, GID a domovský adresář
- Data lze analyzovat pomocí Excelu nebo tabulek
7. Často kladené otázky
7.1 Můžu přímo upravovat /etc/passwd?
Odpověď: Přímé úpravování je nedoporučeno. Nesprávné změny mohou zabránit přihlášení nebo poškodit systém.
Bezpečnější metoda:
sudo vipw
7.2 Rozdíl mezi příkazy who a users
| Command | Description |
|---|---|
who | Displays detailed login information |
users | Displays only usernames of logged-in users |
7.3 Jak zkontrolovat historii přihlášení pro konkrétního uživatele
last user1
7.4 Jak změnit heslo uživatele
sudo passwd user1
7.5 Jak dočasně deaktivovat uživatele
sudo usermod -L user1
sudo usermod -U user1
7.6 Přidat uživatele do skupiny sudo
sudo usermod -aG sudo user1
7.7 Změnit domovský adresář uživatele
sudo usermod -d /new/home/path -m user1
7.8 Kompletně odstranit uživatele a jejich data
sudo deluser --remove-home user1
nebo
sudo userdel -r user1
7.9 Zkontrolovat podrobnou aktivitu přihlášených uživatelů
w
- Přihlášení uživatelé
- Vzdálené IP adresy
- Aktuální procesy
- Zátěž systému
To umožňuje správci monitorovat využití a detekovat neoprávněný přístup.


