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.
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.
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):
sudo useradd -r -s /bin/false USERNAME
Sie können alle Optionen mit man useradd
und anzeigen, man groupadd
wenn Sie auch eine Gruppe für den Benutzer erstellen möchten.
/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.
adduser
vs. ist useradd
, und das Ausführen des Befehls useradd
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 mit groups USERNAME
dem id USERNAME
Befehl oder überprüft werden .
Zum Hinzufügen eines Benutzers ohne Basisverzeichnis lauten die Befehle:
useradd -M username
oder
useradd --no-create-home username
oder
adduser -M username
oder
adduser --no-create-home username
versuche diesen Befehl:
sudo useradd vivek
Dadurch wird ein Benutzer erstellt, ohne Ihren Basisordner unter zu erstellen /home/vivek
/home/vivek
wird das automatisch erstellt.