守护进程
发布时间:2020-12-15 07:55:00 所属栏目:Java 来源:网络整理
导读:1.创建shell脚本 touch /data/image/deamon.shvi /data/image/deamon.sh 拷贝脚本 #!/bin/bashtest(){ while true do echo `date` /data/image/log.txt sleep 5 done}case $1 instart) path="/root/shouhu.pid" if [ -f $path ]; then pid=`cat /data/image/
1.创建shell脚本 touch /data/image/deamon.sh vi /data/image/deamon.sh 拷贝脚本 #!/bin/bash test(){ while true do echo `date` >> /data/image/log.txt sleep 5 done } case $1 in start) path="/root/shouhu.pid" if [ -f $path ]; then pid=`cat /data/image/deamon.pid` echo "pid $pid running..." else test & echo $! > /data/image/deamon.pid echo "running $!..." fi ;; stop) pid=`cat /data/image/deamon.pid` if [ -z pid ] then kill -9 $pid echo "stop $pid..." rm -rf /data/image/deamon.pid fi ;; restart) path="/data/image/deamon.pid" if [ -f "$path" ];then pid=`cat /data/image/deamon.pid` kill -9 $pid echo " stop $pid..." rm -rf /data/image/deamon.pid test & echo $! > /data/image/deamon.pid echo " restart $!..." else echo "not run..." test & echo $! > /data/image/deamon.pid echo "run $!..." fi ;; status) path="/data/image/deamon.pid" if [ -f $path ];then pid=`cat /data/image/deamon.pid` echo "$pid running..." else echo "not running..." fi ;; *) echo "Usage:{start|stop|restart|status}" ;; esac 2.修改文件为可执行 chmod +x deamon.sh 3.到/usr/lib/systemd/system下创建test-deamon.service ? ? ? ?CentOS 7的服务systemctl脚本存放在:/usr/lib/systemd/,有系统(system)和用户(user)之分,需要开机不登陆就能运行的程序,存在系统服务里,即:/usr/lib/systemd/system目录下。每一个服务以.service结尾,一般会分为3部分:[Unit]、[Service]和[Install] [Unit] Description=way test After=network.target [Service] Type=forking PIDFile=/data/image/deamon.pid ExecStart=/data/image/deamon.sh start ExecReload=/data/image/deamon.sh restart ExecStop=/data/image/deamon.sh stop PrivateTmp=true Restart=on-failure RestartSec=1s [Install] WantedBy=multi-user.target
4.启动守护线程 systemctl enable test-deamon.service #查看状态 systemctl status test-deamon.service 启动 systemctl start test-deamon.service 5.验证杀掉进程是否跑起来 ? ? docker容器需要加上? --privileged=true 和?/usr/sbin/init docker run -i -t -d --privileged=true -v /usr/local/cpp/matching${index}:/usr/local/cpp/matching -v /data/Image-Storage-Application${index}:/data/Image-Storage-Application${index} -v /data/log/storage${index}:/data/log/storage${index} -p ${port}:${port} --network=arcloud_net --link eureka:eureka-server --name=vlad1 yangzhiran/images-pretty:1.0.0 /usr/sbin/init
? ? 参考: ? systemd - CentOS 7进程守护&监控? centos7用shell创建守护进程,并设置为系统服务,开机自动启动(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
推荐文章
站长推荐
热点阅读