草庐IT

linux - 从ssh注销后如何使程序继续运行?

这个问题在这里已经有了答案:关闭12年前。PossibleDuplicate:PreventabackgroundprocessfrombeingstoppedafterclosingSSHclient我有一个程序需要很长时间才能完成。它在ssh上以root身份运行。我希望它在我注销后继续运行,这可能吗?我该如何实现? 最佳答案 假设你有一个程序在前台运行,按ctrl-Z,然后:[1]+Stoppedmyprogram$disown-h%1$bg1[1]+myprogram&$logout如果只有一项作业,则无需指定作业编号。只需使

linux - 如何防止在 Linux 中关闭 SSH 客户端后停止后台进程

我正在通过SSH(Putty)在Linux机器上工作。我需要让一个进程在夜间运行,所以我想我可以通过在后台启动进程(在命令末尾使用&号)并将标准输出重定向到文件来做到这一点。令我惊讶的是,这不起作用。一旦我关闭Putty窗口,该过程就会停止。我怎样才能防止这种情况发生?? 最佳答案 查看“nohup”程序。 关于linux-如何防止在Linux中关闭SSH客户端后停止后台进程,我们在StackOverflow上找到一个类似的问题: https://stacko

php - 如何通过 PHP 执行 SSH 命令

我希望通过PHP进行SSH连接。最好/最安全的方法是什么?我知道我能做到:shell_exec("SSHuser@host.commkdir/testing");还有更好的吗?感觉很“淘气”:)。 最佳答案 我会使用phpseclib,apurePHPSSHimplementation.一个例子:login('username','password')){exit('LoginFailed');}echo$ssh->exec('pwd');echo$ssh->exec('ls-la');?>

CentOS系统SSH无法连接

想要搞清楚ssh无法连接的原因首先要先排查SSH基础的配置是否完整以及服务是否安装1.首先查看centos7上是否装了openssh-server,如果你是卸载的openssh然后重新安装,可能卸载的时候把openssh-server给卸载了但是安装openssh时却没有安装openssh-server。所以导致ssh连接出错,如果你是源码包安装的openssh,卸载的时候可能将openssh-server一起卸载了。(yuminstall-yxxx只能安装系统自带的openssh-7.4p1的版本)。事实上系统自带的openssh-7.4p1版本的带有openssh-7.4p1、openss

ruby - 如何通过 SSH 连接到服务器,然后从那里通过 SFTP 连接到另一台服务器?

情况是这样的:我可以通过SSH访问ServerA我可以通过SFTP访问ServerB,但只能从ServerA访问我想使用Ruby通过SSH连接到ServerA,然后将SFTP文件从ServerB连接到ServerA。我可以使用Net::SSH中的文档连接到ServerA:require'net/ssh/gateway'gateway=Net::SSH::Gateway.new('server_a','user')gateway.ssh("server_a","user")do|ssh|#howtoSFTPintoserver_bhereandrunSFTPcommands?endgat

Ruby Net::SSH 使用变量插值更改目录

我是Ruby的新手,所以如果我遗漏了一些明显的东西,请原谅我。问题是Ruby似乎没有在Net::SSH.exec中进行变量插值!方法。VCL_DIR="/usr/local/etc/varnish/"host='0.0.0.0'Net::SSH.start(host,'root')do|ssh|puts"Changingdirectoriesto#{VCL_DIR}"ssh.exec!("cd#{VCL_DIR}")res=ssh.exec!("pwd")puts"Serverreportscurrentdirectoryas#{res}"end输出:Changingdirectori

ruby - 如何跳过不正确的 ssh 密码

我有一个脚本可以登录1000多个无线设备并进行审核。他们的一些密码已被更改。我想跳过这些单元而不具体告诉ruby​​要跳过哪些ips。该脚本是多线程的并且会挂起,因为当ruby​​ssh进入一个单元并使用错误的密码时,它会要求输入密码并且整个脚本会停止。*如何跳过或挽救ruby​​net/ssh的错误密码尝试Net::SSH.start('ip','user',password:'pass',paranoid:false)do|ssh|end输入错误的密码会这样提示你admin@192.168.1.1'spassword: 最佳答案

ruby-on-rails - 捆绑安装时 Openshift ssh ruby​​ 版本不正确?

我在openshift上有一个Ruby2.0rails4应用程序。当我通过ssh进入我的应用程序并运行bundleinstall时,我收到一条消息:“您的Ruby版本是1.8.7,但您的Gemfile指定为2.0.0”。运行ruby-v时,我得到:“ruby2.0.0p353...”运行gem环境它也显示Ruby2.0。同样在我的本地机器上一切正常。为什么我的bundle安装认为我在openshift服务器上使用ruby​​1.8.7? 最佳答案 我认为您的bundler是在Ruby升级到2之前安装的。尝试使用geminstallb

ruby-on-rails - Net/SSH.start 失败时不会抛出异常

我正在使用Net::SSH连接到另一台服务器。它工作正常,但我希望能够处理无法连接的情况。Documentation因为该方法没有提及任何异常,据我所知,它也没有引发任何异常。在以下示例中,传递不存在且没有key的主机和用户不会引发异常。我可以检查它是否失败的唯一方法是查看@session,它将为nil,但这并没有告诉我它失败的原因。begin@session=Net::SSH.start('no-host','no-user',keys:[])rescueSocketError=>econnection_failed=truelogger.error"SOCKETERROR:"+e.

ruby - 使用 SSH 克隆存储库时出现 "permission denied"错误?

我编写了一个shell脚本来从100多个系统上的Git克隆一个存储库,我正在登录到每个系统。我通过在托管它的系统上运行它来测试脚本,但是当我通过使用SSH从其他系统登录来运行相同的脚本时,它会给我一个“权限被拒绝”的错误,尽管脚本存在于我必须在同一系统上进行克隆。我正在使用Ruby1.8.7。为了登录目的,我创建了另一个脚本文件,首先我登录并运行这里的脚本是我的代码在我的login.shhere$1是我将端口参数传递给login.shsshpass-p1234ssh-p$1admin@localhost'./my_update_steps.sh&'在脚本中也进行了更改,以便它可以使用k