美文网首页
Ubuntu远程启动后台进程与后台启动图形化进程

Ubuntu远程启动后台进程与后台启动图形化进程

作者: rill_ | 来源:发表于2018-02-02 11:19 被阅读0次

    本文主要介绍,如何在Ubuntu远程连接服务器、远程启动进程、远程启动后台进程、远程启动后台图形化进程的常规方法。

    1. 连接远程Ubuntu

    最常用的远程连接方法就是ssh,ssh介绍与使用可以参考SSH原理与运用(一):远程登录
    用下面的命令可以直接连接远程的机器

    ssh user@host
    

    2. 远程启动后台进程

    正常情况下,通过ssh连接上远程机器以后,执行命令,启动进程都没有什么问题。但是如果关闭了ssh窗口,这些启动的进程会自动关闭。
    关闭ssh窗口-->关闭session会话-->触发SIGHUP信号-->关闭ssh窗口启动的所有进程
    解决方法,可以通过nohup或者screen方式实现ssh关闭而进程不退出

    nohup

    nohup 命令运行由 Command 参数和任何相关的 Arg 参数指定的命令,忽略所有挂断(SIGHUP)信号。在注销后使用 nohup 命令运行后台中的程序。要运行后台中的 nohup 命令,添加 & ( 表示“and”的符号)到命令的尾部。
    例如:后台启动一个node进程

    nohup node &
    

    nohup很容易使用,简答的命令启动都没有什么问题,但是对于复杂的需要交互的命令就比较麻烦了,例如,关闭了ssh窗口,但是下次再登录进来的时候,还是想恢复上次的进程交互方式,通过nohup就不能实现,可以通过screen实现

    screen

    例如:同样上面的方式我们启动一个node进程

    screen node
    
    image.png
    现在关闭ssh窗口,另外新启动一个ssh窗口,在窗口中输入screen -ls查看目前子界面的状态
    image.png
    从图片上可以看到所有的子界面的状态,现在通过screen -r 4751进入我们刚才关闭的node进程(4751是我们刚才启动的node进程),输入过上面的命令以后,命令行窗口会回到我们之前关闭的node进程的状态,如下图:
    image.png

    3. 启动图形化进程

    对于远程启动的程序,有时候我们并不关心程序是否有图形化界面(比如自动化测试),只要程序能够运行就可以了。xvfb工具提供了这个功能。
    Xvfb 是什么呢,他的名称是 virtual framebuffer X server for X Version 11, Xvfb 可以直接处理Window 的图形化功能,并且不会把图像输出到屏幕上,也就是说,就算你的电脑没有启动 Xwindow , 你仍然可以执行任何图形程式。详细可以参考维基百科Xvfb
    安装xvfb

    sudo apt-get install xvfb
    

    运行xvfb-run 常用命令


    image.png

    例如:
    我们通过ssh启动一个chromium浏览器
    提示不能打开,如下图


    image.png

    下面通过
    通过xvfb-run启动浏览器,命令如下

    xvfb-run --auto-servernum --server-args="-screen 0 1280x760x24" chromium-browser 
    

    浏览器启动成功,如下图


    image.png

    相关文章

      网友评论

          本文标题:Ubuntu远程启动后台进程与后台启动图形化进程

          本文链接:https://www.haomeiwen.com/subject/dedkzxtx.html