我有一个脚本(由我的前任编写),它成功编辑运行OS X 10.6的Mac上的sudoers文件;它是这样的:在OS X中编辑sudoers(10.7)
#!/bin/sh
if [ -z "$1" ]; then
export EDITOR=$0 && sudo -E visudo
else
echo "%staff ALL=NOPASSWD: /sbin/shutdown" >> $1
fi
然而,当在Mac上运行的运行10.7,而不是添加一行到sudoers文件,它会启动visudo命令,“交互”。在任何时候它似乎都没有进入“其他”条款。我怀疑第4行(“export ...”)的适当语法已经改变,但我似乎无法找出如何。任何指针?
由于有人会问:我们有一个详细的(并且有些愚蠢的,但必然如此)强制重新启动计划进行修补。如果用户在截止日期前没有重新启动,应用程序将启动5分钟倒计时(或立即重启选项),此时发出'sudo shutdown -r now'命令。为了我的理智,请不要要求我捍卫这种安排的性质。这是我无法控制的。
- 删除了以前的评论;无视 - – jpdyson 2012-07-19 17:55:54