在远程CentOSVMGeddy应用程序中部署了MonogoDB包装器。执行以下命令时,应用程序启动并监听端口80。geddy-eproduction&此CLI命令中的问题是当与VM的SSH连接断开时,进程会自动关闭。要使应用程序正常工作,需要始终打开SSH,这是不可能的。有没有其他方法可以让它作为后台服务运行。 最佳答案 发生这种情况是因为仅在后台运行的进程在其控制终端(SSH连接)关闭时将收到SIGHUP信号。防止这种情况的传统方法是使用nohup效用:nohupgeddy-eproduction&或者,您可以使用终端多路复用器
我有一个C++类,用于启动外部进程并与之通信(有点类似于Qt的QProcess-我们不能使用Qt,因为我们在小型嵌入式系统上工作)。它使用pipe和dup2系统调用在父进程和子进程之间建立链接。问题是-它不适用于ssh、scp和其他需要密码的程序。我已经跟踪了ssh,它似乎打开了/dev/tty并以某种方式使用它从命令行读取密码。有没有什么方法可以从我的类(class)输入密码,或者检测应用程序是否需要来自stdin以外的其他来源的输入(根本不需要便携)? 最佳答案 ssh程序通常的做法是直接从终端读取密码。您需要分配一个伪终端并在
我用谷歌搜索了“pythonssh”。有一个精彩的模块pexpect,它可以使用ssh(带密码)访问远程计算机。连接远程计算机后,我可以执行其他命令。但是我无法再次在python中得到结果。p=pexpect.spawn("sshuser@remote_computer")print"connecting..."p.waitnoecho()p.sendline(my_password)print"connected"p.sendline("ps-ef")p.expect(pexpect.EOF)#thiswilltakeverylongtimeprintp.before在我的例子中如何
关闭。这个问题不符合StackOverflowguidelines.它目前不接受答案。这个问题似乎不是关于aspecificprogrammingproblem,asoftwarealgorithm,orsoftwaretoolsprimarilyusedbyprogrammers的.如果您认为这个问题是关于anotherStackExchangesite的主题,您可以发表评论,说明问题可能在哪里得到解答。关闭6年前。Improvethisquestion是否可以将SSH和SFTP分开?例如,让SFTP监听22端口,SSH监听2222端口?我把SFTP和SSH用户列表分开了,目标是让S
当我尝试连接到ansible中的主机时出现错误我可以在本地主机(ansible)中pingssh_connection,但不能在jenkins管道构建中。我几乎什么都试过了。----------[FPipeline]Runningshellscript+ansibleall-mping-vvvansible2.4.0.0configfile=/var/lib/jenkins/workspace/FPipeline/ansible.cfgconfiguredmodulesearchpath=[u'/var/lib/jenkins/.ansible/plugins/modules',u'/
我在保持SSH在适用于Linux的Windows子系统上运行时遇到问题。似乎如果一个shell没有打开并运行bash,子系统中的所有进程都会被杀死。有办法阻止这种情况吗?我曾尝试使用nssm创建服务,但无法使其正常工作。现在我正在尝试启动一个shell,然后将其发送到后台,但我还没有完全弄清楚如何做。 最佳答案 您必须至少打开一个bash控制台,以便后台任务继续运行:一旦您关闭最后一个打开的bash控制台,WSL就会关闭所有正在运行的进程。是的,我们正在努力在未来改进这种情况;)更新2018-02-06在最近的Windows10In
场景:许多嵌入式设备(运行Linux)在野外,在路由器后面,所以NAT'd我们无法连接到它们。我们需要支持人员能够在任何设备上启动终端/shellsession。他们的本地终端也将在公司防火墙后面进行NAT,因此我们需要一些他们和设备都可以连接到的中央“汇合点”。如有必要,我们可以要求支持人员登录某种终端服务器,但我更喜欢在他们的桌面上弹出一个终端窗口的解决方案。我们可以(通过其他方式)告诉设备执行一些任意脚本或应用程序来启动session。没有NAT,它只是通过SSH连接到设备,然后我们就可以走了。但是在这个NAT环境中我有哪些选择?如果需要,我们可以在任一端或session点服务器
如果直接从Linux控制台运行,我有一个应用程序需要有不同的行为。因此,如果用户使用SSH连接以运行FooBar,或者用户走到控制台并直接登录以运行FooBar,我希望它做一些不同的事情。我需要调用什么CAPI来区分这两种情况?我想我必须查看“tty/pts”信息(例如我在运行“psaxf”时看到的信息),但我不确定这是否是最佳解决方案,也不确定调用什么API获取该信息。感谢提示。:) 最佳答案 根据您对它被欺骗的担心程度,一个简单的检查是SSH_CLIENT和SSH_CONNECTION环境变量是否存在,在这种情况下您需要gete
如果主题含糊不清,请原谅,但我已尽力描述我的问题。我有我想使用codeship部署的树莓派。Rsyncing文件完美运行,但是当我使用pm2重新启动我的应用程序时,我的问题出现了。我已经使用Node版本管理器NVM安装了Node和pm2。sshpi@server.com'source/home/pi/.bashrc;cdproject;pm2restartapp.js-x----prod'0min3secbash:pm2:commandnotfound我什至添加了:shopt-sexpand_aliases在我的bashrc底部,但它没有帮助。我怎样才能让它在我完成部署后重新启动我的应
我使用screen来保持我的工作session并从多台机器连接到同一个session。我如何设置SSH和screen,以便始终将我的持久screensession内部的XDISPLAY变量设置为我当前连接的机器?即。我在工作时启动screensession并使用gvim,它使用在我的工作机器上运行的X服务器。后来,我从家里连接到同一个session,也想使用gvim。但是这一次,我希望gvim在我的家用机器上使用X服务器。我意识到我可以在每次从不同的机器连接时手动更新XDISPLAY,但我宁愿有一个自动化系统。如果我真的可以在gvim运行时将gvim从我的工作机器转移到我的家用机器上,