linux中su与su -命令的区别
2008-05-08 16:28
|
在我的fc6系统下用普通用户登录,然后用su命令切换到超级用户,再输入ifconfig命令,报错:command not find。而如果用su -命令切换到超级用户,再输入ifconfig命令则能成功执行。这其中涉及的就是su命令与su -命令的区别,man su得到的帮助文档如下:
-, -l, --login make the shell a login shell 翻译过来的意思如下: -.-l或--login 改变身份时,也同时变更工作目录,以及HOME,SHELL,USER,LOGNAME。此外,也会变更PATH变量。 说简单点就是用su命令不会改变当前工作目录以及HOME,SHELL,USER,LOGNAME。此外,也会变更PATH变量,而用su -命令则默认改变成root用户了。打个比方: 在普通用户下输入: $pwd /home/mgqw (当前用户目录) $su ****** (输入密码) #pwd (再次查看路径) /home/mgqw (还是当前用户目录) 但是如果换成su -的话结果如下: $pwd /home/mgqw (当前用户目录) $su - ****** (输入密码) #pwd (再次查看路径) /root (切换到超级用户目录) |
本文探讨了Linux系统中su与su-命令的区别。su命令用于切换用户身份,但不改变环境变量,如HOME、SHELL等。而su-命令在切换用户的同时,还会更改这些环境变量至目标用户的配置,这通常意味着会加载一个全新的登录Shell。
772

被折叠的 条评论
为什么被折叠?



