su - <user>,su <user>
sudo su -<user>,sudo su <user>
1)先看一下带-和不带-的区别
带-:切换用户的同时,进入到该用户的的home目录
不带-:仅仅是切换用户,目录不变,还是当前用户所在目录
除此之外还有一个重要的区别就是
带-:以Login shell的模式登陆
不带-:以非login shell的模式登陆
[root@localhost ~]# grep loginbash ~/.bash_profile
loginbash="loginbash"
export loginbash
[root@localhost ~]# grep non_loginbash ~/.bashrc
non_loginbash="non_loginbash"
export non_loginbash
[root@localhost ~]# exit
ログアウト
[sabopeusr0-admin@localhost ~]$ sudo su
[root@localhost sabopeusr0]# echo $loginbash
[root@localhost sabopeusr0]# echo $non_loginbash
non_loginbash
[root@localhost sabopeusr0]#
[sabopeusr0-admin@localhost ~]$ sudo su -
最終ログイン: 2017/07/28 (金) 14:31:50 JST日時 pts/2
[root@localhost ~]# echo $loginbash
loginbash
[root@localhost ~]# echo $non_loginbash
non_loginbash
[root@localhost ~]#
2) su=su root,su - = su - root,su=su root
sudo su=sudo su root,sudo su - = sudo su - root
3)su <user>和sudo su <user>的区别
su <user>:将当前用户,切换成<user>,输入的密码是<user>的密码
sudo su <user>:以root的身份将当前用户切换成<user>,输入的是当前用户的密码