it-swarm.com.de

Ab wann wird die ~ / .bashrc-Datei erstellt?

Wenn ich zum Beispiel den Befehl adduser test ausführen würde, wird die .bashrc-Datei beim Erstellen des Ausgangsverzeichnisses für den Benutzer test automatisch erstellt. 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.

20
Michael

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 _/etc/skel_ gespeichert sind. Es gibt zwei Hauptbefehle:

  • useradd ist der Back-End-Befehl, wenn Sie ihn direkt (ohne Optionen) nur als Systembenutzer verwenden (und dessen Gruppe) wird erstellt:

    _$ Sudo useradd new-user
    $ ls -la /home/new-user/
    ls: cannot access '/home/new-user/': No such file or directory
    _
    • useradd erstellt ein Ausgangsverzeichnis und füllt es mit einer Kopie von _/etc/skel_, wenn die Option _-m--create-home_ 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 Anmelde-Shell des neuen Benutzers wird der gesamte Inhalt des Verzeichnisses 'skeletal' _/etc/skel_ in das Ausgangsverzeichnis des neuen Benutzers eingefügt.

    • Ein anderes 'Skelett'-Verzeichnis kann mit der Option _-k_ _--create-home_ definiert werden.

    • Die Konfigurationsdatei dieses Befehls lautet _/etc/default/useradd_.

  • adduser ist ein benutzerfreundliches und interaktives Front-End von useradd. Dieser Befehl kopiert die Dateien standardmäßig von _/etc/skel_ in das Verzeichnis _$HOME_ des Benutzers:

    _$ Sudo adduser new-user
    Adding user `new-user' ...
    Adding new group `new-user' (1002) ...
    Adding new user `new-user' (1002) with group `new-user' ...
    Creating home directory `/home/new-user' ...
    Copying files from `/etc/skel' ...
    Enter new UNIX password:
    Retype new UNIX password:
    passwd: password updated successfully
    Changing the user information for new-user
    Enter the new value, or press ENTER for the default
            Full Name []: New User
            Room Number []:
            Work Phone []:
            Home Phone []:
            Other []:
    Is the information correct? [Y/n]
    
    $ ls -a /home/new-user/
    .   ..   .bash_logout   .bashrc   .config   examples.desktop   .profile   .Xdefaults
    _
    • Die Konfigurationsdatei dieses Befehls lautet _/etc/adduser.conf_.

    • Der Standardwert für die Anmeldeshell des neuen Benutzers wird durch die Variable _DSHELL=_ angegeben. Sie kann auch über die Option _--Shell_ angegeben werden. Unabhängig von der Anmelde-Shell des neuen Benutzers wird der gesamte Inhalt des Verzeichnisses 'skeletal' _/etc/skel_ in das Ausgangsverzeichnis des neuen Benutzers eingefügt.

    • Die Variable _SKEL=_ in dieser Datei gibt das Standardverzeichnis an, das die Benutzerdateien für das Skelett enthält.

    • Die Option _--no-create-home_ zwingt den Befehl adduser, kein Benutzerverzeichnis zu erstellen, bzw. der Inhalt des Verzeichnisses 'skeletal' wird nicht kopiert.

    • Bei einem Aufruf mit einem Argument ohne Option und der Option _--system_ fügt adduser einen Systembenutzer hinzu ... Ein Basisverzeichnis wird nach denselben Regeln wie für normale Benutzer erstellt. Der neue Systembenutzer hat die Shell _/bin/false_ (sofern nicht mit der Option _--Shell_ überschrieben) und die Anmeldungen deaktiviert. Skelettkonfigurationsdateien werden nicht kopiert. ... von der Manpage.


Wenn der Benutzer mit einem GUI-Tool wie folgt erstellt wird: User Accounts , ist das Ergebnis mit dem von identisch den Befehl adduser.


Verweise:

29
pa4080