Kurzfassung: /etc/skel ist das Standard-Skelettverzeichnis für neue Benutzer. Der Inhalt wird beim Anlegen eines Users in dessen Home kopiert, damit alle Nutzer eine konsistente Grundkonfiguration erhalten.
Beim Erstellen neuer Benutzer kopieren useradd und adduser automatisch alle Dateien und Ordner aus /etc/skel in das Home-Verzeichnis. Damit lassen sich Standard-Ordner, Shell-Konfigurationen, SSH-Templates und Dokumentationen zentral pflegen.
# Verzeichnisinhalt anzeigen ls -la /etc/skel # Typische Dateien (Distribution abhängig) # .bashrc # .profile oder .bash_profile # .bash_logout # .bash_aliases (optional) # .ssh/ (optional)
/etc/profile # Login-Shells (systemweit) /etc/bash.bashrc # Interaktive Shells (Debian/Ubuntu) /etc/profile.d/*.sh # Drop-ins für globale Shell-Einstellungen
# Benutzer mit Home-Verzeichnis anlegen sudo useradd -m -s /bin/bash alice # Alternativ (Debian/Ubuntu, interaktiv) sudo adduser bob # Home prüfen ls -la /home/alice
sudo mkdir -p /etc/skel/{bin,projects,logs,tmp,Documents,Downloads}
sudo tee /etc/skel/.bash_aliases > /dev/null <<'EOF' alias ll='ls -alF' alias la='ls -A' alias l='ls -CF' alias rm='rm -i' alias cp='cp -i' alias mv='mv -i' EOF
sudo tee -a /etc/skel/.bashrc > /dev/null <<'EOF' export EDITOR=vim export VISUAL=vim PS1='\u@\h:\w\$ ' EOF
sudo tee /etc/skel/.bash_profile > /dev/null <<'EOF' # Login-Shell: .bashrc einbinden if [ -f "$HOME/.bashrc" ]; then . "$HOME/.bashrc" fi export PATH="$HOME/bin:$HOME/.local/bin:$PATH" EOF
sudo mkdir -p /etc/skel/.ssh sudo chmod 700 /etc/skel/.ssh sudo tee /etc/skel/.ssh/config > /dev/null <<'EOF' Host * ServerAliveInterval 60 ServerAliveCountMax 3 ForwardAgent no EOF sudo chmod 600 /etc/skel/.ssh/config
sudo tee /etc/skel/.gitconfig > /dev/null <<'EOF' [user] name = Vorname Nachname email = user@example.com [core] editor = vim [alias] st = status co = checkout br = branch EOF
sudo tee /etc/skel/README.txt > /dev/null <<'EOF' Willkommen! Dieses Home-Verzeichnis wurde automatisch erstellt. Standard-Ordner: - ~/projects - ~/bin - ~/logs Bei Fragen: admin@example.com EOF
# Entwickler-Skeleton sudo mkdir -p /etc/skel.developer sudo cp -r /etc/skel/. /etc/skel.developer/ # Admin-Skeleton sudo mkdir -p /etc/skel.admin sudo cp -r /etc/skel/. /etc/skel.admin/ # Benutzer mit bestimmtem Skeleton anlegen sudo useradd -m -k /etc/skel.developer -s /bin/bash devuser
sudo useradd -m -s /bin/bash testuser ls -la /home/testuser sudo userdel -r testuser
useradd (low-level):
/etc/default/useradd-madduser (Debian/Ubuntu):
/etc/adduser.confsudo useradd -D sudo cat /etc/adduser.conf
config, keine privaten Keys
- README/Docs für neue Benutzer beilegen