我卡住了:
我有一个带有服务器的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执行屏幕命令?
答案 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