本文最后更新于 2023-08-04,文章内容可能已经过时。

screen

GNU Screen 是一款由GNU计划开发的用于命令行终端切换的自由软件。用户可以通过该软件同时连接多个本地或 远程的命令行会话,并在其间自由切换。

安装 screen

#Linux安装命令
yum install screen -y
#群辉安装命令
ipkg install screen
#需要安装ipkg

screen命令

# 新建一个名叫sb的session,并马上进入
screen -S sb
# 新建一个名叫sb的session,但暂不进入,可用于系统启动脚本里 	
screen -dmS sb
# 列出当前所有session  
screen -ls
# 恢复到sb这个session,前提是已经是断开状态(-d可以远程断开会话)       
screen -r sb
# 连接到离线模式的会话(多窗口同步演示) 
screen -x sb
# screen创建一个执行脚本的单窗口会话,可以attach进程ID
screen ./rsync.sh
# 检查目前所有的screen作业,并删除已经无法使用的screen作业     
screen -wipe  
# 分离窗口,后台运行                   
先按 Ctrl + A , 再按 Ctrl + D
# 杀死终端
screen -d 会话ID
第二种方法Ctrl+a,输入K,输入Y确认杀死会话。其实,使用exit也可。
确认是否成功杀掉会话可直接screen -ls,看下列表中是否还有会话即可。

pm2

PM2(Process Manager 2 )是具有内置负载均衡器的Node.js应用程序的生产运行时和进程管理器。 它允许您永久保持应用程序活跃,无需停机即可重新加载它们,并促进常见的Devops任务。
日志管理:应用程序日志保存在服务器的硬盘中~/.pm2/logs/
终端监控:可以在终端中监控您的应用程序并检查应用程序运行状况(CPU使用率,使用的内存,请求/分钟等)。
SSH部署:自动部署,避免逐个在所有服务器中进行ssh。
多平台支持:适用于Linux(稳定)和macOS(稳定)和Windows(稳定)

安装pm2

先安装nodejs
然后全局安装pm2

npm安装方式

npm install pm2 -g

yarn安装方式

yarn global add pm2

linux安装方式

apt update && apt install sudo curl && curl -sL https://raw.githubusercontent.com/Unitech/pm2/master/packager/setup.deb.sh | sudo -E bash -

群辉安装方式

套件安装nodejs
npm install pm2

PM2命令

启动服务
pm2 start app.js                //启动app.js应用
pm2 start app.js --name demo    //启动应用并设置name
pm2 start app.sh                //脚本启动
停止服务
pm2 stop all               //停止所有应用
pm2 stop [AppName]        //根据应用名停止指定应用
pm2 stop [ID]             //根据应用id停止指定应用
删除应用
pm2 delete all               //关闭并删除应用
pm2 delete [AppName]        //根据应用名关闭并删除应用
pm2 delete [ID]            //根据应用ID关闭并删除应用
创建开机自启动
pm2 startup
更新PM2
pm2 updatePM2
pm2 update
重新启动
pm2 restart app.js        //同时杀死并重启所有进程。短时间内服务不可用。生成环境推荐使用reload
查看启动列表
pm2 list
查看每个应用程序占用情况
pm2 monit  //监视所有进程
显示应用程序所有信息
pm2 show [Name]      //根据name查看
pm2 show [ID]        //根据id查看
日志查看
pm2 logs            //查看所有应用日志
pm2 logs [Name]    //根据指定应用名查看应用日志
pm2 logs [ID]      //根据指定应用ID查看应用日志
更新PM2
pm2 updatePM2
pm2 update