linux切换用户

su

1
su - username

会切换到username用户,同时切换到username用户的环境变量

1
su username

会切换到username用户,但是不会切换到username用户的环境变量
使用 ssh username@ip 也可以切换到username用户,同时会切换到username用户的环境变量

1
su

不带参数,会切换到root用户,但是不会切换到root用户的环境变量,会导致环境变量不一致

  • 如何切换到root用户的环境变量
1
su -

sudo

1
sudo -u username command

会以username用户的身份执行command命令,不会切换到username用户的环境变量

su和sudo的区别

区别主要在于权限和环境变量的切换