
Dieser Benutzer wurde mit diesem Befehl erstellt:
sudo adduser --system --home=/opt/user --group user
Aber jetzt möchte ich, dass sich dieser Benutzer anmelden kann. Ich kann dieser Benutzer werden sudo
, indem ich , möchte mich aber auch direkt mit einem Passwort anmelden. Ich habe es mit diesem Befehl versucht:
sudo passwd user
Ich kann ein Passwort für den Benutzer hinzufügen. Wenn ich versuche, mich anzumelden, erfolgt die Anmeldung, aber das System wird sofort beendet.
Antwort1
Sie können sich nicht als anmelden, user
da es sich um ein Systemkonto handelt, das durch die --system
Option angegeben wird. Systemkonten sind für Daemons oder Dienste, nicht für menschliche Benutzer, und werden daher /bin/false
für die Login-Shell angegeben. Wenn Sie eingeben grep '^user' /etc/passwd
, erhalten Sie etwa Folgendes:
user:x:117:123::/opt/user:/bin/false
Um user
die Anmeldung zu ermöglichen, können Sie usermod verwenden, um die Anmelde-Shell in Bash zu ändern:
usermod -s /bin/bash user
Alternativ können Sie auch /etc/passwd
manuell bearbeiten. Möglicherweise möchten Sie auch einige andere Änderungen an user
UID, GID und dem Speicherort des Home-Verzeichnisses vornehmen.
Antwort2
Es kann sein, dass der Benutzer ohne das Flag -m erstellt wurde.
-r, --system
Create a system account.
System users will be created with no aging information in /etc/shadow, and their numeric identifiers are choosen in the SYS_UID_MIN-SYS_UID_MAX range, defined in /etc/login.defs, instead of UID_MIN-UID_MAX (and their GID counterparts for the creation of groups).
Note that useradd will not create a home directory for such an user, regardless of the default setting in /etc/login.defs (CREATE_HOME). You have to specify the -m options if you want a home directory for a system account to be created.
-m, --create-home
Create the user's home directory if it does not exist. The files and directories contained in the skeleton directory (which can be defined with the -k option) will be copied to the home directory.
useradd will create the home directory unless CREATE_HOME in /etc/login.defs is set to no.
Bearbeiten: Siehe auchDasAntwort auf eine andere Frage.
Antwort3
klingt, als wäre der Benutzer gesperrt.
usermod -U user
Beachten Sie auch /etc/shadow
, dass die Zeile mit dem Benutzer folgendermaßen beginnen muss
user:$6$SALT...
Wenn die Zeile
user:!!:..
user:*:...
dann wird das Konto gesperrt.