首先,#和$ 符号是命令提示符,# 表示 root 用户,$ 表示非 root 用户。
想要获得root特权,可以使用以下命令之一:
sudo [需要root权限的命令] #当然你得先输入root密码
su #直接切换到root用户,也要输入密码
su - #多了一个横杆"-",会切换到root帐号和root工作环境,也要输入密码
其实获得最正规的 # 命令行状态,是重新用 root 登录,不过部分系统禁止 root 直接登录的。必须用 su 、sudo 才行。
su命令和su -命令最大的本质区别就是:前者只是切换了root身份,但Shell环境仍然是普通用户的Shell;而后者连用户和Shell环境一起切换成root身份了。只有切换了Shell环境才不会出现PATH环境变量错误。su切换成root用户以后,pwd一下,发现工作目录仍然是普通用户的工作目录;而用su -命令切换以后,工作目录变成root的工作目录了。
su是在用户间切换,可以是从普通用户切换到root用户,也可以是从root用户切换到普通用户。
如果当前是root用户,那么切换成普通用户test用以下命令:
su - test
如果要切换回root用户,那么用以下命令:
su 或 su - #用户名root可以省略不写。