su命令和su -命令最大的本质区别就是:前者只是切换了root身份,但Shell环境仍然是普通用户的Shell;而后者连用户和Shell环境一起切换成root身份了。
1 [richmail@portal root]$ 2 [richmail@portal root]$ echo $PATH 3 /usr/lib64/qt-3.3/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin 4 [richmail@portal root]$ su richmail 5 Password: 6 [richmail@portal root]$ echo $PATH 7 /usr/lib64/qt-3.3/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin 8 [richmail@portal root]$ 9 [richmail@portal root]$ su - richmail 10 Password: 11 [richmail@portal ~]$ echo $PATH 12 /usr/lib64/qt-3.3/bin:/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/sbin:/home/richmail/bin