Risposte:
Storicamente la shell Bourne originale / bin / sh userebbe $come prompt normale e #per il prompt dell'utente root (e userebbe csh %). Questo ha reso abbastanza facile capire se stavi funzionando come superutente o no.
# è anche il carattere di commento, quindi chiunque reinserisca ciecamente i dati non eseguirà alcun comando reale.
Shell più moderne (ad esempio ksh, bash) continuano questa distinzione di $e #sebbene sia meno importante quando è possibile impostare valori più complicati come nome utente, nome host, directory :-)
#essere il personaggio del commento impedisce a qualcuno di eseguire comandi reali se reinserisce ciecamente dati?
# reboot: rispondi ... niente, perché #è un commento.
Tradizione.
Lo standard POSIX dice (la mia enfasi):
PS1
Questa variabile viene utilizzata per i prompt interattivi. Storicamente, il "superutente" ha richiesto "#". Poiché non è necessario che i privilegi siano monolitici, è difficile definire quali privilegi debbano causare il prompt alternativo. Tuttavia, a un utente sufficientemente potente dovrebbe essere ricordato quel potere con un prompt alternativo.
Vedi anche questa risposta praticamente alla stessa domanda sul forum SuperUser.