linux中su与sudo的区别

发布时间:2019-10-12编辑:脚本学堂
linux中在当前用户切换其他用户,需要su命令;

linux中在当前用户切换其他用户,需要su命令;
su        [-lcm] [username]
-  : 当前非root用户想切换身份成为root,而且使用root的环境设置参数文件,如:/root/.bash_profile;
-l  : 后面接用户,并使用变换身份者的所有环境设置文件;
-m : 跟-p一样,切换后但使用前任用户的环境设置文件;
-c :表示仅仅进行一次命令,后面接命令;

再来看sudo命令:
root用户由于拥有全部权限,而且某些重要命令或者权限一般用户没有,所以必须用su来切换,但是如果切换为root必须要提供密码,但是我们不想让其他人知道root密码还有而又可以执行root的权限呢?这时候就要用到sudo了,它的意义是在一般用户环境下运行或者进入某些只有root能干的命令或目录,但是必须要该用户得到root的授权,授权文件为:/etc/sudoers ,该用户必须用在该文件里面得到授权才能使用sudo进行它想干的活,一般编辑/etc/sudoers,我们在root下用visudo来进行编辑,也可以用vi但是用vi编辑如果输入有错误,可能会造成无法启用sudo的后果,所有一般建议用visudo去编辑/etc/sudoers这个文件。