Le informazioni GECOS potrebbero essere uno degli ultimi grandi misteri dell'informatica moderna. Perché GECOS è un argomento così unicorno per la gente di Linux? Penso che sia perché gli amministratori di sistema lo chiamano GECOS senza conoscere il significato dell'acronimo o il suo scopo originario. Gli amministratori di sistema fanno riferimento a questo /etc/passwd
informazioni sul file come Commento utente campo. Il commento dell'utente lo fa sembrare qualcosa che è modificabile dall'utente ed è aperto a cambiare per un capriccio. Nessuno di questi è vero. Questo campo non è modificabile dall'utente e viene generalmente utilizzato per contenere lo scopo di un account (per account di sistema o di servizio) o il nome completo dell'utente e altre informazioni.
[ Potrebbe interessarti anche:Gestire gli utenti Linux con il comando passwd ]
Se guardi il tuo /etc/passwd
file, il campo GECOS potrebbe essere vuoto, contenere il nome completo di un utente o il nome di qualche demone o descrizione dell'account di servizio.
Guarda questo estratto dal mio /etc/passwd
file:
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
Il campo GECOS è quello subito dopo il numero del gruppo e subito prima della shell dell'utente come mostrato di seguito.
Molto più in basso nel /etc/passwd
file è l'elenco del mio account utente. Come puoi vedere di seguito, il campo GECOS del mio account utente ha il mio nome, Ken Hess , in esso.
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
Allora, qual è il grande mistero? Buona domanda. Ed è qui che inizia davvero questa storia.
Cronologia GECOS
Non sono sicuro al 100 percento che una singola persona ricordi l'intera storia di come è iniziato, ma ecco cosa ho raccolto attraverso le ricerche e la lettura di alcune vecchie note di classe UNIX. Nell'era buia dell'informatica, c'era qualcosa chiamato General Electric Comprehensive Operating System (GECOS). Penso che solo da questo puoi vedere dove sta andando, ma continuerò comunque. Successivamente, GECOS divenne General Comprehensive Operating System (GCOS). I programmatori UNIX utilizzavano i sistemi GECOS/GCOS per lo spooling di stampa e altri servizi. Il campo GECOS/GCOS è stato aggiunto a UNIX /etc/passwd
file per denotare il nome del servizio e in seguito divenne la home per il nome completo di un utente, oltre ad alcune informazioni aggiuntive facoltative.
È diventata una pratica standard utilizzare il campo GECOS per nomi, numeri di telefono, numeri di edificio e indirizzi e-mail. Ricorda che UNIX è nato in un laboratorio e all'epoca ci si fidava di tutti, quindi i numeri di telefono di casa e altre informazioni non erano mantenute private come lo sono ora. Ogni bit di informazione in quel campo è stato separato da virgole per assomigliare al seguente:
:Ken Hess, edificio 300, 212-555-0000, 212-555-1234, [email protected]:
Alcune persone pensano, poiché GECOS ha cinque lettere e il campo GECOS ha cinque segnaposto che ogni lettera in qualche modo rappresenti quella parte delle informazioni. Non è così. È solo una coincidenza che GECOS e il campo abbiano entrambi cinque posti. Ho anche visto tutti i tipi di teorie su ciò che GECOS rappresenta in quei cinque luoghi. Il campo GECOS è anche il quinto campo nel /etc/passwd
file. Tutte queste cose portano a una conclusione:è successo nel tempo e per necessità, funziona e non è stato modificato. E per me va bene. Una rosa con un altro nome, giusto?
GECOS oggi
Su alcune distribuzioni Linux, adduser
command è un collegamento simbolico a useradd
. Tuttavia, questo non è vero su altre distribuzioni. Su quelle distribuzioni, il adduser
command è in realtà uno script Perl che ti guida attraverso la creazione di un nuovo account utente. Vedi sotto per i dettagli interessanti sull'esecuzione di questo script. Ho portato questo adduser
script sul mio sistema con facilità. Resta sintonizzato su Enable Sysadmin per un articolo che descrive come ho fatto.
# 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
Vedi dove questo comando ti richiede le informazioni GECOS?
Controllo del /etc/passwd
il file conferma il campo GECOS.
jhill:x:1003:1003:Jill Hill,828,212-555-0000,212-555-3456,[email protected]:/home/jhill:/bin/bash
Tutte le informazioni di Jill sono state inserite nel /etc/passwd
campo GECOS del file. Essendo uno script Perl, puoi personalizzare quei prompt per leggerli come desideri. Modificherò il mio per richiedere l'indirizzo e-mail piuttosto che informazioni casuali in Altro richiesta.
[ Vuoi testare le tue capacità di amministratore di sistema? Fai una valutazione delle abilità oggi. ]
Concludi
Facendo riferimento al campo GECOS semplicemente come Commento utente campo è parzialmente accurato, ma preferirei considerarlo come le Informazioni utente campo. Ma, indipendentemente da come tu o io ci riferiamo ad esso, ha lo scopo di contenere una descrizione del proprietario o dello scopo dell'account.