这两天在服务器上跑程序,因为实验室有人在服务器上跑了Gnome,我只能用ssh连接在上面跑程序。因为程序跑的时间比较久,中间ssh在闲置一段时间后会自动断开(ssh没有心跳检测),ssh断开后我们在服务器上跑的程序也就会停止,这就产生了困扰。
简单在Google搜了下,解决方法有以下三种
- nohup指令
- screen指令
- byobu指令
其中,nohun指令是大多数Linux发行版自带的,不用刻意安装,screen会在当前命令行界面再开一个窗口,我们可以在任何命令行界面打开这个窗口,这样,当前命令行关闭后,我们运行的程序也就不会被动关闭。byobu是screen的升级版(网上是这样说的)
解决方案
- 通过对几个命令的实验,我感觉byobu是最好用也是最方便的,下面简单介绍一下。
首先,我们要安装byobu,红帽系用yum安装,debian用apt get,因为我的服务器是ubuntu,故我采用的命令是
sudo apt install byobu
安装好byobu后,我们在命令行输入就能打开byobu,如图
byobu的基本简单操作
按键 | 说明 |
---|---|
F2 | 新建窗口 |
F3 | 移动到前一个窗口 |
F6 | 退出byobu窗口 |
F9 | 打开byobu菜单,查看帮助信息的配置信息 |
Ctrl+D | 关闭当前窗口 |
如果我们想要一登陆就显示byobu界面的话,可以使用命令
byobu-enable
关闭使用的命令是
byobu-disable