GNU/Linux >> Znalost Linux >  >> Linux

Co je UID v Linuxu, jak jej najít a změnit

Pokud jste interagovali se systémy Linux, je pravděpodobné, že jste narazili na tato dvě slova, UID a GID. Pokud o nich nemáte jasnou představu, postupujte podle tohoto článku.

Co je UID v Linuxu?

UID je zkratka slova User Identifier, zatímco GID je zkratka slova Group Identifier. V tomto konkrétním článku se zaměříme na identifikátor uživatele (UID).

UID je jedinečné identifikační číslo přidělené každému uživateli přítomnému v systému Linux. Primární role UID čísla je identifikovat uživatele linuxovému jádru.

Používá se ke správě systémových prostředků, ke kterým má uživatel v systému přístup. Je to jeden z důvodů pro použití jedinečného UID pro každého dostupného uživatele. Jinak, pokud máme dva uživatele uvedené pod jedním UID, pak by oba mohli mít přístup ke zdrojům určeným pro toho druhého.

Kde najít uložené UID?

UID najdete v souboru /etc/passwd, což je soubor, který také ukládá všechny uživatele registrované v systému. Chcete-li zobrazit obsah souboru /etc/passwd, spusťte cat příkaz na soubor, jak je uvedeno níže na terminálu.

Soubor /etc/passwd obsahuje všechny potřebné atributy nebo základní informace o každém jednotlivém uživateli v systému. Údaje jsou zobrazeny v sedmi sloupcích, jak je uvedeno níže. Tato pole jsou oddělena dvojtečkami (:). Tento soubor také obsahuje systémem definované účty a skupiny potřebné pro správnou instalaci, spuštění a aktualizaci systému.

Sloupec 1 – Jméno
Sloupec 2 – Heslo – Pokud uživatel nastavil v tomto poli heslo, je označeno písmenem (x).
Sloupec 3 – UID (ID uživatele)
Sloupec 4 – GID (ID skupiny)
Sloupec 5 – Gecos – Obsahuje obecné informace o uživateli a může být prázdný.
Sloupec 6 – Domovský adresář
Sloupec 7 – Shell – Cesta k výchozí shell pro uživatele.

Identifikujte UID

Z obrázku výše je prvním uživatelem uvedeným v souboru root. Root má celkovou kontrolu nad každým aspektem systému. Uživatel root má přiřazeno UID Zero (O) a GID (0). Další, které následují, jsou systémem definované účty a skupiny.

Ještě jedna věc, kterou je třeba poznamenat, je, že UID =0 a GID =0 poskytují uživateli root všechny pravomoci v systému. Pokud to chcete dokázat, přejmenujte root na něco jiného, ​​jako je Example_User a vytvořte nového uživatele root s novým UID a GID. Uvědomíte si, že Example_User bude mít stále zvýšená oprávnění, přestože nemá root uživatelské jméno.

Jak si také všimnete z obrázku, systémem definované účty a skupiny, které následují za uživatelem root, mají UID 1,2,3,4,… a tak dále. Je to proto, že většina systémů Linux rezervuje prvních 500 UID pro systémové uživatele. Ostatním uživatelům přidaným pomocí příkazu useradd je přiřazeno UID od 500. V systémech Ubuntu a Fedora je novému uživateli, dokonce i uživateli vytvořenému během procesu instalace, přiděleno UID od 1000 a výše.

To vidíte na obrázku níže, kde máme dva uživatele. Fosslinux_admin a Tuts.

Uživatel „tuts“ byl vytvořen během procesu instalace a je mu přiděleno UID 1000. Druhý uživatel, „fosslinux“, byl přidán později a bylo mu přiděleno UID 1001.

Jak najít UID uživatele, skupiny nebo účtu

Diskutovali jsme o tom, jak můžeme najít UID zobrazením obsahu souboru /etc/passwd. Existuje rychlejší a jednodušší způsob. Použijeme id příkaz.

Chcete-li například najít UID uživatele Fosslinux_admin a Tuts, spusťte níže uvedený příkaz. Možná budete požádáni o zadání hesla uživatele root.

id fosslinux_admin
id tuts

Příkaz id můžeme také spustit na jiných skupinách, jak je uvedeno níže. Samotným provedením příkazu id v terminálu zobrazí UID aktuálně přihlášeného uživatele. Viz obrázek níže.

Jak změnit UID

Předpokládejme, že spravujete systém s mnoha uživateli, řekněme organizace nebo instituce. Pokud uživatel opustil společnost, pravděpodobně budete muset novému uživateli přiřadit UID zaměstnance, který skončil.

Nejprve vytvořte dočasného uživatele pro tento příklad. Použijeme příkaz useradd. Budete muset mít oprávnění root. Viz příkaz níže.

useradd example_user

Spuštěním id příkazu na uživateli example_user vidíme, že tento nový uživatel má UID 1003

Nyní smažeme uživatele Fosslinux_admin, který měl UID =1001, a přiřaďme jej našemu novému uživateli. Použijeme userdel příkaz k odebrání uživatele.

sudo userdel -r fosslinux_admin

Jakmile to uděláme, přiřadíme našeho nového uživatele – example_user, UID, které patřilo fosslinux_admin. To je UID =1001. Provedeme to pomocí příkazu usermod.

usermod -u 1001 exmple_user

Spuštěním příkazu id na uživatele, například _user, vidíme, že uživatel má nyní UID =1001.

Nyní, jakmile budete mít nového uživatele UID starého uživatele, budete je muset synchronizovat se všemi ostatními soubory, které patřily starému uživateli. Můžete to provést provedením příkazu níže.

find / -user [UID_of_old_user] -exec chown -h [new_user] {} \;
e.g
sudo find / -user 1001 -exec chown -h user_2 {} \;

Vytvořte nového uživatele se specifickým UID

Případně můžeme vytvořit nového uživatele pomocí useradd a přiřadit uživateli konkrétní UID. Viz syntaxe níže.

sudo useradd -u 1111 user_2

Spuštěním příkazu id na user_2 vidíme, že UID uživatele =1111.

Závěr

A je to! Vše, co potřebujete vědět o UID v systémech Linux. Pokud si myslíte, že nám unikl smysluplný koncept nebo potřebujete nějaké objasnění, neváhejte a dejte nám vědět v sekci komentářů níže.


Linux
  1. Co je Podman a jak nainstalovat Podman v Linuxu

  2. Jak najít všechny uživatele Sudo v Linuxu

  3. Jak zjistit využití uživatelské paměti v linuxu

  1. Co je uživatel Linuxu?

  2. Co je příkaz Chown v Linuxu a jak jej používat

  3. Jak změnit, odebrat nebo zakázat uživatelské heslo v systému Linux

  1. Jak změnit uživatelské jméno v Linuxu

  2. Jak najít a zabít zombie proces v Linuxu

  3. Linux chmod and chown – Jak změnit oprávnění a vlastnictví souborů v Linuxu