小编Use*_*209的帖子

如何让非root用户通过cp命令替换文件/etc/hosts,而不需要sudo命令?

在我的 lubuntu 22.04 上,我需要更改该文件/etc/hosts。为此,我要执行命令:

> /usr/bin/cp /path/to/new_hosts /etc/hosts
Run Code Online (Sandbox Code Playgroud)

由非 root 用户在没有 sudo 命令的情况下执行。为此,我将以下行添加到文件中/etc/sudoers

<username> ALL = (root) NOPASSWD: /usr/bin/cp /path/to/new_hosts /etc/hosts
Run Code Online (Sandbox Code Playgroud)

/etc/sudoers我已经检查了命令的正确语法:

> sudo visudo -c /etc/sudoers
Run Code Online (Sandbox Code Playgroud)

该命令的输出是:

/etc/sudoers: parsed OK
/etc/sudoers.d/10-installer: parsed OK
/etc/sudoers.d/README: parsed OK
/etc/sudoers.d/kdesu-sudoers: parsed OK
Run Code Online (Sandbox Code Playgroud)

该消息/etc/sudoers: parsed OK向我保证 的语法/etc/sudoers是正确的。

当我cp通过终端执行命令时,结果是Permission denied

错误在哪里?

permissions command-line sudo lubuntu

1
推荐指数
1
解决办法
363
查看次数

标签 统计

command-line ×1

lubuntu ×1

permissions ×1

sudo ×1