使Hexo服务在Linux后台运行

占坑,明天写。哈哈哈哈,傻逼的解决方案,js的pm2和forever坑爹方案

使用pm2以及forever都不行,那就换只能换种方式了,虽然也不是什么的完美解决方案,也会时不时停,一般在关闭ssh的链接窗口之前启动的话,还是没啥问题的。就是让他在后台的话,还继续操作hexo项目的配置或者是博客才会莫名其妙的,其他的时候还是挺稳定的。

以下记录我的解决方案:

启动脚本

创建start.sh 运行hexo 服务脚本

1
2
$ touch start.sh #创建脚本
$ chmod 777 start.sh #赋予运行权限

编辑start.sh文件

1
2
$ vi start.sh
$ hexo s & > log.txt #输入脚本,官方的解决方案,还得加个辅助脚本

编写run.sh启动脚本

1
2
3
4
$ touch run.sh
$ chmod 777 run.sh
$ vi run.sh
$ nohup ./start.sh 2> run.txt #插入运行脚本

大功告成!

……..追更新

关闭脚本

创建关闭hexo脚本

1
2
$ touch stop.sh
$ chomo 777 stop.sh

然后编辑

1
$ vi stop.sh

插入如下shell脚本命令

1
2
3
4
5
6
7
8
9
ID=`ps -ef | grep "hexo" | grep -v "grep" | awk '{print $2}'`
echo $ID
echo "---------------"
for id in $ID
do
kill -9 $id
echo "killed $id"
done
echo "---------------"

要关闭的时候直接./stop.sh美滋滋

真*大功告成。有什么问题记得留言。爱你么么哒。

以后再关闭shell或者是别的ssh客户端的时候执行一下./run.sh 。就简单多了啦…..

谢谢,爱你么么哒