Tag: sudo

Ant build.xml需要用户输入,但Eclipse没有tty

我正在尝试更好地将Eclipse与我的build.xml集成。 我的构建文件为程序的本机部分调用GNU Make,而Makefile使用sudo将已编译的库移动到系统路径中。 不幸的是,这需要输入密码,Eclipse的终端不接受用户输入。 所以在eclipse中运行构建的结果是: [exec] sudo: no tty present and no askpass program specified [exec] make: *** [install] Error 1 有什么办法绕过这个问题? ant的构建能否以其他方式提升为根?

如何使用java Runtime输入密码到sudo?

我需要以root身份执行给定的命令,使用Java执行sudo用户。 但是,我不确定我可以用来传递密码的方法。 有没有办法将密码传递给终端?

sudo登录后运行命令

我正在尝试执行下面的代码来执行sudo命令,但我不知道在sudo登录后如何执行命令 String[] commands = {“sudo su – myname;”,”id”}; JSch jsch = new JSch(); String username = “myuser”; com.jcraft.jsch.Session session = jsch.getSession(username,”hostname”, 22); session.setPassword(“my@123”); session.connect(); Channel channel=session.openChannel(“exec”); for(int a=0;a0){ int i=in.read(tmp, 0, 1024); if(i<0)break; System.out.print(new String(tmp, 0, i)); } if(channel.isClosed()){ System.out.println("exit-status: "+channel.getExitStatus()); break; } } }

使用java执行带有“sudo”的linux shell命令,而不输入所需的密码

嗨,我正在使用ganymed-ssh2 java库在linux工作站中成功执行远程命令。 但现在有一种情况我需要执行一个命令,但这要求我输入一些密码……如: sudo /usr/bin/some_process please enter your password: 我曾经以这种方式实现远程cmd执行: Session sess = conn.openSession(); sess.execCommand(“uname -a && date && uptime && who”); System.out.println(“Here is some information about the remote host:”); InputStream stdout = new StreamGobbler(sess.getStdout()); BufferedReader br = new BufferedReader(new InputStreamReader(stdout)); while (true) { String line = br.readLine(); if (line == null) break; System.out.println(line); } […]

使用JSch sudo示例和Channel.setPty在远程主机上运行sudo命令

我在以下链接中使用了JSch Sudo示例: http://www.jcraft.com/jsch/examples/Sudo.java.html 并改变了一点,摆脱了所有对话框,因为我必须使用PuTTY将它用于EC2实例。 现在我的代码看起来像这样: import com.jcraft.jsch.*; import java.awt.*; import javax.swing.*; import java.io.*; public class sudo{ public static void main(String[] arg){ try{ JSch jsch=new JSch(); String host=null; if(arg.length>0){ host=arg[0]; } String privateKey = “my private key.pem”; jsch.addIdentity(privateKey, “”); Session session=jsch.getSession(“ec2-user”, “xx.xx.xx.xx”, 22); session.setPassword(“”); java.util.Properties config = new java.util.Properties(); config.put(“StrictHostKeyChecking”, “no”); session.setConfig(config); session.connect(); String command=”sudo mkdir […]

如何以Eclipse中的超级用户身份运行我的应用程序?

当我尝试从Eclipse运行我的服务器应用程序时,我遇到了错误。 错误是java.net.BindException:权限被拒绝 。 我想这是因为我使用端口443来建立SSL连接。 如果我使用java和sudo在命令行上运行我的代码,我可以解决这个问题。 有没有办法设置Eclipse,以便当我点击运行按钮时,我的应用程序是用sudo执行的?