====== Uživatelé ====== **Uživatel** je osoba, které je v linuxu zřízen uživatelský účet, tedy obdržela určitá práva k přístupu do systému pomocí uživatelského jména (''login'') a hesla (''password'').\\ \\ Uživatele do systému přidává správce ([[:system:prikazovy_radek:root|root]]). Pro konkrétnío uživatele může nastavit poměrně přesně definovatelný soubor [[:system:prikazovy_radek:vlastnictvi|práv]], přiřadit jej k určitým [[#skupiny|skupinám (group)]], které rozšiřují uživatelovo oprávnění o další možnosti.\\ \\ Uživatelské jméno je trvalé, heslo může být nastaveno dočasné a uživatel si ho v tom případě musí periodicky měnit (je na to předem upozorněn). Pokud to neudělá včas, je mu přístup do systému zablokován.\\ \\ Systém vytvoří pro každého uživatele tzv. domovskou složku v adresáři ''/home''. Uživatel s přihlašovacím jménem ''jarda'' tedy bude mít vlastnická práva na složku ''/home/jarda'' a všechny podadresáře a soubory v ní uložené. Do složky ''/home/pepa'' se ovšem nedostane, ledaže by ''pepa'' umožnil [[.vlastnictvi#zmena_prav_a_vlastnictvi|nastavením]] nějakého podadresáře pro čtení nebo dokonce zápis všem.\\ \\ Systém uživatele nerozlišuje podle uživatelského jména, ale podle tzv. ''UID'' (User Identification Digit), identifikačního čísla uživatele. Z toho plyne několik souvislostí např. při instalaci nových verzí nebo jiné distibuce. ===== useradd - Vytvoření uživatele ===== Přepněte se do [[:system:prikazovy_radek#terminal|terminálu]] nebo do [[:konzole|Konzole]], což je emulátor terminálu a [[:root|přihlásíte se jako správce]]. \\ Spustíte program ''useradd'' (nebo ''adduser'', což je totéž). Jméno si snad zapamatujete - ''user'' = uživatel, ''add'' = anglicky přidat. Jde o prográmek vyskytující se snad v každé linuxové distribuci. Bez parametrů vám vypíše možnosti. Vy zadáte: [[:system:prikazovy_radek#konzole|{{wiki:icons:konzole.png?40 |Konzole}}]] useradd prihlasovaci_jmeno_uzivatele tedy například ''useradd pepa'' \\ \\ V tu chvíli se podívejte do ''/home'', a uvidíte, že vznikl nový podadresář ''/home/pepa'', což je Pepův domovský adresář. Do nového adresáře byly zkopírovány soubory z ''/etc/skel''.\\ \\ **POZOR**!! Pokud současně s uživatelem nezadáte heslo, příkaz vytvoří v ''/etc/passwd'' místo hesla hvězdičku a uživatel tím bude zablokován. Lepší je tedy zadat ''useradd'' přímo s parametry, které nastaví co třeba nebo vzápětí použít příkaz [[#passwd|passwd]].\\ \\ |Příklad:|Popis:| |''useradd user1''| - vytvoří nového uživatele| |''useradd -c %%"%%Josef Kaspar%%"%% -d /home/pepa -s /bin/bash -g users pepa''| - vytvoří uživatele s přihlašovacím jménem ''pepa'', vytvoří domovský adresář ''/home/pepa'', plné jméno v GECOS poli ''Josef Kaspar'', primární shell bude ''/bin/bash'', přidá ho do skupiny users v ''/etc/group''| |''useradd -c %%"%%Name Surname%%"%% -g admin -d /home/user1 -s /bin/bash user1''| - vytvoří nového uživatele a přiřadí ho do skupiny ''admin''| Chcete-li pro uživatele zadat i nějaké výchozí heslo, nazvat domovský adresář jinak, nastavit vypršení hesla po určité době atd. atd., využijte parametrů: |Parametr:|Popis:| |''-b'', ''%%--%%base-dir BASE_DIR''| - základní adresář pro nového uživatele, obvykle ''/home''| |''-c'', ''%%--%%comment COMMENT''| - nastaví položku GECOS pro nového uživatele (komentář)| |''-d'', ''%%--%%home-dir HOME_DIR''| - domovský adresář uživatele (obvykle podadresář v ''/home'')| |''-D'', ''%%--%%defaults''| - zobrazí nebo uloží změny jako defaultní (výchozí) konfiguraci ''useradd''| |''-e'', ''%%--%%expiredate EXPIRE_DATE''| - nastaví vypršení platnosti účtu do ''EXPIRE_DATE''| |''-f'', ''%%--%%inactive INACTIVE''| - nastaví časově omezenou platnost hesla do doby uvedené v ''INACTIVE''| |''-g'', ''%%--%%gid GROUP''| - přiřazení uživatele příslušné skupině (skupinám)| |''-G'', ''%%--%%groups GROUPS''| - seznam skupin v nichž je uživatel zařazen| |''-h'', ''%%--%%help''| - zobrazí nápovědu (anglicky)| |''-k'', ''%%--%%skel SKEL_DIR''| - zadat alternativní ''skel'' adresář| |''-K'', ''%%--%%key KEY=VALUE''| - přepíše výchozí ''/etc/login.defs''| |''-m'', ''%%--%%create-home''| - vytovří domovský adresář pro nového uživatele| |''-M''| - nevytvoří domovský adresář pro nového uživatele| |''-n''| - nevytvoří skupinu stejného jména jako uživatel| |''-o'', ''%%--%%non-unique''| - vytvoří uživatele se stejným ''UID'', které je v systému již použito| |''-p'', ''%%--%%password HESLO''| - použije pro nového uživatele zadané heslo| |''-r''| - vytvoří systémový účet| |''-s'', ''%%--%%shell SHELL''| - definuje přihlašovací shell pro nového uživatele| |''-u'', ''%%--%%uid UID''| - nastaví ''UID'' uživatele "natvrdo"| ===== userdel - Odstranění uživatele ===== příkaz mění soubory související s přístupem do systému a maže všechny položky související s příslušným uživatelským jménem. Aby vše proběhlo správně, musí zadávané přihlašovací jméno existovat. ''user'' = uživatel; ''del'' = zkratka delete, mazat. //userdel// nemůže odebrat účet uživatele, který je přihlášen. Uživatel musí být nejdříve odpojen. \\ \\ Jako [[:root|root]] napíšete: [[:system:prikazovy_radek#konzole|{{wiki:icons:konzole.png?40 |Konzole}}]] userdel -r pepa a v systému přestane existova uživatel ''pepa'' a díky parametru ''-r'' také jeho domovský adresář. |''userdel -r user1'' - smaže uživatele (''-r'' odstraní i domovský adresář)| |Parametr:|Popis:| |''-r''| - soubory v uživatelově domovském adresáři budou smazány, stejně tak uživatelův adresář pro došlou poštu adt. Uživatelovy soubory umístěné na jiných místech systému musí být nalezeny a smazány ručně| Soubory, které ''userdel'' mění: |''/etc/group''| - informace o účtech skupin| |''/etc/passwd''| - informace o účtech uživatelů| |''/etc/shadow''| - bezpečnostní informace u účtech uživatelů (hesla ap)| |Návratové kódy:|Popis:| |''0''| - úspěšný průběh| |''1''| - nelze aktualizovat soubor s hesly| |''2''| - nesprávný syntaxe příkazu| |''6''| - uvedený uživatel neexistuje| |''8''| - uživatel je momentálně připojen| |''10''| - nelze aktualizovat soubor ''/etc/group''| |''12''| - nelze odstranit domovský adresář| ===== usermod - Změna v nastavení uživatele ===== Pro tuhle potřebu je zde prográmek ''usermod'' (''user'' = uživatel; ''mod'' = zkratka od modify, tedy změnit). \\ Pomocí ''usermod'' můžete změnit jakoukoli položku v nastavení uživatele; od zákazu přístupu, přes změnu domovského adresáře, hesla až třebas po změnu přihlašovacího jména. ''usermod'' neprovede žádné změny u aktuálně přihlášeného uživatele. Musíte také nejprve ukončit všechny procesy spuštěné uživatelem (nebo běžící pod jeho ''UID'') dříve, než změníte uživatelovo ''UID''. \\ Záznamy uživatele v tabulce crontab je nutné provést ručně. \\ Ručně musíte provést změny vlastníka jakéhokoli procesu ručně. Musíte také provést potřebné změny v nastavené ''NIS'' pro NIS server. [[:system:prikazovy_radek#konzole|{{wiki:icons:konzole.png?40 |Konzole}}]] Použití: usermod [-c kommentář] [-d home_dir [-m ]] [-e datum_expirace] [-f inactive_days] [-g úvodní_skupina][-G skupina1 [ ,skupina2,... , [skupinaN] [-a] ]] [-l přihlašovací_jméno] [-p heslo] [-s shell][-u uid [-o ]] [-L -U] jméno |Příkaz:|Popis:| |''usermod -c %%"%%User FTP%%"%% -g system -d /ftp/user1 -s /bin/nologin user1''| - změní atributy uživatele| |Parametr:|Popis:| |''-c comment''| - nastaví položku komentáře v souboru hesel uživatelů na novou hodnotu. Normálně ji lze modifikovat pomocí utility ''chfn''| |''-d home_dir''| - nastaví nový domovský adresář. Společně s parametrem ''-m'' vytvoří nový adresář a obsah současného domovského adresáře do něj přesune a pokud neexistuje, pak vytvoří prázdný| |''-e expire_date''| - v zadaném datumu přestane být uživatelský účet aktivní. Datum musí mít formát ''RRRR-MM-DD'', tedy např. ''2012-09-19'' pro 19. září 2012| |''-f inactive_days''| - číslo zde zadané uvádí, po kolika dnech přestane být platné příhlašovací heslo a účet s nezměněným heslem bude zakázán. Hodnota ''0'' zakáže účet záhy po vypršení hesla, hodnota ''-1'' tuto vlastnost zakáže. Defaultní hodnota je ''-1''| |''-g initial_group''| - názvy skupin nebo jejich čísla (''GID'') v nichž je uživatel přihlášen. Jméno a skupina musí existovat. Číslo skupiny musí existovat a odkazovat na existující skupinu. Defaultní číslo skupiny je ''1''| |''-G group1[ ,group2,..., [groupN]]]''| - seznam podporovaných skupin a jejich čísel připojených k uživateli. Skupiny jsou odděleny čárkou, mezery nejsou uvažovány. Zakázené skupiny lze definovat parametrem ''-g''. Jestliže není současný uživatel ve výpisu skupin uveden, uživatel byl ze skupiny odebrán. Toto chování lze zakázet změnou nastavení pomocí parametru ''-a'', čímž bude uživatel přidán do současného podporovaného seznamu skupin| |''-l login_name''| - provede změnu přihlašovacího jména pro zadaného uživatele. Nic jiného změněho nebude. Je na zvážení, zda nezměnit také název domovského adresáře podle jména uživatele| |''-L''| - uzamkne uživatelské heslo, přidá příznak ''!'' před heslo, čímž zakáže jeho použití. Nelze použít současně s parametry ''-p'' nebo ''-U''| |''-o''| - parametr umožní změnit ''UID'' na neunikátní hodnotu| |''-p passwd''| - šifrované heslo, vrácené kryptem| |''-s shell''| - jméno přihlašovacího shellu uživatele. Nastavení této položky bez hodnoty způsobí načtení defaultního přihlašovacího shellu| |''-u uid''| - číselná hodnota uživatelského ''ID''. Tato hodnota musí být v systému unikátní, pro neunikátní ''UID'' použijte parametr ''-o''. Hodnota nesmí být záporná. Hodnoty ''0'' a ''999'' jsou obvykle rezervovány pro systémové účty. Soubory patřící uživateli umístěné v adresářovém stromu počínajíce domovským adresářem uživatele budou automaticky přiřazeny uživateli nového ''UID''. Soubory mimo tento adresářový strom musí být nastaveny ručně| |''-U''| - odemkne uživatelské heslo. Odejme příznak ''!'' zapsaný před uloženým heslem. Nelze použít společně s parametry ''-p'' nebo ''-L''| Vedle univerzálně použitelného ''usermod'' můžete pro některé jednotlivé a časté změny použít jednoúčelové příkazy, jako jsou: \\ \\ [[#passwd|passwd]] - pro změnu hesla aktuálního uživatele\\ \\ [[#chage|chage]] - pro nastavení data, kdy vyprší platnost hesla zadaného uživatele\\ \\ [[#newgrp|newgrp]] - pro nastavení nové výchozí skupiny do ní patří uživatel, platí pro všechny nově vytvořené soubory ===== Spráce - root ===== je v systému linux všemocná osoba s právy k čemukoli. Může cokoli v systému změnit, přenastavit, vytvořit, smazat atd atd. Proto je velmi rozumné VYUŽÍVAT SPRÁVCOVSKÝ ÚČET POUZE K NUTNÝM NASTAVENÍM SYSTÉMU, a běžnou práci vykonávat jako řadový uživatel. Vyhnete se tak mnoha možným rizikům a těžkostem. \\ \\ Účet správce ([[:root|root]]) je vytvořen při instalaci systému, při instalaci jste také vyzváni k přiřazení hesla a dalších základních nastavení. ===== Správa uživatelů v Ovládacím centru Mageia ===== [[:system:mcc#nastroje_pro_spravu|Správa uživatelů zde.]] ===== passwd ===== změna uživatelského hesla [[:system:prikazovy_radek#konzole|{{wiki:icons:konzole.png?40 |Konzole}}]] Použití: passwd [-k] [-l] [-u[-f]] [-d] [-n min_dnů] [-x maxdnů] [-w varování_dnů] [-i neaktivní_dnů] [-S][--stdin] [uživatelské_jméno] |Příkaz:|Popis:| |''passwd''| - změní heslo| |''passwd user1''| - změní heslo uživatele ''user1'' (může využít jen [[:root|root]])| |Parametr:|Popis:| |''-k'', ''%%--%%keep-tokens''| - ponechat autentizační tokeny, které nevypršely| |''-d'', ''%%--%%delete''| - zrušit heslo zadaného účtu (pouze [[:root|root]])| |''-l'', ''%%--%%lock''| - uzamknout zadaný účet (pouze [[:root|root]])| |''-u'', ''%%--%%unlock''| - odemknout zadaný účet (pouze [[:root|root]])| |''-f'', ''%%--%%force''| - vynutit operaci| |''-x'', ''%%--%%maximum=DAYS''| - maximální doba platnosti hesla (pouze [[:root|root]])| |''-n'', ''%%--%%minimum=DAYS''| - minimální doba platnosti hesla (pouze [[:root|root]])| |''-w'', ''%%--%%warning=DAYS''| - počet dní zobrazení varování před vypršením platnosti hesla (pouze [[:root|root]])| |''-i'', ''%%--%%inactive=DAYS''| - počet dní po vypršení hesla, kdy bude účet zablokován (pouze [[:root|root]])| |''-S'', ''%%--%%status''| - zobrazit stav hesla daného účtu (pouze [[:root|root]])| |''%%--%%stdin''| - číst nové tokeny ze ''stdin'' (pouze [[:root|root]])| |''-?'', ''%%--%%help''| - zobrazí nápovědu příkazu| |''%%--%%usage''| - zobrazit krátkou zprávu o použití| ===== chage ===== |Příkaz:|Popis:| |''chage -E 2012-12-31 user1''| - nastaví kdy vyprší heslo uživatele ''user1''| ===== chfn ===== příkaz pro změnu popisných informací o uživateli. Tyto informace jsou uloženy v souboru ''/etc/passwd'', a jsou zobrazovány programem ''finger''. \\ Příkaz ''finger'' zobrazí informace měněné příkazem ''chfn''. Lze zobrazit pět položek: plné jméno, název pracovniště a telefon a soukromý telefon. == INTERAKTIVNÍ REŽIM == V interaktivním režimu zobrazí ''chfn'' požadovanou položku a umožní vložit novou informaci, nebo ponechat původní. Pokud není zadáno/zobrazeno nic, zůstane hodnota prázdná. Vložíte-li do parametru ''none'', hodnota bude vymazána. \\ [[:system:prikazovy_radek#konzole|{{wiki:icons:konzole.png?40 |Konzole}}]] Použití: chfn [ -f full-name ] [ -o office ] [ -p office-phone ] [ -h home-phone ] [ -u ] [ -v ] [ username ] |Příkaz:|Popis:| |''chfn -f''| - plné jméno uživatele| |''chfn -p''| - telefon do kanceláře| |Parametr:|Popis:| |''-f'', ''%%--%%full-name''| - uloží plné jméno uživatele| |''-o'', ''%%--%%office''| - číslo kanceláře| |''-p'', ''%%--%%office-phone''| - číslo telefonu do kanceláře| |''-h'', ''%%--%%home-phone''| - soukromý telefon| |''-u'', ''%%--%%help''| - vypíše nápovědu| |''-v'', ''%%--%%version''| - vypíše informaci o verzi programu| ===== chsh ===== příkaz pro změnu přihlašovacího shellu ===== pwck ===== ''pwck'' ověří správnost souboru ''/etc/passwd'' a existenci uživatelů ===== su ===== je příkaz pro změnu přihlášeného uživatele.\\ \\ Například je přihlášen ''pepa'', ale potřeboval by nahlédnout do domovského adresáře své ženy ''pepina''. Použije příkaz ''su'' takto: [[:system:prikazovy_radek#konzole|{{wiki:icons:konzole.png?40 |Konzole}}]] Použití: su pepina zadá její heslo, které se nevypisuje na obrazovku (bezp. opatření proti odečtení počtu znaků hesla) a potvrdí Enter. \\ \\ Tím se v [[:konzole|Konzoli]] či [[:system:prikazovy_radek#terminal|terminálu]] stala z ''pepa'' → ''pepina'' a všechny příkazy a programy budou fungovat, jako by je spustila ''pepina'', vytvořené soubory budou patřit uživateli ''pepina'' atd. atd. \\ \\ Zadáte-li příkaz ''su'' bez parametrů, v dalším kroku je očekáváno heslo [[:root|správce]]. Pokud ho zadáte, pak se stanete [[:root|správcem (rootem)]]. ====== Skupiny ====== Zde se především používá obdoba příkazů ''user*'', tedy ''group*'' s obdobnou funkcí. ===== groupadd - Vytvoření skupiny===== je příkaz pro vytvoření nové skupiny. Upravuje soubor [[.systemove_soubory#etc_group|/etc/group]]. Příkaz ''groupadd'' vytvoří účet nové skupiny s použitím hodnot zadaných v příkazovém řádku nebo přednastavených systémem. Nová skupna bude vložena do potřebných systémových souborů. [[:system:prikazovy_radek#konzole|{{wiki:icons:konzole.png?40 |Konzole}}]] Použití: groupadd [-g gid [-o ]] [-f] [-r] [-K KEY=VALUE] skupina |Příkaz:|Popis:| |''groupadd jmeno_skupiny''| - vytvoří novou skupinu| |Parametr:|Popis:| |''-f''| - tato volba způsobí uspěšné ukončení příkazu v případě, že zadávaná skupina již existuje. Společně s parametrem ''-g'', je-li zvolen již použitý ''GID'', bude vybrán a použit nejbližší (unikátní) ''GID'' (např. ''-g'' je vypnutý)| |''-g GID''| - zadaný ''GID'' je číselná hodnota stanovující ''ID'' skupiny. Hodnota musí být jedinečná, v opačném případě použijte parametr ''-o''. Hodnota nesmí být záporná. Protože hodnoty ''0'' až ''499'' jsou používány pro systémové účty, použijte číslo ''500'' a větší a zároveň větší než největší ''ID'' číslo skupiny již použité.| |''-K KEY=HODNOTA''| - přepíše v ''/etc/login.defs'' defaultní hodnoty (''GID_MIN'', ''GID_MAX'' a další). Vícenásobné použití parametru ''-K'' může například vypad takto: \\ ''-K GID_MIN=100 -K GID_MAX=499'' \\ \\ **Poznámka:** ''-K GID_MIN=10,GID_MAX=499'' nebude fungovat.| |''-o''| - přidá skupinu s již použitým (neunikátním) ''GID''| |''-r''| - se používá pro vytvoření systémového účtu. Bude automaticky vybrán a použit přvní nepoužitý ''GID'' nižší než ''499'' pokud není současně využit parametr ''-g''| == SOUBORY == |Příkaz:|Popis:| |''/etc/group''| - informace o skupinových účtech| |''/etc/gshadow''| - bezpečné informace o skupinových účtech| |Návratové hodnoty:|Popis:| |''0''| - úspěch| |''2''| - špatná syntaxe programu| |''3''| - zadána špatná hodnota parametru| |''4''| - ''GID'' není jedinečný (není-li použit parametr ''-o'')| |''9''| - název skupiny není jedinečný| |''10''| - nelze aktualizovat soubor skupin ([[.systemove_soubory#etc_group|/etc/group]])| ===== groupdel - Smazání skupiny===== |Příkaz:|Popis:| |''groupdel jmeno_skupiny''| - smaže skupinu| ===== groupmod - Změna v nastavení skupiny===== |Příkaz:|Popis:| |''groupmod -n new_group_name old_group_name''| - přejmenuje skupinu| ===== grpck ===== ''grpck'' ověří správnost souboru ''/etc/group'' a existenci skupin ===== newgrp ===== |Příkaz:|Popis:| |''newgrp group_name''| - přihlásí se do nové skupiny, změní výchozí skupinu nově vytvářených souborů|