linuxsu命令原理 linux sud

Linux下 su命令与su - 命令有什么区别?Linux下 su命令与su - 命令linuxsu命令原理的区别linuxsu命令原理:
一、切换root身份不同
1、su命令:su只是切换了root身份linuxsu命令原理 , 但Shell环境仍然是普通用户的Shelllinuxsu命令原理;而su -连用户和Shell环境一起切换成root身份了 。只有切换了Shell环境才不会出现PATH环境变量错误,报command not found的错误 。
2、su - 命令:su切换成root用户以后,pwd一下 , 发现工作目录仍然是普通用户的工作目录;而用su -命令切换以后,工作目录变成root的工作目录了 。
二、采用su deploy命令后,取目标用户不同
1、su命令:su不会读取目标用户的环境配置文件,如图 。
2、su - 命令:su - 读取目标用户的环境配置文件 , 如图 。
综上总结:有“-”和无“-”各自的环境变量不同 。
三、service命令
1、su命令:使用 su root 切换到root用户后 , 不可以使用service命令;
2、su - 命令:使用 su - 后,就可以使用service命令了 。
四、用echo $PATH命令后,环境量不同
1、su命令:环境量变为usr 。
2、su - 命令:环境量变为oracle 。
关于Linux中su的命令su命令功能说明linuxsu命令原理:切换用户身份 。
语法:su [-flmp][--help][--version][-][-c 指令][-s
][用户帐号]
补充说明:su可让用户暂时变更登入linuxsu命令原理的身份 。变更时须输入所要变更的用户帐号与密码 。
参数:
 -c指令或--command=指令执行完指定的指令后linuxsu命令原理,即恢复原来的身份 。
 -f或--fast适用于csh与tsch , 使shell不用去读取启动文件 。
 -.-l或--login改变身份时 , 也同时变更工作目录 , 以及HOME,SHELL,USER,LOGNAME 。此外,也会变更PATH变量 。
 -m,-p或--preserve-environment变更身份时,不要变更环境变量 。
 -s
或--shell=
指定要执行的shell 。
 --help显示帮助 。
 --version显示版本信息 。
 [用户帐号]指定要变更的用户 。若不指定此参数,则预设变更为root 。
示例:
su -c ls root#变更帐号为 root 并在执行 ls 指令后退出变回原使用者 。
su root -f#变更帐号为 root 并传入 -f 参数给新执行的 shell 。
su - test#变更帐号为 test 并改变工作目录至 test 的家目录(home dir) 。
linux中 su - 的含义,及其作用是什么?su并不是真正地切换用户,它只是改变身份的一个命令而已,你可以把它当做一种嵌套,当你以root身份执行su yph命令时,下面的命令便会以yph用户的身份执行,但是值得注意的一点是当前的环境变量、工作目录等全都没有改变,也就是说仍在root使用的环境变量中,此时执行pwd查看当前工作目录应该会输出“/root”,当再以yph身份执行su - root命令后,你便又是以root身份执行命令了,可是此时的情况应该是:
root环境/yph身份/root身份
即当你输入logout时便会返回到:“/root环境/ypt身份”下,在此环境再输入logout则可能会显示“bash: logout: not login shell: use `exit'” , 即当前yph用户所用的shell中没有logout,因为logout命令需要以root身份执行,此时正确的做法是执行exit命令 , 便会到退出到root下,即为刚进入root用户时的状态
Linux基础命令和原理总结作为一个程序员或者测试开发人员 , linuxsu命令原理我们在进行项目部署和运维时,经常会用到一些linux命令,可是这些命令老是忘记,每次用到的时候都要去谷歌百度,很是麻烦linuxsu命令原理!这不 , 为了自己使用方便,对常见的linux命令, SHELL, VIM, Linux性能调优和linux kernel的总结,以便在用到时能够快速地找到相关命令 , 同时有需要的朋友也可以参考搜藏该篇文章!文章对讲到的每个命令都有详细的参数解释,并且给出一些常用例子 , 因此也非常适合用来学习!

推荐阅读