
Ich möchte Code in eine Datei einfügen, der beim Erstellen einer neuen Sitzung für alle Benutzer auf einem Debian-System aufgerufen wird.
/etc/profile
wird nur von Anmeldesitzungen berührt.
Antwort1
Datei, die von allen Benutzern für neue Bash-Sitzungen aufgerufen wird
Wenn Sie das Kapitel überAufrufIm Handbuch erfahren Sie, dass es keine solche Datei gibt.https://linux.die.net/man/1/bash
Ich habe keine Debian-Box zur Hand, aber es könnte sein, dass Debian etwas Ähnliches macht wie RHEL/CentOS: Standardmäßig stellen diese Distributionen sowohl von /etc/skell
a als auch von ~/.bash_profile
a ~/.bashrc
in das Home-Verzeichnis des Benutzers bereit.
Wenn Bash als interaktive Anmelde-Shell aufgerufen wird, ~/.bash_profile
sollte dies geladen werden.
/etc/skel/.bash_profile
# .bash_profile
# Get the aliases and functions
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
# User specific environment and startup programs
Wenn eine interaktive Shell gestartet wird, die keine Login-Shell ist, liest und führt bash Befehle aus von~/.bashrc
Durch das Laden des ~/.bashrc
Formulars ~/.bash_profile
erhalten Sie eine Datei, die sowohl für normale als auch für Login-Sitzungen geladen wird.
/etc/skel/.bashrc
# .bashrc
# Source global definitions
if [ -f /etc/bashrc ]; then
. /etc/bashrc
fi
# User specific aliases and functions
Dies ~/.bashrc
wird wiederum global geladen /etc/bashrc
und Sie erhalten eine systemweite Datei, die sowohl für interaktive Bash-Sitzungen mit als auch ohne Anmeldung geladen wird.