如何修复‘sudo:没有TTY存在,也没有指定的任务程序’错误?

如何修复‘sudo:没有TTY存在,也没有指定的任务程序’错误?

我正在尝试使用makefile编译一些源代码。在makefile中,需要以sudo.

当我从终端编译源代码时,一切正常,并且在第一次使用sudo命令正在运行,等待密码。输入密码后,制作简历并完成。

但我希望能够在NetBeans中编译源代码。因此,我启动了一个项目,并告诉NetBeans在哪里找到源代码,但是当我编译该项目时,它会出现错误:

sudo: no tty present and no askpass program specified

当它第一次碰到sudo命令。

我在互联网上查过这个问题,我找到的所有解决方案都指向了一件事:禁用这个用户的密码。因为这里讨论的用户是根用户。我不想这样做。

还有别的解决办法吗?


largeQ
浏览 1790回答 3
3回答

宝慕林4294392

授权用户在不提示输入密码的情况下使用该命令应该可以解决问题。首先,打开shell控制台并键入:sudo visudo然后编辑该文件以添加到最末尾:username ALL = NOPASSWD: /fullpath/to/command, /fullpath/to/othercommand艾格john ALL = NOPASSWD: /sbin/poweroff, /sbin/start, /sbin/stop将允许用户john苏多poweroff, start和stop没有提示输入密码。查看屏幕底部,查看您需要在visudo中使用的击键-顺便说一句,这不是vi-然后退出,没有在出现任何问题的第一个迹象时保存。健康警告:腐蚀此文件将产生严重后果,请小心编辑!

慕姐4208626

试着:使用NOPASSWD所有命令的行,我的意思是:jenkins ALL=(ALL) NOPASSWD: ALL在所有其他行之后,将该行放在sudoers档案。这对我有用(Ubuntu14.04)。
打开App,查看更多内容
随时随地看视频慕课网APP