Wenn ich zum Beispiel den Befehl ausführen würde adduser test
, wird die .bashrc-Datei beim Erstellen des Basisverzeichnisses für den Benutzer automatisch erstellt test
? Wenn es nicht bei der Benutzererstellung erstellt wird, unter welchen Bedingungen wird es erstellt?
Auch wenn ich eine .bashrc-Datei zum Ausgangsverzeichnis eines Benutzers hinzufüge, wird diese vom Betriebssystem überschrieben?
Danke im Voraus.
command-line
bash
bashrc
Michael
quelle
quelle
Antworten:
In den meisten Fällen werden die anfänglichen Benutzerdateien (einschließlich
.bashrc
) erstellt, wenn der Benutzer erstellt wird. Sie sind Kopien der Dateien, die im Verzeichnis 'skeletal' mit dem Namen gespeichert sind/etc/skel
. Es gibt zwei Hauptbefehle:useradd
ist der Back-End-Befehl, wenn Sie ihn direkt (ohne Optionen) verwenden, wird nur ein Systembenutzer (und seine Gruppe) erstellt:useradd
erstellt ein Ausgangsverzeichnis und füllt es mit einer Kopie von,/etc/skel
wenn die-m
--create-home
Option angegeben ist. Danke für diesen Kommentar an @jwodder.Die Option
-s
--shell
ändert den Namen der Anmeldeshell des neuen Benutzers. Unabhängig von der Anmeldeshell des neuen Benutzers wird der gesamte Inhalt des Verzeichnisses 'skeletal'/etc/skel
in das Ausgangsverzeichnis des neuen Benutzers eingefügt.Mit der
-k
--create-home
Option kann ein anderes 'Skelett'-Verzeichnis definiert werden .Die Konfigurationsdatei dieses Befehls lautet
/etc/default/useradd
.adduser
ist ein benutzerfreundliches und interaktives Front-End vonuseradd
. Dieser Befehl kopiert die Dateien standardmäßig/etc/skel
in das Benutzerverzeichnis$HOME
:Die Konfigurationsdatei dieses Befehls lautet
/etc/adduser.conf
.Der Standardwert für die Anmeldeshell des neuen Benutzers wird durch die Variable festgelegt
DSHELL=
. Dies kann auch über die Option festgelegt werden--shell
. Unabhängig von der Anmeldeshell des neuen Benutzers wird der gesamte Inhalt des Verzeichnisses 'skeletal'/etc/skel
in das Ausgangsverzeichnis des neuen Benutzers eingefügt.Die
SKEL=
Variable in dieser Datei gibt das Standardverzeichnis an, in dem sich die Benutzerdateien befinden.Die Option
--no-create-home
zwingt den Befehladduser
, kein Benutzer- Ausgangsverzeichnis zu erstellen, bzw. der Inhalt des Verzeichnisses 'skeletal' wird nicht kopiert.Bei einem Aufruf mit einem Argument ohne Option und der
--system
Optionadduser
wird ein Systembenutzer hinzugefügt ... Ein Basisverzeichnis wird nach denselben Regeln wie für normale Benutzer erstellt. Der neue Systembenutzer verfügt über die Shell/bin/false
(sofern diese nicht mit der--shell
Option überschrieben wird ) und hat Anmeldungen deaktiviert. Skelettkonfigurationsdateien werden nicht kopiert. ... von der Manualseite.Wenn der Benutzer mit einem GUI-Tool wie erstellt wird
User Accounts
, ist das Ergebnis mit dem des Befehls identischadduser
.Verweise:
Was ist der Unterschied zwischen adduser und useradd?
Was ist der Unterschied zwischen "adduser" und "useradd"?
Ausgangsverzeichnis wird nicht erstellt
AddUsersHowto - Ubuntu Documentation Community Wiki
Was ist der Befehl * nix, um die Standardanmeldeshell eines Benutzers anzuzeigen?
Terminalbefehl zum Auflisten der verfügbaren Shells
quelle
useradd
erstellt auch ein Basisverzeichnis und füllt es mit einer Kopie von,/etc/skel
wenn die-m
Option angegeben ist.useradd
im Befehl weiterhin verwendet . sein war das dennadduser
?adduser
, nicht wahr?