问题

我正在尝试使用makefile编译一些源.在makefile中,有一堆命令需要以sudo的形式运行.

当我从终端编译源代码时,一切正常,make第一次暂停sudo命令等待密码.一旦我输入密码,进行简历和完成.

但我希望能够在NetBeans中编译源.所以,我启动了一个项目并显示了netbeans在哪里找到源,但是当我编译项目时,它会出错:

 sudo: no tty present and no askpass program specified
 

第一次点击 sudo 命令。

我在互联网上查看了这个问题,我发现的所有解决方案都指向一件事:禁用此用户的密码.由于这里的用户是root.我不想这样做.

有其他解决方案吗?

  最佳答案

授予用户使用该命令而不提示密码应解决问题.首先打开一个shell控制台并输入:

 sudo visudo
 

然后编辑该文件以添加到最后:

 username ALL = NOPASSWD: /fullpath/to/command, /fullpath/to/othercommand
 

例如

 john ALL = NOPASSWD: /sbin/poweroff, /sbin/start, /sbin/stop
 

将允许用户john到sudo poweroff,startstop而无需提示密码.

看看屏幕底部你需要在visudo中使用的键击 – 顺便说一下,这不是vi – 退出而不保存在任何问题的第一个标志.健康警告:腐败这个文件将会产生严重的后果,注意编辑!

  相同标签的其他问题

linuxsudotty