IT rekvalifikácia. Seniorní programátori zarábajú až 6 000 €/mesiac a rekvalifikácia je prvým krokom. Zisti, ako na to!

11. diel - Linuxový terminál (Bash) - Správa užívateľov

Už vieme, že je Linux viacužívateľský operačný systém, a tak si môžeme otvoriť niekoľko okien terminálu av každom z nich sa prihlásiť ako iný používateľ. V dnešnej lekcii sa naučíme efektívne vytvárať a ďalej spravovať užívateľov.

Používatelia v Linuxe

Linux všetkých užívateľov zapisuje do zoznamu, ktorý nájdeme v súbore passwd v adresári /etc. Poďme súbor otvoriť a pozrieť sa, akí sú v systéme používatelia:
less /etc/passwd

Na každom riadku nájdeme jedného používateľa, a tak si ľahko môžeme spočítať koľko používateľov v systéme existuje. Použijeme na to filter wc (word count) s prepínačom -l, ktorý bude počítať riadky:

less /etc/passwd | wc -l

V systéme budeme mať pravdepodobne okolo 30 užívateľov. Na prvom riadku nájdeme vždy užívateľov root s UID 0, potom budú nasledovať užívateľov jednotlivých služieb, ako napríklad lp, mail, www-data a ďalšie. Na konci súboru potom nájdeme užívateľov, ktorých sme si vytvorili my.

Ak sa pozrieme na ľubovoľný riadok súboru, všimneme si, že sa skladá z niekoľkých informácií oddelených dvojbodkou (:). Ich význam je nasledujúci:

zaboj x 1001 1001 ,,, /home/zaboj /bin/bash
Meno používateľa Heslo používateľa Unikátne ID užívateľa (UID) ID skupiny (GID) Informácie o profile Domovský adresár Predvolené shell
Na druhej pozícii bývalo heslo, dnes je však nahradené znakom x. Všetky heslá sú uložené v zahashovanej podobe v súbore /etc/shadow.

Pokiaľ by sme chceli vedieť, ktorí užívatelia sú aktuálne prihlásený, zadáme do terminálu príkaz:

users

Vytvorenie užívateľa

Začneme tým, že si príkazom adduser vytvoríme nového používateľa itnetwork. Do terminálu napíšeme:
sudo adduser itnetwork

Systém nás následne vyzve na zadanie bezpečného hesla a ďalších informácií:

Adding user `itnetwork' ...
Adding new group `itnetwork' (1002) ...
Adding new user `itnetwork' (1002) with group `itnetwork' ...
Creating home directory `/home/itnetwork' ...
Copying files from `/etc/skel' ...
New password:
Retype new password:
passwd: password updated successfully
Changing the user information for itnetwork
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]

Informácie o užívateľovi nie je povinné vyplňovať. Stačí ich iba potvrdiť klávesom Enter a nakoniec odsúhlasiť správnosť všetkých údajov stlačením Y. Spolu s novým užívateľom sa automaticky vytvorí aj jeho domovský adresár. Ten nájdeme v adresári /home a jeho názov bude zhodný s menom používateľa.

Nového užívateľa môžeme vytvoriť aj príkazom useradd. V tomto prípade však musíme heslo a ďalšie informácie nastaviť ručne pomocou prepínačov, a tak sa tento spôsob využíva napríklad v skriptoch.

Zmena hesla

Pre nastavenie nového hesla, či na zmenu existujúceho hesla využijeme príkaz passwd. Po zadaní príkazu nás systém vyzve na zadanie hesla pre aktuálne prihláseného užívateľa:
Changing password for itnetwork.
Current password:
New password:
Retype new password:
passwd: password updated successfully

Ak máme administrátorské práva, môžeme zmeniť heslo aj inému užívateľovi:

passwd david

Nastavenie používateľa

Každého používateľa potrebujeme ďalej spravovať, napríklad ho pridať do ďalšej skupiny, zmeniť mu domovský adresár či používateľské meno. K tomuto slúži príkaz usermod a niekoľko prepínačov.

Zmena primárnej skupiny

Užívateľ musí patriť aspoň do jednej skupiny. Takúto skupinu potom označujeme ako primárnu. Poďme zmeniť primárnu skupinu používateľa itnetwork na netadmins:
usermod -g netadmins itnetwork

Pridanie do skupiny

Každý používateľ však môže byť členom až 32 sekundárnych skupín. Do sekundárnej skupiny redactors pridáme používateľa itnetwork príkazom:
usermod -a -G redactors itnetwork

Ak chceme používateľa pridať do viacerých skupín naraz, napíšeme ich za seba bez medzery a oddelíme čiarkou:

usermode -a -G redactors,prteam itnetwork

Pri pridávaní užívateľa do novej skupiny vždy používame prepínač -a. Ak ho vynecháme, používateľ bude odstránený zo všetkých skupín, ktoré nie som v aktuálnom zozname.

Zmena domovského adresára

Nový domovský adresár používateľa nastavíme prepínačom -d:
usermod -d /home/itnetwork_new -m itnetwork

Takmer vždy chceme použiť prepínač -m, a tým presunúť obsah existujúceho adresára do nového.

Zmena užívateľského mena

Zmenu užívateľského mena nevykonávame príliš často, ale môže nastať situácia, ktorá bude zmenu vyžadovať. Nové užívateľské meno admin nastavíme s využitím prepínača -l:
usermod -l admin itnetwork

Príkazom usermod je ďalej možné zmeniť UID užívateľa, zamknúť či odomknúť profil, pridať k účtu komentár a podobne. Nápovedu k týmto možnostiam získame príkazom:

usermod --help

Prepnutie užívateľa

Niekedy potrebujeme využiť oprávnenie iného užívateľského profilu. Dočasné prihlásenie ako iný používateľ nám umožní prístup k adresárom a súborom, ku ktorým z nášho profilu nemáme prístup. Na to slúži príkaz su, ktorý nasleduje meno užívateľa za ktorého sa prihlasujeme:
sudo su administrator

Táto relácia je dostupná iba z aktuálneho terminálu, v inom budeme stále prihlásení pod naším užívateľom. Reláciu ukončíme príkazom exit.

Odstránenie užívateľa

Na odstránenie užívateľa máme príkaz userdel:
sudo userdel itnetwork

Pokiaľ k príkazu pridáme prepínač -r, odstránime súčasne aj domovský adresár:

sudo userdel -r itnetwork

To je pre dnešnú lekciu všetko.

V budúcej lekcii, Linuxový terminál (Bash) - Správa skupín a ACL , sa naučíme spravovať skupiny. Ukážeme si, ako v Linuxe prideľovať oprávnenia jednotlivým užívateľom pomocou ACL.


 

Predchádzajúci článok
Linuxový terminál (Bash) - Štandardný vstup / výstup a expanzia
Všetky články v sekcii
Základy Linuxu
Preskočiť článok
(neodporúčame)
Linuxový terminál (Bash) - Správa skupín a ACL
Článok pre vás napísal Václav Franz
Avatar
Užívateľské hodnotenie:
1 hlasov
Aktivity