Perché root non ha / usr / local nel percorso?


19

Ho notato che il percorso predefinito per root sul mio VM e server non include / usr / local / bin

sudo -s  
echo $PATH
/sbin:/bin:/usr/sbin:/usr/bin

Considerando che gli utenti normali sul server hanno / usr / local / bin

/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/sbin:/home/sowen/bin

Perché root non ha bisogno di / usr / local nel percorso?

Dov'è definito il percorso predefinito per un utente?


Su quale sistema operativo è? La maggior parte ha /usr/local/sbine /usr/local/binsul percorso predefinito di root, ma ci sono eccezioni.
Gilles 'SO- smetti di essere malvagio' il

Ho appena riscontrato una strana differenza tra due VM RHEL 6.4 (una con /usr/local/bine una senza). E quello con /usr/local/bin, non riuscivo a trovare dove fosse ambientato.
Batfastad,

Risposte:


19

Perché non è impostato nei relativi file di avvio della shell per root.

Tradizionalmente, /usr/localè stato utilizzato per software non ufficiale installato localmente (spesso per ignorare le versioni "ufficiali" buggy / interrotte / limitate; un amico ha scherzato sul fatto che il primo passo all'arrivo di un nuovo Sun fosse GNU > /usr/local). Come rootè onnipotente, qualsiasi errore o design errato nei programmi che esegue può essere fatale. È ovvio che l'esecuzione, ad esempio, di una versione locale e sperimentale di makeroot dovrebbe essere trattata con cautela. Meglio che faccia il passo in più di dare un percorso esplicito.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.