sudo visudo命令慎用 pkexec vi /etc/sudoers

sudo visudo命令慎用 pkexec vi /etc/sudoers

由于定时任务需要sudo命令,但又需要密码
0 0 * * * echo "your_password" | sudo -S docker exec -i php php /www/scrm_4/artisan TaskLibrary:run

所以执行了sudo visudo命令,然后添加了这一行:
your_username ALL=(ALL) NOPASSWD: /usr/bin/docker exec -i php php /www/scrm_4/artisan TaskLibrary:run

结果导致sudo出问题,不能使用了,报错如下:
sudo vi TaskLibrary.log 
>>> /etc/sudoers: syntax error near line 110 <<<
sudo: parse error in /etc/sudoers near line 110
sudo: no valid sudoers sources found, quitting
sudo: unable to initialize policy plugin

当你看到 /etc/sudoers: syntax error near line 110 这个消息时,意味着你的 sudoers 文件存在语法错误,需要进行修复。以下是你可以采取的步骤:
选择选项 (e) 再次编辑 sudoers 文件。
转到第 110 行,仔细查看语法,找到并纠正错误。
进行必要的更改以修复语法错误。
在进行更改后,保存文件并退出编辑器。
如果你对语法或如何修复错误感到不确定,可以在这里分享 sudoers 文件的相关部分(大约在第 110 行附近),我可以帮助你识别和纠正问题。另外,你可以查阅 sudoers 手册(man sudoers)以获取有关正确语法的指导。
记得在编辑 sudoers 文件时要小心,因为不正确的更改可能导致 sudo 访问丧失。在进行更改后,最好通过运行一个无害的命令(例如 sudo ls)来测试 sudo,以确保一切按预期工作。如果出现问题,你可以使用恢复模式来修复 sudoers 文件。

解决方案:
切换到root账号:
su root
再打开:pkexec vi /etc/sudoers
找到刚才报错的那一行,删除之。成功。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值