如何快速写个启动脚本,主要通过如下几部

1,逻辑捋顺

  • 可以在txt文件中,已伪代码的方式,形成体系,罗列顺序,然后在一点点补充代码

  • 通过PID 进程文件,判断程序是否运行

  • 设置3个模块(开启,关闭,重新加载)

  • 然后在用case语句 去调用这个3个模块 实现启动脚本功能

  • restart看进程号变化,reload看配置文件是否生效

2,脚本主体内容

[root@DB02]# cat /etc/init.d/nginx
#!/bin/bash
# chkconfig: 2345 32 62  #按照开机启动模板设定,32序列号 62系统等级
# description: Activates/Deactivates all network interfaces configured to \[ -f /etc/init.d/functions ] &&  . /etc/init.d/functions  #引用系统函数库
nginx=/application/nginx/sbin/nginx
Pidfile=/application/nginx/logs/nginx.pid
oldboy(){RETVAL=$?if [ $RETVAL -eq 0 ];thenaction "Nginx is $1" /bin/trueelseaction "Nginx is $1" /bin/falsefi
}
##no.1 定义启动模块
Start(){if [ -f $Pidfile ];thenecho "Nginx is running"else$nginxoldboy startedfi   return $RETVAL
}
##no.2 定义关闭模块
Stop(){if [ ! -f $Pidfile ];thenecho "nginx in not running"else$nginx -s stopoldboy stopedfi
}
##no.3 定义重新加载模块
Reload(){if [ ! -f $Pidfile ];thenecho "Cat't open $Pidfile ,no such file or directory"else$nginx -s reloadoldboy reloaed fi
}case "$1" instart)Start
;;stop)Stop
;;reload)Reload
;;restart)Stopsleep 2Start
;;*)echo "Usage: sh $0 {start|stop|reload|restart} "   exit 1
esac
exit   $RETVAL

3,把脚本放到/etc/init.d/ 下

3.1  查看服务自启动列表

[root@DB02 init.d]# chkconfig --list|grep nginx
[root@DB02 init.d]# chkconfig --list|grep mysql
mysqld         0:关闭1:关闭2:启用3:启用4:启用5:启用6:关闭

3.2 把脚本写入到/etc/init.d

[root@DB02 init.d]# cd /etc/init.d/
[root@DB02 init.d]# vi nginx   #内容见上面脚本

3.3 授权脚本 x执行权限

[root@DB02 init.d]# chmod +x nginx
[root@DB02 init.d]# ll nginx
-rwxr-xr-x 1 root root 1177 9月  26 15:45 nginx

4,添加开机自启动

[root@DB02 init.d]# chkconfig nginx on
service nginx does not support chkconfig   ##报错,没有把nginx文件,添加到开机自启动里面
[root@DB02 rc3.d]# chkconfig --list|grep nginx
nginx           0:关闭    1:关闭    2:启用    3:启用    4:启用    5:启用    6:关闭

4.1测试

[root@DB02 rc3.d]# /etc/init.d/nginx start
Nginx is running

另外一种,开机自启动方法,可以把启动内容放到 /etc/rc.local文件中,主要要使用绝对路径

转载于:https://blog.51cto.com/qiuyt/1968880

2分钟-实现开机nginx开机自启动脚本(shell篇)相关推荐

  1. centos 安装tomcat_简单介绍Linux配置mysql,tomcat,Nginx 开机自启动的几个方式

    概述 一般我们打算把一些服务,例如 mysql,tomcat,Nginx设置开机自启动的话一般是有三四种方式来实现,下面以mysql,tomcat,Nginx做例子来演示. 一.使用定时任务 cron ...

  2. Linux(CentOS)系统下设置nginx开机自启动

    2019独角兽企业重金招聘Python工程师标准>>> Nginx 是一个很强大的高性能Web和 反向代理服务器.下面介绍在linux下安装后,如何设置开机自启动. 首先,在linu ...

  3. Linux定时任务与开机自启动脚本(cron与crontab)

    开机自启动脚本 网上常见的脚本开机自启方法是: 假设要自启的脚本位于 /home/user/test.sh 给脚本可执行的权限 sudo chmod +x /home/user/test.sh 将脚本 ...

  4. Linux定时任务与开机自启动脚本

    转载自:https://www.cnblogs.com/asche/p/10240994.html 开机自启动脚本 网上常见的脚本开机自启方法是: 假设要自启的脚本位于 /home/user/test ...

  5. 麒麟V10sp1轻松设置开机自启动脚本

    大家有没有经常碰到每次开机都需要花费5分钟去手动运行某个脚本的情况,是不是偶尔懒的动手,想开机之后自动运行.比如开机自动新建文件,自动清垃圾,自动打开qq,自动打开微信,自动打开浏览器,自动发送邮件诸 ...

  6. linux开发板开机自启动脚本,linux 添加开机自启动脚本

    Linux设置服务开机自动启动的方式有好多种,这里介绍一下通过chkconfig命令添加脚本为开机自动启动的方法. 1. 编写脚本autostart.sh(这里以开机启动redis服务为例),脚本内容 ...

  7. 开机自启动脚本_Linux配置开机自启动执行脚本的两种方法

    代码来源:oschina 原文作者:醉生梦死zsms 原文链接:https://my.oschina.net/u/3285916/blog/1622358 本文版权归原作者所有,如有侵权请立即与我联系 ...

  8. bash 脚本中激活conda环境_ubuntu18.10目标检测算法环境部署+开机自启动脚本创建screen下的web服务...

    内容概要 cuda+cudnn+python环境安装 ubuntu18的开机自启动脚本 screen服务开启 以我个人的实践来看,把python开发的算法封装成webserver的服务供前端程序调用是 ...

  9. linux开机自动启动(自启动)脚本、程序(初始化脚本)(海康摄像头自启动程序)

    文章目录 原 20220225 寻找海康摄像头armv7l自启动脚本 /etc/init.d/rcS /etc/init.d/rc.local /etc/profile /usr/etc/rc.loc ...

最新文章

  1. 获取oracle数据库war报告,Oracle 数据库开发及SQL基础实战
  2. 思科宣布NB-IoT平台实现商用
  3. WinForm资源文件使用
  4. ASP.NET dropdownlist绑定数据却显示System.Data.DataRowView
  5. 幸福的2016-----年终总结
  6. META http-equiv=X-UA-Compatible content=IE=EmulateIE7
  7. C++实现邻接表存储的图及bfs遍历
  8. hdu1247(Hat’s Words)
  9. Qt中使用OpenSSL
  10. Django中--使用redis存储历史浏览记录
  11. php实现身份证号码获取归属地地址的实列教程,含完整全国地区归属数据!
  12. c模拟内存分配算法(首次适应算法,最佳适应算法,最坏适应算法)
  13. 重构图书馆惊魂夜(理解模型,关注设计)
  14. delphi2007很卡_提升Delphi编程效率必须使用的快捷键(Delphi2007版本)
  15. Android_Kotlin原生开发_认识Kotlin_了解Kotlin和JVM虚拟机关系_认识Kotlin的重要性_更强大的跨平台特性_不需要JVM虚拟机也可跨平台---Kotlin工作笔记001
  16. Protobuf3详细介绍
  17. python基础语法总结(超详细)
  18. Coursera | 离散数学概论(北大)| quiz答案
  19. python 概率分布_Python中的联合概率分布
  20. 梁文道:盗版电影网站死去,我们仍然不见光明

热门文章

  1. 基于 MVP 的 Android 组件化开发框架实践 1
  2. 阿里研究院:解读互联网经济十大议题
  3. Android开发学习——基础学习
  4. spring整合shiro
  5. Linux GDB Debugging
  6. 基于HTML5的网络拓扑图 - 设备状态面板
  7. 移动老总上厕所!!!让你爽歪歪!!
  8. 移动硬盘无法访问,要怎么找到文件
  9. 查询数据库中表的空间使用情况
  10. URL,URLConnection,HttPURLConnection的使用