Skip to main content

Autre

Fichier /etc/profile

Le fichier /etc/profile est un fichier de configuration système présent sur les systèmes Linux, en particulier ceux utilisant le shell Bash comme interpréteur de commandes. Ce fichier est exécuté lorsqu'un utilisateur se connecte au système, fournissant ainsi des paramètres et des variables d'environnement par défaut pour toutes les sessions interactives.

Voici une présentation générale de son rôle et de son contenu typique :

  1. Rôle :

    • Le fichier /etc/profile est utilisé pour initialiser les paramètres d'environnement globaux pour tous les utilisateurs du système au moment de la connexion.
    • Il est utilisé pour définir des variables d'environnement importantes, des chemins d'accès par défaut et d'autres configurations système qui doivent être disponibles pour tous les utilisateurs.
  2. Contenu typique :

    • Définition de variables d'environnement : Le fichier /etc/profile peut contenir des lignes qui définissent des variables d'environnement telles que PATH, LANG, LC_ALL, etc.
    • Configuration de variables d'initialisation : Il peut également contenir des lignes de configuration pour définir des paramètres spécifiques, comme la configuration de l'invite de commandes (PS1), les paramètres de langue (LANG), ou d'autres variables personnalisées.
    • Inclusion d'autres fichiers de configuration : Il est courant que le fichier /etc/profile inclue d'autres fichiers de configuration situés dans le répertoire /etc/profile.d/. Cela permet d'organiser la configuration en fragments individuels et de rendre le fichier principal plus facile à maintenir.
  3. Utilisation :

    • Le contenu du fichier /etc/profile est exécuté lors de l'ouverture d'une session interactive par un utilisateur, que ce soit via une connexion SSH, un terminal virtuel, ou une session graphique.
    • Les variables et les configurations définies dans ce fichier seront disponibles pour toutes les commandes exécutées par l'utilisateur dans cette session, ainsi que pour tous les scripts et programmes lancés par l'utilisateur.
  4. Personnalisation :

    • Les administrateurs système peuvent personnaliser le fichier /etc/profile en fonction des besoins spécifiques de leur environnement, en ajoutant, en supprimant ou en modifiant des variables d'environnement et des configurations système selon les politiques de l'organisation.

En résumé, le fichier /etc/profile joue un rôle important dans la configuration de l'environnement système pour les sessions interactives des utilisateurs sur un système Linux, en fournissant des paramètres et des variables d'environnement par défaut pour toutes les sessions d'utilisateur.

Voici la version finale du fichier /etc/profile utilisé dans ma version Edubuntu :

# /etc/profile: system-wide .profile file for the Bourne shell (sh(1))
# and Bourne compatible shells (bash(1), ksh(1), ash(1), ...).

if [ "${PS1-}" ]; then
  if [ "${BASH-}" ] && [ "$BASH" != "/bin/sh" ]; then
    # The file bash.bashrc already sets the default PS1.
    # PS1='\h:\w\$ '
    if [ -f /etc/bash.bashrc ]; then
      . /etc/bash.bashrc
    fi
  else
    if [ "$(id -u)" -eq 0 ]; then
      PS1='# '
    else
      PS1='$ '
    fi
  fi
fi

if [ -d /etc/profile.d ]; then
  for i in /etc/profile.d/*.sh; do
    if [ -r $i ]; then
      . $i
    fi
  done
  unset i
fi
groupe=$(groups)

if [[ $groupe = "Enseignants" ]];
then
        sshfs mntenseignants@192.168.1.1:/Serveur ~/Serveur -o IdentityFile=~/.ssh/Montage-Profs -o StrictHostKeyChecking=accept-new
        cp -r ~/.modele/prof ~/.face
        cp -r ~/.modele/prof ~/.face.icon
else
        sshfs mnteleve@192.168.1.1:/Serveur ~/Serveur -o IdentityFile=~/.ssh/Montage-Eleves -o StrictHostKeyChecking=accept-new
        cp -r ~/.modele/eleve ~/.face
        cp -r ~/.modele/eleve ~/.face.icon
fi

sed -i s/\$utilisateur/$USER/g ~/.local/share/user-places.xbel