GNU/Linux >> Znalost Linux >  >> Linux

Informace o Linuxu GECOS byly demystifikovány

Informace GECOS mohou být jednou z posledních velkých záhad moderní výpočetní techniky. Proč je GECOS tak jednorožcovým tématem pro lidi z Linuxu? Myslím, že je to proto, že správci systému to označují jako GECOS  aniž byste znali význam zkratky nebo její původní účel. Systémoví správci odkazují na toto /etc/passwd informace o souboru jako Komentář uživatele pole. Komentář uživatelů zní jako něco, co je uživatelsky upravitelné a lze je z rozmaru změnit. Ani jedno z toho není pravda. Toto pole nemůže uživatel upravovat a pole se obecně používá k uložení účelu účtu (pro systémové nebo servisní účty) nebo celého jména uživatele a dalších informací.

[ Také by vás mohlo bavit:Správa uživatelů systému Linux pomocí příkazu passwd ]

Pokud se podíváte na svůj vlastní /etc/passwd může být pole GECOS prázdné, může obsahovat celé jméno uživatele nebo jméno nějakého démona nebo popis servisního účtu.

Podívejte se na tento úryvek z mého /etc/passwd soubor:

root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
operator:x:11:0:operator:/root:/sbin/nologin
games:x:12:100:games:/usr/games:/sbin/nologin
ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin
nobody:x:65534:65534:Kernel Overflow User:/:/sbin/nologin
dbus:x:81:81:System message bus:/:/sbin/nologin
systemd-coredump:x:999:997:systemd Core Dumper:/:/sbin/nologin
systemd-resolve:x:193:193:systemd Resolver:/:/sbin/nologin

Pole GECOS je pole hned za číslem skupiny a těsně před uživatelským shellem, jak je znázorněno níže.

Mnohem níže v /etc/passwd soubor je výpis mého uživatelského účtu. Jak můžete vidět níže, pole GECOS mého uživatelského účtu má mé jméno, Ken Hess , v něm.

sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
rngd:x:984:980:Random Number Generator Daemon:/var/lib/rngd:/sbin/nologin
dovecot:x:97:97:Dovecot IMAP server:/usr/libexec/dovecot:/sbin/nologin
dovenull:x:983:979:Dovecot's unauthorized user:/usr/libexec/dovecot:/sbin/nologin
tcpdump:x:72:72::/:/sbin/nologin
bsmith:x:1000:1000:Bob Smith:/home/bsmith:/bin/bash
khess:x:1001:1001:Ken Hess:/home/khess:/bin/bash

Takže, co je tou velkou záhadou? Dobrá otázka. A tam tento příběh skutečně začíná.

Historie GECOS

Nejsem si stoprocentně jistý, že si někdo pamatuje celý příběh, jak to začalo, ale tady je to, co jsem nasbíral při hledání a čtení některých starých poznámek ze třídy UNIX. V temných dobách výpočetní techniky existovalo něco, čemu se říkalo General Electric Comprehensive Operating System (GECOS). Myslím, že už jen z toho můžete vidět, kam to směřuje, ale stejně budu pokračovat. Později se GECOS stal General Comprehensive Operating System (GCOS). UNIXoví programátoři používali systémy GECOS/GCOS pro zařazování tisku a další služby. Pole GECOS/GCOS bylo přidáno do UNIX /etc/passwd soubor k označení názvu služby a později se stal domovem pro celé jméno uživatele a některé další, volitelné informace.

Stalo se standardní praxí používat pole GECOS pro jména, telefonní čísla, čísla budov a e-mailové adresy. Pamatujte, že UNIX začínal v laboratoři a každému se v té době věřilo, takže domácí telefonní čísla a další informace nebyly tak soukromé jako nyní. Každý bit informace v tomto poli byl oddělen čárkami, aby vypadal následovně:

:Ken Hess, budova 300, 212-555-0000, 212-555-1234, [email protected]:

Někteří lidé si myslí, že protože GECOS má pět písmen a pole GECOS má pět zástupných symbolů, každé písmeno nějakým způsobem zastupuje danou část informace. To ne. Je jen náhoda, že GECOS a obor mají oba pět míst. Také jsem na těchto pěti místech viděl nejrůznější teorie o tom, co GECOS znamená. Pole GECOS je také páté pole v /etc/passwd soubor. Všechny tyto věci vedou k jednomu závěru:Stalo se to časem a z nutnosti, funguje to a nezměnilo se to. A to je se mnou v pohodě. Růže pod jiným jménem, ​​že?

GECOS dnes

U některých distribucí Linuxu adduser příkaz je symbolický odkaz na useradd . To však neplatí pro jiné distribuce. U těchto distribucí adduser příkaz je ve skutečnosti skript v Perlu, který vás provede vytvořením nového uživatelského účtu. Níže naleznete zajímavé podrobnosti o spouštění tohoto skriptu. Přenesl jsem tohoto adduser skript do mého systému snadno. Zůstaňte naladěni na Povolit Sysadmin, kde najdete článek popisující, jak jsem to udělal.

# adduser jhill
Adding user `jhill' ...
Adding new group `jhill' (1003) ...
Adding new user `jhill' (1003) with group `jhill' ...
Creating home directory `/home/jhill' ...
Copying files from `/etc/skel' ...
New password: 
Retype new password: 
passwd: password updated successfully
Changing the user information for jhill
Enter the new value, or press ENTER for the default
	Full Name []: Jill Hill
	Room Number []: 828
	Work Phone []: 212-555-0000
	Home Phone []: 212-555-3456
	Other []: [email protected]
Is the information correct? [Y/n] Y

Vidíte, kde vás tento příkaz vyzve k zadání informací GECOS?

Kontrola /etc/passwd soubor potvrdí pole GECOS.

jhill:x:1003:1003:Jill Hill,828,212-555-0000,212-555-3456,[email protected]:/home/jhill:/bin/bash

Všechny informace o Jill byly vloženy do /etc/passwd pole GECOS souboru. Vzhledem k tomu, že se jedná o skript v Perlu, můžete si tyto výzvy upravit tak, aby se četly, jak chcete. Upravím svůj dotaz na e-mailovou adresu, nikoli na náhodné informace v části Jiné výzva.

[ Chcete si vyzkoušet své schopnosti správce systému? Proveďte hodnocení dovedností ještě dnes. ]

Sbalit

Odkaz na pole GECOS jednoduše jako Uživatelský komentář pole je částečně přesné, ale raději bych to považoval za Informace o uživateli pole. Ale bez ohledu na to, jak to vy nebo já označujeme, je určeno k tomu, aby obsahovalo popis vlastníka účtu nebo účelu.


Linux
  1. Jak vypsat seznam uživatelů v Linuxu

  2. Rozdíl mezi /bin/false &/sbin/nologin

  3. Linux:Rozdíl mezi /dev/console, /dev/tty a /dev/tty0?

  1. /usr/bin Vs /usr/local/bin Na Linuxu?

  2. Jak přenosné jsou /dev/stdin, /dev/stdout a /dev/stderr?

  3. Linux – sloučení /usr/bin A /usr/sbin do /bin (gnu/linux)?

  1. Soubory protokolu Linux

  2. Jaký je rozdíl mezi /bin/false a /sbin/nologin jako uživatelský shell nologin

  3. Nainstalujte binární soubory do /bin, /sbin, /usr/bin a /usr/sbin, interakce s --prefix a DESTDIR