我可以运行常规命令,如rm /home/user/Desktop/file但当我不能运行root命令。
我的目的是配置一个squid服务,运行如下命令:apt get install squid service squid start service
但是这些命令需要超级用户身份验证。
有人知道怎么修吗?谢啦
public void executarComandoSsh(Session session, String comando) {
try {
ChannelExec channel = (ChannelExec) session.openChannel("exec");
((ChannelExec) channel).setPty(true);
((ChannelExec) channel).setPtyType("vt100");
((ChannelExec) channel).setXForwarding(true);
System.out.println("Comando " + comando);
channel.setCommand(comando);
channel.setInputStream(null);
channel.setErrStream(System.err);
BufferedReader in = new BufferedReader(new InputStreamReader(channel.getInputStream()));
channel.connect();
String line = "";
while (true) {
while ((line = in.readLine()) != null) {
System.out.println("-- " + line);
}
break;
}
channel.disconnect();
session.disconnect();
} catch (JSchException | IOException ex) {
Logger.getLogger(ServidorNegocioImpl.class.getName()).log(Level.SEVERE, null, ex);
}
}
已解决...
我编辑了/etc/sshd/sshd_配置并设置了enable root login:yes。。。
我试图在unix中使用JSCHSSH类(com.jcraft.jsch)执行一些工具。我的工具有一个选择菜单。我需要转到工具所在的文件夹,执行它并选择请求的选项。在每个命令之后,(cd,execute,…)我希望检查输出并检查状态代码(0/1)。我有下面的代码按预期执行它,但在这段代码中,我找不到一种方法来检查每个命令后的输出。 我无法找到一种方法,但我怎么能分开的命令,并打印他们一个接一个(在同
问题内容: 我正在SSH shell会话上运行命令,为了获得该命令,我在官方示例后面使用了JSch 。 我也在 StackOverflow* 上也遵循此示例编写了自己的代码 * 这是 我的代码: 看起来不错,但奇怪的是 它只能在调试模式下工作 。如果我运行它,程序将无法执行。我认为它锁定 了while循环, 但是我不明白为什么。没有while循环,代码将到达终点,但是不执行任何shell命令。 我
我使用Netbeans作为IDE 你能帮我找出问题吗?!
我目前正在尝试编写一个android应用程序,该应用程序通过ssh对远程机器执行简单的“ls”命令。我尝试使用JSch和此页面,但似乎不起作用。我环顾四周,似乎必须实现一些Async任务来运行代码。以下是当前主要活动的整个代码: 在Androidanifest.xml中添加uses-权限android: name="android.permission.INTERNET" 这是我第一次尝试任何严肃
Infact挂起。如果我删除多级ssh,一切都很好!我做错什么了吗?? 我从以下方面得到了一些提示:Java中的多级SSH登录和使用JSch的多个命令,但我无法运行代码。
我正在尝试使用Jcraft-Jsch库通过Java应用程序管理路由器。 我正试图通过TFTP服务器发送路由器配置。问题出在我的Java代码中,因为这适用于PuTTY。 这是我的Java代码: 我明白了 行的自动命令“192.168.50.1”无效 问题是如何运行这些连续的命令。