我有一组脚本,它们在执行一个相当通用的NetRestore映像之后完成客户机的部署。
主脚本以根权限运行,然后使用sudo -iu $PROPER_USER ...调用另一个“用户”脚本。
问题是,sudo在这个步骤上失败了,并且没有实际执行脚本。我知道这个错误:
sudo: unable to execute /bin/bash: Bad address这是什么意思,我怎么解决这个问题?想到的一件事是,我在脚本的前面更改主机名,使用networksetup -setcomputername ...
发布于 2015-01-22 08:52:30
别管人际关系了。甚至都不是很近。
Bad address消息来自内核,表示进程试图打开不存在的终端(pty/tty)。
我不知道为什么添加sleep修复了这个问题(不可靠),但是回到我的脚本的非睡眠版本,并添加:
Defaults !requiretty
到目前为止,/etc/sudoers还在工作。
干杯!
https://serverfault.com/questions/661194
复制相似问题