欢迎光临散文网 会员登陆 & 注册

Linux root身份执行命令 sudo

2023-08-08 14:50 作者:小步2023  | 我要投稿

详情地址:  https://www.xiaobuteach.com/linux2/user-mgr2/sudo.html?from=bili

Linux root身份执行命令 sudo

sudo语法

sudo 命令

原有的Linux命令,前面加sudo,表示以root身份执行命令。


什么是root身份

无论su root还是su - root,两者都需要知道root用户的密码。太不安全了,root用户不会给密码给别人。

能不能让其他用户不知道root的密码,又有root的权限?

这就是sudo命令的目标。


实现步骤:

1)把指定用户加入到/etc/sudoers 文件(指定用户就能以root身份执行命令)。

3)指定用户执行高权限命令时,前面加sudo。


准备:高权限命令的执行

以普通用户xt1执行高权限命令,这里以systemctl为例

systemctl restart httpd

默认让用户选择使用哪种身份登录。Ctrl+C取消。


通过sudo命令执行

sudo加在原有命令之前,表示以root身份执行。

sudo systemctl restart httpd

这里要求输入的是xt1的密码。

输入后,提示xt1不在sudoers文件中。


步骤1:编辑/etc/sudoers配置用户

文件/etc/sudoers默认为只读文件

设置为仅root的读写权限

chmod 700 /etc/sudoers

编辑文件

vim /etc/sudoers

加入

xt1 ALL=(ALL)    ALL

各种ALL表示所有权限。后续详细讲解。


看到这里,%wheel表示wheel组,明白管理员多牛了。


步骤2:sudo命令执行高权限命令

sudo systemctl restart httpd

需要输入xt1自身的密码。

执行成功。


免密执行sudo

加入NOPASSWD: ,如下

xt1 ALL=(ALL)    NOPASSWD: ALL

冒号与后面的ALL有空格。

再次执行sudo,无提示


方法2:把用户加入到wheel组

加入附加组不管用,必须是主组。

usermod -g wheel xt1

设置xt1的组为管理员组wheel。


测试启动httpd服务,成功。


Linux root身份执行命令 sudo的评论 (共 条)

分享到微博请遵守国家法律