Ich möchte einen neuen Benutzer erstellen, um einen Dienst auf dem System auszuführen, möchte aber keine /home
weiteren Konfigurationsdateien dafür haben. Als ob es einen Benutzer für postgres gibt, der aber kein /home
Verzeichnis hat.
users
home-directory
Owais Lone
quelle
quelle
Antworten:
Standardmäßig erstellt der Befehl useradd keine Home-Verzeichnisse. Für einen Daemon empfehle ich jedoch, die Systemoption zu verwenden und die Shell in eine nicht vorhandene zu ändern, damit sich niemand mit diesem Konto anmelden kann (z. B. in ssh):
Sie können alle Optionen mit
man useradd
und anzeigen,man groupadd
wenn Sie auch eine Gruppe für den Benutzer erstellen möchten.quelle
/sbin/nologin
als Login-Shell, obwohl die Verwendung/bin/false
keinen Unterschied macht.Probieren Sie es aus
adduser --system --no-create-home USERNAME
oder schauen Sie sich einfach an,man adduser
was für ein " freundlicheres Front-End für die Low-Level-Tools wie useradd ... " steht.quelle
adduser
vs. istuseradd
, und das Ausführen des Befehlsuseradd
mit diesen Optionen führte zu keinem Fehler, sondern erstellte das Konto mit Shell/bin/bash
. "Käufer aufgepasst".Ich brauchte etwas Ähnliches - einen neuen Benutzer ohne Anmeldeberechtigung und an einen Systemdienst gebunden. Durch die Antwort von Clausi wird jedoch ein Benutzer mit der primären Gruppe 'nogroup' erstellt, was nicht wirklich wünschenswert war.
adduser --system --no-create-home --group USERNAME
erstellt eine Systemgruppe mit demselben Namen wie der Benutzer und ordnet sie dem Benutzer als primäre Gruppe zu. Dies kann dann mitgroups USERNAME
demid USERNAME
Befehl oder überprüft werden .quelle
Zum Hinzufügen eines Benutzers ohne Basisverzeichnis lauten die Befehle:
oder
oder
oder
quelle
versuche diesen Befehl:
sudo useradd vivek
Dadurch wird ein Benutzer erstellt, ohne Ihren Basisordner unter zu erstellen
/home/vivek
quelle
/home/vivek
wird das automatisch erstellt.