sudo: невозможно выполнить... неверный адрес - что это и как это исправить?

У меня есть набор сценариев, которые завершают развертывание клиентского компьютера после выполнения довольно общего образа NetRestore.

Основной скрипт запускается с правами root, а затем вызывает другой, "пользовательский" скрипт с sudo -iu $PROPER_USER ...

Проблема в том, что sudo не работает на этом шаге и фактически не выполняет скрипт. Я получаю эту ошибку:

sudo: unable to execute /bin/bash: Bad address

Что это значит, и как я могу это исправить? Одна вещь, которая приходит на ум, это то, что я меняю имя хоста ранее в скрипте, используя networksetup -setcomputername ...

1 ответ

Неважно о сети. Это было даже не близко.

Bad address сообщение приходит от ядра и указывает, что процесс попытался открыть терминал (pty/tty), который не существует.

Я не уверен, зачем добавлять sleep исправил проблему (ненадежно), но вернулся к не спящей версии моих скриптов и добавил:

Defaults !requiretty

в /etc/sudoers работает до сих пор.

Ура!

Другие вопросы по тегам