首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >visudo说有语法错误

visudo说有语法错误
EN

Server Fault用户
提问于 2021-08-18 12:28:30
回答 1查看 745关注 0票数 0

所以,我的目的是让用户管理器能够运行这个命令,而不需要使用sudo。

代码语言:javascript
复制
manager ALL=NOPASSWD: tar -czf /root/assignment/result/student-submissions-$(date +\%Y-\%m-\%d).tar.gz /root/assignment/report/main/

这是输出:

代码语言:javascript
复制
/etc/sudoers: syntax error near line 122

第122行是上述代码的第一行。

EN

回答 1

Server Fault用户

发布于 2021-08-18 13:13:15

当我在我的系统上运行它时,我也会得到语法错误。我做了以下工作:

在sudoers文件的顶部(在“默认”行下),添加以下行(您想要运行的命令没有密码):

代码语言:javascript
复制
Cmnd_Alias TAR_COMMAND = /usr/bin/tar -czf /root/assignment/result/student-submissions-*.tar.gz /root/assignment/report/main/

我在文件名中使用的通配符*是为了确保当涉及到tar.gz文件名时,命令可能会有所不同。这样,您就不必使用日期变量。

现在,在末尾添加以下一行:

代码语言:javascript
复制
manager ALL= NOPASSWD: TAR_COMMAND

如果这对你有用的话

PS:始终使用您的可执行文件的完整路径。当只使用"tar“时,每个名为"tar”的二进制文件都可以在没有密码的情况下从任何文件夹运行。使用完整的路径确保您只能运行/usr/bin/tar。

票数 2
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/1074923

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档