使用ssh在一个流浪盒中分离启动屏幕,怎么样?

时间:2014-12-18 11:40:54

标签: ssh vagrant gnu-screen

我卡住了:

我有一个带有服务器的Vagrant盒子,当我使用vagrant ssh进行日志记录,并启动我的脚本以在分离的屏幕会话中启动服务器时,没问题:

vagrant ssh

screen -d -m -S sesionServer bash run_server.sh

我可以通过screen -list看到我的屏幕会话处于活动状态,服务器运行正常。

但是我需要在一个命令中启动所有这些,我试图执行:

vagrant ssh -c 'screen -d -m -L -S test1 bash run_server.sh'

但我只有127.0.0.1与#34连接。

如何使用vagrant ssh执行屏幕命令?

2 个答案:

答案 0 :(得分:1)

我相信this是同一个问题?

TL; DR vagrant ssh没有将pty分配给ssh会话。在屏幕命令之前使用vagrant ssh -- -t前缀。

答案 1 :(得分:0)

您也可以在Vagrantfile

中进行设置

VAGRANTFILE_API_VERSION =" 2"

Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|

    # Needed in order to run screen
    # https://www.vagrantup.com/docs/vagrantfile/ssh_settings.html
    # http://stackoverflow.com/questions/27545745/start-screen-detached-in-a-vagrant-box-with-ssh-how
    config.ssh.pty = true