Linux
Sudo 錯誤“您必須有一個 tty 才能執行 sudo”
我正在嘗試執行以下命令:
sudo git pull;
我收到以下錯誤:
Command failed: sudo: sorry, you must have a tty to run sudo
該命令正在使用
child_process
和從 nodejs 伺服器執行exec
。我查看了其他嘗試解決此錯誤的問題和站點,但沒有一個解決方案,即編輯
/etc/sudoers
和使用ssh -t
工作。我沒有 root 訪問權限,因此在命令中使用 sudo。
我正在執行一個基本的 Amazon EC2 Linux 64 位實例。
檢查您的 sudoers 文件(或讓管理員驗證它)。它包含如下所示的內容:
Default requiretty
(預設也可以只是一個組,更容易只搜尋requiretty)
快速簡便的方法是將其註釋掉,這將解決該問題。您還可以使用 !requiretty 為特定命令設置它。
您也可以嘗試使用 –session-command 呼叫 sudo 來克服這個問題