Debian 10 : déclaration path étrange?

Bonjour à tous,
mon ~/.profile (que je n’ai pas modifié depuis une installation récente de Debian 10) contient les deux lignes suivantes qui m’ont intrigué :

# set PATH so it includes user's private bin if it exists
if [ -d "$HOME/bin" ] ; then
    PATH="$HOME/bin:$PATH"
fi

# set PATH so it includes user's private bin if it exists
if [ -d "$HOME/.local/bin" ] ; then
    PATH="$HOME/.local/bin:$PATH"
fi

N’est-il pas curieux de placer les paths utilisateurs AVANT le path système ?
Si d’aventure un script frauduleux appelé "ls"est installé dans $HOME/bin, ne sera-t-il pas exécuté par inadvertance ? Il me semblait que c’était une bonne pratique de rajouter les paths utilisateurs à la fin de la variable PATH ?

Merci d’avance et bonne journée :slight_smile:

Donut

Bonjour,

Si d’aventure j’ai compilé ma propre version de ls, qui est vachement mieux, dans ~/bin, ne serait-il pas préférable que ce soit cette version qui soit lancée plutôt que /usr/bin/ls ?

C’est une question de préférences ou de postulats, je pense.
Si on crée un répertoire bin personnel dans son $HOME, on peut postuler que c’est parce qu’on sait ce qu’on fait, et qu’on a installé dans son répertoire personnel une autre variante d’un binaire comme ls, en toute connaissance de cause.

Une autre façon de faire serait de placer effectivement les ~/.bin à la fin du $PATH (en forçant ce comportement de façon globale, via /etc/profile par exemple), quitte à ce que les utilisateurs de la machine ajoutent des aliases personnels à leur ~/.bashrc (alias ls='~/bin/ls')

2 J'aimes

Super, merci pour vos retours :slight_smile: