首页 > 代码库 > Linux实际操作中命令 su 与 sudo 的区别
Linux实际操作中命令 su 与 sudo 的区别
------------------------------------------------------------------------------------------------
首先我先做了一些更改操作:
换到root用户的操作=>
sudo su
输入当前用户的密码:
******
修改root密码的操作=>
passwd 123456 /* root密码已改为123456 */
-----------------------@author chenwei <www.chenwei.ws>-----------------------------
[ 这部分讲一下区别 ]
1.使用su命令是临时切换root用户身份:
{
条件:普通用户需要知道root密码。
存在问题:不安全。
用法:su 参数 - 用户名
注:su加参数 - ,表示连带用户的环境一同切换,
(切换环境变量什么意思?就是不加 - 时,我这里显示的是 root@david-pc:/home/weichen# ; 加了之后就是 root@david-pc:~#)
当用户名为root时可省略root。
}
如何切换:
su -
密码:123456
2.sudo是授权许可使用的su(即受限制的su):
{
普通用户运行命令:more /etc/shadow/etc/shadow,会提示权限不够。
如果授权后就可以使用sudo more /etc/shadow/etc/shadow 来读取文件的内容。
普通用户查看自己能运行哪些命令,可以输入命令:sudo -l
密码:******
}
如何授权:
先 su 切换到root, 运行命令:vim /etc/sudoers
添加如:weichen ALL=/bin/more (这句表示weichen可以切换到root下执行more命令)
vim进行保存退出(:w!);
执行exit命令,退回到普通用户;
再运行sudo -l,输入用户密码后可以看到在root权限下能运行的命令加上了:(root) /bin/more
------------------------------------------------------------------------------------------------