GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Linux GECOS-Informationen entmystifiziert

GECOS-Informationen könnten eines der letzten großen Geheimnisse der modernen Computertechnik sein. Warum ist GECOS so ein Unicorn-Thema für Linux-Leute? Ich denke, das liegt daran, dass Systemadministratoren es als GECOS  bezeichnen ohne die Bedeutung des Akronyms oder seinen ursprünglichen Zweck zu kennen. Systemadministratoren beziehen sich auf diesen /etc/passwd Dateiinformationen als Benutzerkommentar Feld. Der Benutzerkommentar lässt es wie etwas klingen, das vom Benutzer bearbeitet werden kann und aus einer Laune heraus geändert werden kann. Beides ist nicht wahr. Dieses Feld kann nicht vom Benutzer bearbeitet werden, und das Feld wird im Allgemeinen verwendet, um den Zweck eines Kontos (für System- oder Dienstkonten) oder den vollständigen Namen des Benutzers und andere Informationen aufzunehmen.

[Das könnte Ihnen auch gefallen:Verwalten von Linux-Benutzern mit dem passwd-Befehl ]

Wenn Sie sich Ihre eigene /etc/passwd -Datei kann das GECOS-Feld leer sein, den vollständigen Namen eines Benutzers enthalten oder den Namen eines Daemons oder einer Dienstkontobeschreibung enthalten.

Sehen Sie sich diesen Auszug aus meinem /etc/passwd an Datei:

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

Das GECOS-Feld befindet sich direkt nach der Gruppennummer und direkt vor der Shell des Benutzers, wie unten gezeigt.

Viel weiter unten in /etc/passwd file ist der Eintrag meines Benutzerkontos. Wie Sie unten sehen können, enthält das GECOS-Feld meines Benutzerkontos meinen Namen, Ken Hess , darin.

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

Also, was ist das große Geheimnis? Gute Frage. Und hier beginnt diese Geschichte wirklich.

GECOS-Geschichte

Ich bin mir nicht 100-prozentig sicher, ob sich eine einzelne Person an die ganze Geschichte erinnert, wie dies begann, aber hier ist, was ich durch Suchen und Lesen einiger alter UNIX-Kursnotizen herausgefunden habe. Im dunklen Zeitalter der Computer gab es etwas namens General Electric Comprehensive Operating System (GECOS). Ich denke, allein daran können Sie sehen, wohin das führt, aber ich werde trotzdem weitermachen. Später wurde GECOS zum General Comprehensive Operating System (GCOS). UNIX-Programmierer verwendeten GECOS/GCOS-Systeme für Druck-Spooling und andere Dienste. Das GECOS/GCOS-Feld wurde zu UNIX /etc/passwd hinzugefügt Datei zur Bezeichnung des Dienstnamens und wurde später zur Heimat für den vollständigen Namen eines Benutzers sowie einige zusätzliche, optionale Informationen.

Es wurde zur Standardpraxis, das GECOS-Feld für Namen, Telefonnummern, Gebäudenummern und E-Mail-Adressen zu verwenden. Denken Sie daran, dass UNIX in einem Labor begann und damals jedem vertraut wurde, sodass private Telefonnummern und andere Informationen nicht so vertraulich behandelt wurden wie heute. Jedes Informationsbit in diesem Feld wurde durch Kommas getrennt, um wie folgt auszusehen:

:Ken Hess, Gebäude 300, 212-555-0000, 212-555-1234, [email protected]:

Einige Leute denken, weil GECOS fünf Buchstaben hat und das GECOS-Feld fünf Platzhalter hat, dass jeder Buchstabe irgendwie für diesen Teil der Informationen steht. Das tut es nicht. Dass GECOS und das Feld jeweils fünf Plätze haben, ist reiner Zufall. Ich habe auch alle möglichen Theorien darüber gesehen, wofür GECOS an diesen fünf Orten steht. Das GECOS-Feld ist auch das fünfte Feld in /etc/passwd Datei. All diese Dinge führen zu einem Schluss:Es ist über die Zeit und aus der Not heraus entstanden, es funktioniert und wurde nicht verändert. Und das ist cool bei mir. Eine Rose mit einem anderen Namen, richtig?

GECOS heute

Bei einigen Linux-Distributionen ist der adduser command ist ein symbolischer Link zu useradd . Dies gilt jedoch nicht für andere Distributionen. Bei diesen Distributionen ist der adduser Der Befehl ist eigentlich ein Perl-Skript, das Sie durch die Erstellung eines neuen Benutzerkontos führt. Nachfolgend finden Sie interessante Details zum Ausführen dieses Skripts. Ich habe diesen adduser portiert Skript einfach auf mein System übertragen. Bleiben Sie dran, um Sysadmin zu aktivieren, um einen Artikel zu erhalten, der beschreibt, wie ich das gemacht habe.

# 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

Sehen Sie, wo dieser Befehl Sie zur Eingabe der GECOS-Informationen auffordert?

Überprüfung von /etc/passwd Datei bestätigt das GECOS-Feld.

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

Alle Informationen von Jill wurden in /etc/passwd eingefügt GECOS-Feld der Datei. Da es sich um ein Perl-Skript handelt, können Sie diese Eingabeaufforderungen so anpassen, dass sie nach Ihren Wünschen gelesen werden. Ich werde meine bearbeiten, um nach E-Mail-Adressen statt nach zufälligen Informationen unter Andere zu fragen Eingabeaufforderung.

[ Möchten Sie Ihre Fähigkeiten als Systemadministrator testen? Machen Sie noch heute einen Kompetenztest. ]

Abschluss

Bezieht sich auf das GECOS-Feld einfach als Benutzerkommentar Das Feld ist teilweise korrekt, aber ich würde es eher als Benutzerinformationen betrachten Feld. Aber unabhängig davon, wie Sie oder ich darauf verweisen, soll es eine Beschreibung des Eigentümers oder Zwecks des Kontos enthalten.


Linux
  1. So listen Sie Benutzer unter Linux auf

  2. Unterschied zwischen /bin/false &/sbin/nologin

  3. Linux:Unterschied zwischen /dev/console , /dev/tty und /dev/tty0?

  4. /usr/bin vs. /usr/local/bin Unter Linux?

  5. Linux – Zusammenführen von /usr/bin und /usr/sbin in /bin (gnu/linux)?

Linux-Cut-Befehl mit praktischen Beispielen

Linux – /sbin/init existiert nicht?

Installieren Sie Binärdateien in /bin, /sbin, /usr/bin und /usr/sbin, Interaktionen mit --prefix und DESTDIR

Was bedeuten /usr/sbin, /usr/local/sbin und /usr/local/bin?

Woher weiß ich, ob ich systemd unter Linux verwende?

Sollten Websites gemäß der empfohlenen Verwendung in /var/ oder /usr/ leben?