adduser fügt sinnlose Kommas in /etc/passwd ein

Warum Debian und/oder eine seiner Spielarten? Was muss ich vorher wissen? Wo geht es nach der Installation weiter?
Antworten
Benutzeravatar
hupfdule
Beiträge: 1864
Registriert: 09.12.2002 15:04:37
Wohnort: Berlin
Kontaktdaten:

adduser fügt sinnlose Kommas in /etc/passwd ein

Beitrag von hupfdule » 20.03.2005 15:06:07

Hi, seit einiger Zeit scheint beim Anlegen eines Benutzers per adduser folgender Eintrag in /etc/passwd angelegt zu werden:
poiu:x:1004:1004:Test Benutzer,,,:/home/poiu:/bin/bash
Nun, was mich stört sind die 3 Kommas hinter dem Benutzernamen. Diese erscheinen, wenn man die von adduser zusätzlich erfragten Informationen einfach leer lässt. Ich bin mir sicher, dass das erst seit kurzem der Fall ist. Bei einem frisch installierten Sarge-Server passiert es jedenfalls.

Nun meine Fragen:

1. Warum ist das der Fall? War das beabsichtigt? Ist es möglicherweise sogar ein Bug?
2. Wie kann man das verhindern ohne jedes mal den Eintrag per Hand verändern zu müssen.
Zuletzt geändert von hupfdule am 20.03.2005 15:52:18, insgesamt 1-mal geändert.

Benutzeravatar
Savar
Beiträge: 7174
Registriert: 30.07.2004 09:28:58
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Berlin

Beitrag von Savar » 20.03.2005 15:20:17

erstens: mittels "adduser" war das schon immer so (soweit ich mich daran erinnern kann.. also seit Sarge)
zweitens: es ist nicht wichtig aber definitiv kein Bug
drittens: verwende "useradd" dann ist es weniger komfortabel aber dafür hast du keine Kommatas
viertens: siehe "man 5 passwd" da sollen im "comment field" eigentlich nicht name und adresse eingetragen werden, aber scheinbar werden die ursprünglich angedachten informationen nicht benutzt und daher werden sie halt anders verwendet und das mit dem Komma ist dann richtig

bitte nicht bös auffassen.. wollt nur nicht zuviel schreiben, daher kurz, knapp und daher wahrscheinlich zu hart klingend
MODVOICE/MYVOICE
Debianforum Verhaltensregeln
Log Dateien? -> NoPaste

Benutzeravatar
hupfdule
Beiträge: 1864
Registriert: 09.12.2002 15:04:37
Wohnort: Berlin
Kontaktdaten:

adduser fügt sinnlose Kommas in /etc/passd ein

Beitrag von hupfdule » 20.03.2005 15:36:43

Savar hat geschrieben:erstens: mittels "adduser" war das schon immer so (soweit ich mich daran erinnern kann.. also seit Sarge)
Ich bilde mir ein, dass das vor sarge nicht so war. Kann mich da natürlich auch täuschen
zweitens: es ist nicht wichtig aber definitiv kein Bug
Woran machst du das fest?
drittens: verwende "useradd" dann ist es weniger komfortabel aber dafür hast du keine Kommatas
Das wollte ich vermeiden. Ich möchte weiterhin adduser benutzen
viertens: siehe "man 5 passwd" da sollen im "comment field" eigentlich nicht name und adresse eingetragen werden, aber scheinbar werden die ursprünglich angedachten informationen nicht benutzt und daher werden sie halt anders verwendet und das mit dem Komma ist dann richtig
Dass die Kommas richtig sind, würde ich so nicht unbedingt sagen, da sie hier nichts abtrennen. Meines Erachtens nach sollten sie nur erscheinen, wenn die entsprechenden Daten auch angegeben werden.
bitte nicht bös auffassen.. wollt nur nicht zuviel schreiben, daher kurz, knapp und daher wahrscheinlich zu hart klingend
Allerdings ;-)

Benutzeravatar
Savar
Beiträge: 7174
Registriert: 30.07.2004 09:28:58
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Berlin

Beitrag von Savar » 20.03.2005 15:53:33

also nochmal zur "man 5 passwd"

Login name

Optional encrypted password

Numerical user ID

Numerical group ID

User name or comment field

User home directory

User command interpreter

-----
The comment field is used by various system utilities, such as finger(1). Three
additional values may be present in the comment field. They are

pri= - set initial value of nice

umask= - set initial value of umask

ulimit= - set initial value of ulimit
für mich heißt das, dass es sowohl ein Namensfeld als auch ein Kommentar Feld sein kann, in denen Werte Kommasepariert eingetragen werden können.. und damit halt klar ist, dass du beim Namen keine weiteren Informationen angegeben hast (wie Adresse etc.) werden einfach Kommata gesetzt. Dadurch kriegen Scripte/Tools die darüber scannen und beim Komma teilen halt leere Werte an den entsprechenden stellen.

Was vor Sarge war, weiß ich nicht, und warum sollte es ein Bug sein? Es ist einfach so, dass Debian mehrere Informationen über den User dort kommasepariert einträgt (btw. ist bei uns auf Arbeit unter Solaris 8 genauso.. da kommt dann Abteilung, Telefonnummer usw. rein).

Um dein Problem zu lösen:

man adduser

-->
--gecos GECOS
Set the gecos field for the new entry generated. adduser will not ask
for finger information if this option is given.
weiß aber nicht ob er dann die Kommata rauslässt oder einfach nur wieder ,,,, macht.. die Frage ist auch.. wieso störts dich?
MODVOICE/MYVOICE
Debianforum Verhaltensregeln
Log Dateien? -> NoPaste

Benutzeravatar
hupfdule
Beiträge: 1864
Registriert: 09.12.2002 15:04:37
Wohnort: Berlin
Kontaktdaten:

Beitrag von hupfdule » 20.03.2005 16:45:03

Savar hat geschrieben:für mich heißt das, dass es sowohl ein Namensfeld als auch ein Kommentar Feld sein kann, in denen Werte Kommasepariert eingetragen werden können.. und damit halt klar ist, dass du beim Namen keine weiteren Informationen angegeben hast (wie Adresse etc.) werden einfach Kommata gesetzt. Dadurch kriegen Scripte/Tools die darüber scannen und beim Komma teilen halt leere Werte an den entsprechenden stellen.
Ah, dann habe ich das missverstanden. Ich dachte, es enthält entweder den Namen und zusätzliche Infos oder diese drei zusätzlichen Angaben für finger.
Was vor Sarge war, weiß ich nicht,
In dem Falle scheine ich mir das nur eingebildet zu haben, dass das mal anders war.
und warum sollte es ein Bug sein?
Wenn dieses Feld quasi free-form wäre würde ich erwarten, dass nicht vorhandene Angaben nicht durch ein Komma getrennt würde, sondern dieses Komma auch entfiele.

Danke dir für die Erklärung.

Benutzeravatar
pdreker
Beiträge: 8298
Registriert: 29.07.2002 21:53:30
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Nürnberg

Beitrag von pdreker » 21.03.2005 12:17:01

Es hat sich einfach als "Pseudo Standard" durchgesetzt (schon seeeehr lange), dass man in dieses Comment Field, was eigentlich Free Form ist, die sog. GECOS Daten einträgt, wie Realname, Zimmernr. Adresse usw. Diese GECOS Infos sind genormt, und werden durch Kommata separiert. Es gibt eine ganze Reihe Programme, die hier genau das mit Kommata separierte Format erwarten, weshalb man die Kommas normalerweise hinschreibt, auch wenn man das Feld leer lässt, um diese Programme nicht zu verwirren...

Patrick
Definitely not a bot...
Jabber: pdreker@debianforum.de

dakkar
Beiträge: 135
Registriert: 29.06.2004 19:44:44

Beitrag von dakkar » 01.04.2005 09:00:16

vor allem brauchst du die kommas, wenn du irgendwelche scripte hast, die mit de rpasswd arbeiten und du auf die felder zugriefen willst: da du bei cut zB die feldanzahl angeben musst, wuerdest du das ohne diese leerkommas unmoegich machen

Antworten