[CentOS] Setting PS1 for ordinary users

Wed Oct 10 19:48:23 UTC 2012
James B. Byrne <byrnejb at harte-lyne.ca>

To clarify the situation.  The ONLY difference in the shell setup for
both root and an ordinary user is the name.  As shown below they bith
use the same shell, they both have exactly the same contents in
.bashrc and .bash_profile.  The file .profile exists for neither.  And
yet somehow they end up with totally different PS1 values.

How this happens I wish to discover.  Where is root getting its PS1
value set and why is root's prompt surrounded by []?  The ordinary
user's PS1 value is that of the bash default which indicates to me
that it is not being set anywhere.

There is a good deal of code given over to setting the PS1 value in
/etc/bashrc but it seems to depend upon PS1 being already set.  I can
find no reference to PS1 in any file in/root and the oly reference in
/etc/profile.d is in colorls.sh which seems to be testing PS1 for a
zero length string (i.e unset value).

Where is PS1 actually being set?

sh-4.1$ which sh
sh-4.1$ su -l
[root at vhost04 ~]# which sh
[root at vhost04 ~]# diff .bashrc /home/byrnejb/.bashrc
[root at vhost04 ~]# diff .bash_profile /home/byrnejb/.bash_profile
[root at vhost04 ~]# ll .profile
ls: cannot access .profile: No such file or directory
[root at vhost04 ~]# ll /home/byrnejb/.profile
ls: cannot access /home/byrnejb/.profile: No such file or directory
[root at vhost04 ~]#
[root at vhost04 ~]# echo $PS1
[\u@\h \W]\$
[root at vhost04 ~]# exit
sh-4.1$ echo $PS1

***          E-Mail is NOT a SECURE channel          ***
James B. Byrne                mailto:ByrneJB at Harte-Lyne.ca
Harte & Lyne Limited          http://www.harte-lyne.ca
9 Brockley Drive              vox: +1 905 561 1241
Hamilton, Ontario             fax: +1 905 561 0757
Canada  L8E 3C3