教程:Linux 技巧:让进程在后台可靠运行的几种方法

网上搜索了一下,方法很多,选用最流行的 screen

命令参考:http://man.linuxde.net/screen

1. 安装

root@xkfx:~# apt install screen

...

root@xkfx:~# screen -list 列出所有会话
There is a screen on:
.pts-.xkfx (// :: PM) (Attached)
Socket in /var/run/screen/S-root.

2. 基本操作

例如说我现在打算断开 ssh ,又希望XXXXXXXX程序继续运行:

root@xkfx:~# screen -ls
There is a screen on:
1883.pts-0.xkfx (03/04/2018 12:06:14 PM) (Detached)
1 Socket in /var/run/screen/S-root.

root@xkfx:~# screen -dmS MyWorker

(创建一个新的视窗,并指定名字)
root@xkfx:~# screen -ls
There are screens on:
2210.MyWorker (03/04/2018 12:38:55 PM) (Detached)
1883.pts-0.xkfx (03/04/2018 12:06:15 PM) (Detached)
2 Sockets in /var/run/screen/S-root.

root@xkfx:~# screen -r 2227.MyWorker 

(screen -r 2227 或者 screen -r MyWorker 均可)

(Attached某个视窗,也可以理解为进入某个视窗)

root@xkfx:/# screen -ls
There are screens on:
2227.MyWorker (03/04/2018 12:40:00 PM) (Attached)
1883.pts-0.xkfx (03/04/2018 12:06:15 PM) (Detached)
2 Sockets in /var/run/screen/S-root.

(执行你想进行的任何操作)

root@xkfx:/# cd /opt/antpool/cpuminer-2.5.0/
root@xkfx:/opt/antpool/cpuminer-2.5.0# ./minerd -o stratum+tcp://stratum-ltc.antpool.com:8888 -u xkfx.01
[2018-03-04 12:45:10] 1 miner threads started, using 'scrypt' algorithm.
[2018-03-04 12:45:10] Starting Stratum on stratum+tcp://stratum-ltc.antpool.com:8888
[2018-03-04 12:45:12] thread 0: 4104 hashes, 15.34 khash/s

[detached from 2227.MyWorker]

(退出某个视窗,但保持该视窗工作继续进行。这里的操作是 Ctrl + A + D)

root@xkfx:~# screen -ls
There are screens on:
2227.MyWorker (03/04/2018 12:40:00 PM) (Detached)
1883.pts-0.xkfx (03/04/2018 12:06:15 PM) (Detached)
2 Sockets in /var/run/screen/S-root.

好了,现在可以断开 ssh了。

重新连接ssh,看看程序是不是仍在运行:

root@xkfx:~# screen -ls
There are screens on:
2227.MyWorker (03/04/2018 12:39:59 PM) (Detached)
1883.pts-0.xkfx (03/04/2018 12:06:14 PM) (Detached)
2 Sockets in /var/run/screen/S-root.

root@xkfx:~# screen -r 2227.MyWorker

[2018-03-04 13:26:38] accepted: 28/28 (100.00%), 15.55 khash/s (yay!!!)
[2018-03-04 13:27:38] thread 0: 932832 hashes, 15.55 khash/s
[2018-03-04 13:27:39] thread 0: 9480 hashes, 15.58 khash/s
[2018-03-04 13:27:39] accepted: 29/29 (100.00%), 15.58 khash/s (yay!!!)
[2018-03-04 13:28:14] thread 0: 539904 hashes, 15.55 khash/s
[2018-03-04 13:28:14] accepted: 30/30 (100.00%), 15.55 k1hash/s (yay!!!)

PS. 终结一个 screen ,切入该 screen 结束正在运行的程序, Ctrl + D

3. 应用

解决一下上次的遗留问题

root@xkfx:~# screen -dmS myChatroomServer

root@xkfx:~# screen -r myChatroomServer

root@xkfx:~# java -jar main.jar
The server is listening on 10000 port ...

[detached from 2586.myChatroomServer]

操作完后断开 ssh 测试:

Linux笔记 #05# 断开远程连接后保持程序运行的更多相关文章

  1. linux 网络配置及远程连接

    linux 网络配置及远程连接 前言 本文结合自己的经历主要讲述以Centos7为基础网络配置和远程连接的解决步骤 网络配置: 安装好centos7后,是上不了网的,配置步骤如下: (1).输入命令d ...

  2. linux学习笔记一:远程连接linux服务器

    环境介绍:win7电脑,通过VM虚拟出linux系统,安装centOS7 通过Xshell连接linux,ftp访问服务器资源. 遇到的问题,ftp连不上linux 解决:linux上安装ftp服务 ...

  3. root密码重置、Linux目录结构和远程连接Linux

    一.root如何重置密码 1. 重启 Linux 系统主机并出现引导界面时,按下键盘上的 e 键进入内核编辑界面 2. 在 linux16 参数这行的最后面追加“rd.break”参数,然后按下 Ct ...

  4. Linux下mysql的远程连接(转)

    转载:http://www.cnblogs.com/fnlingnzb-learner/p/5830661.html 如果Mysql是按上篇的方法进行安装和设置的话,那进行远程连接就会稍微简单一点.我 ...

  5. Linux 中 MySQL 授权远程连接

    说明:当别的机子(IP )通过客户端的方式在没有授权的情况下是无法连接 MySQL 数据库的,如果需要远程连接 Linux 系统上的 MySQL 时,必须为其 IP 和具体用户进行授权.一般 root ...

  6. linux配置mysql数据库远程连接失败

    今天配置linux下mysql数据库可以远程访问的问题,百度这方面的资料有很多,但是方法都一样,都试过了却未能解决,记录一下 第一步:在/etc/mysql/my.cnf下找到bind-address ...

  7. Linux系统MySQL开启远程连接

    1.远程连接上Linux系统,确保Linux系统已经安装上了MySQL数据库.登陆数据库.mysql -uroot -p(密码). 2.创建用户用来远程连接 GRANT ALL PRIVILEGES ...

  8. 如何在断开ssh连接后仍然保持服务器正常运行程序

    问题描述:当SSH远程连接到服务器上,然后运行一个Python程序(bpr.py),然后把终端开闭(切断SSH连接)之后,发现该程序执行中断. 解决方法:使用nohup命令让程序在关闭窗口(切换SSH ...

  9. linux下mysql的远程连接

    在服务器上安装mysql后,想使用本地的mysql客户端连接数据库时,提示不允许连接,比较郁闷,找到了这篇文章解决了我的问题: 内容如下: 本地计算机ip:192.168.1.100远程计算机ip:1 ...

随机推荐

  1. 关于C#我今天的六个小时

    嘿嘿,今天周六啦,我们是自由学习啦,于是还记得前几天纠结的事情,还有好多不太熟悉的题目那,于是今天就找出来练习下拉,而且这些题目在老师给我们复习时间也给我们讲解过啦,这样一来应该做起来还是容易点的啦, ...

  2. 【linux】安装rar,并解压被压缩成多个rar的文件

    rar  官网:http://www.rarsoft.com/download.htm 选择  RAR for  linux   (注意你的系统是32位还是64位) 1 安装命令: $ cd /roo ...

  3. Linux下多任务间通信和同步-mmap共享内存

    Linux下多任务间通信和同步-mmap共享内存 嵌入式开发交流群280352802,欢迎加入! 1.简介 共享内存可以说是最有用的进程间通信方式.两个不用的进程共享内存的意思是:同一块物理内存被映射 ...

  4. 小程序:将gbk转为utf-8

    是否有过写了半天代码,发现竟然用的GBK编码,然后到主UTF-8上发现中文全部变成乱码了... 下面这个程序,只要输入src的位置,瞬间转换成utf-8 package tools; import j ...

  5. Linux学习(四)档案与目录管理

    1. 目录与路径  1.1 相对路径与绝对路径  1.2 目录的相关操作: cd, pwd, mkdir, rmdir  1.3 关于执行文件路径的变量: $PATH2. 档案与目录管理  2.1 档 ...

  6. pycharm 和 Anaconda 下的 opencv 安装

    学习真的切忌三天打鱼两天晒网!! 一开始python下的opencv已经都弄好了,中间电脑坏了一次,好久没有接触这个,就全部都忘完了.深感惋惜. 今天又从新安装了一下opencv.在anaconda下 ...

  7. zabbix添加简单的监控

    本文讲述给zabbix添加zabbix自带模板和自定义添加模板:安装zabbix请参考本文 1.1. 给主机添加zabbix自带监控模板 第一步: 第二步: 如果添加模板,但是模板并没有监控项,下面的 ...

  8. Python默认调用路径

    记录个遇到的小问题,防止下次遇到忘记怎么解. 起因:pip安装扩展库时提示安装完成,但是在Python 终端下无法import 现象:终端直接运行python 时提示如下:(2.7.13)然而用/us ...

  9. nginx 下使用 bootstrap 字体的问题

    使用boostrap时,出现 glyphicons-halflings-regular.ttf glyphicons-halflings-regular.woff glyphicons-halflin ...

  10. 前端~HTML~CSS~JavaScript~JQuery~Vue

    HTML CSS JavaScript DOM文档操作 jQuery实例 Vue