Sprawdzanie, dodawanie i usuwanie użytkowników
Zarządzanie użytkownikami w systemie Linux to podstawowa umiejętność administratora systemu. W tym artykule pokażemy, jak z poziomu wiersza poleceń, korzystając z konta root, sprawdzić listę zainstalowanych użytkowników, dodać nowego użytkownika oraz usunąć istniejącego użytkownika. Instrukcje są uniwersalne i działają na większości dystrybucji Linuksa, takich jak Ubuntu, Debian, CentOS czy Fedora. Artykuł jest napisany w sposób prosty i przejrzysty, idealny dla początkujących, ale zawiera też wskazówki dla bardziej zaawansowanych użytkowników.
Wymagania wstępne
Zanim zaczniemy, upewnij się, że:
- Masz dostęp do konta root lub użytkownika z uprawnieniami sudo.
- Terminal jest otwarty (możesz użyć np.
bash,zshlub terminal wbudowany w środowisko graficzne). - System Linux jest zaktualizowany, aby uniknąć problemów z narzędziami systemowymi.
Uwaga: Polecenia root mogą wpływać na działanie systemu. Upewnij się, że rozumiesz każde polecenie przed jego wykonaniem, i wykonuj kopie zapasowe ważnych danych.
Krok 1: Sprawdzanie listy zainstalowanych użytkowników
Aby zobaczyć, jacy użytkownicy są zainstalowani w systemie, możemy użyć kilku poleceń, które wyświetlają informacje o kontach użytkowników. Poniżej przedstawiamy najczęściej używane metody.
Metoda 1: Sprawdzanie pliku /etc/passwd
Plik /etc/passwd zawiera listę wszystkich użytkowników w systemie. Każdy wiersz reprezentuje jednego użytkownika i jego podstawowe informacje, takie jak nazwa użytkownika, UID, GID, katalog domowy i powłoka.
1. Otwórz terminal i zaloguj się jako root:
sudo -i
2. Wyświetl zawartość pliku /etc/passwd:
cat /etc/passwd
3. Wynik będzie wyglądał mniej więcej tak:
root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin
bin:x:2:2:bin:/bin:/usr/sbin/nologin
user1:x:1000:1000:User One:/home/user1:/bin/bash
4. Aby wyświetlić tylko nazwy użytkowników, użyj polecenia cut:
cut -d: -f1 /etc/passwd
Wynik pokaże tylko nazwy użytkowników, np.:
root
daemon
bin
user1
Metoda 2: Użycie polecenia getent
Polecenie getent pozwala pobrać informacje z bazy danych użytkowników, w tym z systemów zewnętrznych, takich jak LDAP, jeśli jest skonfigurowany.
1. Wykonaj polecenie:
getent passwd
2. Wynik będzie podobny do cat /etc/passwd. Aby zobaczyć tylko nazwy użytkowników:
getent passwd | cut -d: -f1
Metoda 3: Lista użytkowników z katalogami domowymi
Jeśli chcesz zobaczyć tylko użytkowników z katalogami domowymi (czyli zwykłych użytkowników, a nie systemowych), możesz użyć:
ls /home
Wynik pokaże katalogi domowe, np.:
user1
user2
Uwaga: Nie wszyscy użytkownicy muszą mieć katalog domowy w /home, np. root ma katalog w /root.
Porada: Użytkownicy systemowi (np. daemon, bin) mają zwykle UID poniżej 1000, a zwykli użytkownicy zaczynają się od UID 1000. Aby zobaczyć tylko zwykłych użytkowników, możesz użyć:
getent passwd | awk -F: '$3 >= 1000 && $3 < 65534 {print $1}'
Krok 2: Dodawanie nowego użytkownika
Aby dodać nowego użytkownika, użyjemy polecenia useradd lub adduser. Drugie z nich jest bardziej przyjazne dla użytkownika, ponieważ prowadzi przez proces konfiguracji.
Metoda 1: Użycie polecenia adduser
1. Zaloguj się jako root:
sudo -i
2. Uruchom polecenie adduser:
adduser nowy_uzytkownik
3. Postępuj zgodnie z instrukcjami na ekranie:
- Podaj hasło dla nowego użytkownika.
- Wypełnij opcjonalne informacje, takie jak imię, numer telefonu itp. (możesz pominąć, naciskając Enter).
- Potwierdź dane, wpisując
Y.
4. Sprawdź, czy użytkownik został dodany:
getent passwd nowy_uzytkownik
5. (Opcjonalnie) Dodaj użytkownika do grupy, np. sudo, aby miał uprawnienia administracyjne:
usermod -aG sudo nowy_uzytkownik
Metoda 2: Użycie polecenia useradd
Polecenie useradd jest bardziej niskopoziomowe i wymaga ręcznego ustawienia hasła oraz katalogu domowego.
1. Utwórz użytkownika:
useradd -m -s /bin/bash nowy_uzytkownik
-m tworzy katalog domowy, a -s /bin/bash ustawia powłokę Bash.
2. Ustaw hasło:
passwd nowy_uzytkownik
3. (Opcjonalnie) Dodaj do grupy sudo:
usermod -aG sudo nowy_uzytkownik
Uwaga: Zawsze używaj opcji -aG z usermod, aby dodać użytkownika do grupy bez usuwania go z innych grup.
Krok 3: Usuwanie użytkownika
Aby usunąć użytkownika, użyjemy polecenia userdel. Możesz usunąć użytkownika z lub bez jego katalogu domowego.
Metoda 1: Usunięcie użytkownika bez katalogu domowego
1. Zaloguj się jako root:
sudo -i
2. Usuń użytkownika:
userdel nowy_uzytkownik
3. Sprawdź, czy użytkownik został usunięty:
getent passwd nowy_uzytkownik
Jeśli polecenie nie zwraca wyniku, użytkownik został usunięty.
Metoda 2: Usunięcie użytkownika z katalogiem domowym
1. Użyj opcji -r, aby usunąć użytkownika wraz z jego katalogiem domowym:
userdel -r nowy_uzytkownik
2. Sprawdź, czy katalog domowy został usunięty:
ls /home
Jeśli katalog /home/nowy_uzytkownik nie istnieje, został poprawnie usunięty.
Uwaga: Przed usunięciem użytkownika upewnij się, że nie jest zalogowany i że nie ma aktywnych procesów powiązanych z jego kontem. Możesz to sprawdzić poleceniem ps -u nowy_uzytkownik lub zakończyć procesy za pomocą killall -u nowy_uzytkownik.
Rozwiązywanie problemów
Jeśli napotkasz problemy, oto kilka wskazówek:
- Brak uprawnień: Upewnij się, że jesteś zalogowany jako root lub używasz
sudo. - Użytkownik nie jest widoczny: Sprawdź, czy system korzysta z zewnętrznej bazy danych użytkowników (np. LDAP) za pomocą
getent passwd. - Nie można usunąć użytkownika: Upewnij się, że użytkownik nie ma aktywnych sesji (
wholubw) i zakończ je, jeśli istnieją. - Problemy z katalogiem domowym: Jeśli katalog domowy nie został utworzony, sprawdź ustawienia w
/etc/default/useraddlub ręcznie utwórz katalog za pomocąmkdir /home/nowy_uzytkownik.
Podsumowanie
Zarządzanie użytkownikami w Linuksie z poziomu wiersza poleceń jest proste, jeśli znasz odpowiednie polecenia. Używając cat /etc/passwd lub getent passwd, możesz sprawdzić listę użytkowników. Polecenie adduser lub useradd pozwala dodać nowego użytkownika, a userdel umożliwia jego usunięcie. Pamiętaj o ostrożności podczas pracy z kontem root i zawsze sprawdzaj, czy zmiany nie wpłyną na działanie systemu.
Porada: Regularnie przeglądaj listę użytkowników, aby upewnić się, że w systemie nie ma nieautoryzowanych kont. Możesz też skonfigurować narzędzia monitorujące, takie jak auditd, do śledzenia zmian w kontach użytkowników.
Jeśli potrzebujesz dodatkowej pomocy, odwiedź fora społecznościowe, takie jak Ask Ubuntu lub Unix & Linux Stack Exchange.