博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
CentOS6.5 添加开机自启动脚本
阅读量:6974 次
发布时间:2019-06-27

本文共 1238 字,大约阅读时间需要 4 分钟。

 

有时候我们需要Linux系统在开机的时候自动加载某些脚本或系统服务。在解问题之前先来看看Linux的启动流程。

 

一、Linux的启动流程

 

主要顺序就是: 

1. 加载内核 
2. 启动初始化进程 
3. 确定运行级别 
4. 加载开机启动程序 
5. 用户登录

启动流程的具体细节可以看看

第4步加载启动程序其实是两步:

  1. init进程逐一加载开机启动程序,其实就是运行指定目录里的启动脚本。
  2. 在运行完指定目录里面的程序后init进程还会去执行/etc/rc.local 这个脚本。

ps:“指定目录”是指在第3步中设置的运行级别对应的目录。

要完成我们的需求,我们使用第4步中的任意一种方式都可以。

下面分别就是这两种方式的具体实现:

 

 

二、chkconfig

1. 编写脚本autostart.sh(这里以开机启动redis服务为例),脚本内容如下:

#!/bin/sh#chkconfig: 2345 80 90#description:开机自动启动的脚本程序# 开启redis服务 端口为6379/usr/local/service/redis-2.8.3/src/redis-server --port 6379 &

脚本第一行 “#!/bin/sh” 告诉系统使用的shell; 

脚本第二行 “#chkconfig: 2345 80 90” 表示在2/3/4/5运行级别启动,启动序号(S80),关闭序号(K90); 
脚本第三行 表示的是服务的描述信息

注意: 第二行和第三行必写,负责会出现如“服务 autostart.sh 不支持 chkconfig”这样的错误。

2. 将写好的autostart.sh脚本移动到/etc/rc.d/init.d/目录下

3. 给脚本赋可执行权限

cd /etc/rc.d/init.d/chmod +x autostart.sh

4. 添加脚本到开机自动启动项目中

chkconfig --add autostart.shchkconfig autostart.sh on

 

到这里就设置完成了,我们只需要重启一下我们的服务器,就能看到我们配置的redis服务已经可以开机自动启动了。

 

 

三、修改/etc/rc.local脚本

末尾加入如下语句

/usr/local/service/redis-2.8.3/src/redis-server --port 6379 &

 

切忌 命令行末尾要加上 [  &  ] 符号(), 表示任务在后台执行。否则会阻塞后面添加的命令行执行。

 

 

完毕。

 

 

 

 

PS:

https://blog.csdn.net/karchar/article/details/52489572

https://blog.csdn.net/daidaineteasy/article/details/54864776

https://blog.csdn.net/chinabestchina/article/details/72686002

 

你可能感兴趣的文章
QQ邮箱如何设置SMTP代理收发邮件
查看>>
二叉树的应用详解 - 数据结构
查看>>
JDBC学习笔记(1)——JDBC概述
查看>>
cannot create windows service for mysql
查看>>
iOS 中实现功能引导页面
查看>>
3年路漫漫,告别老东家
查看>>
呼吁身份证号码识别生日的问题
查看>>
函数依赖的公理化系统
查看>>
open Command window here
查看>>
Spring boot 启动过程解析 logback
查看>>
@ActiveMQ简单介绍以及安装
查看>>
php实现简单视图模板(视图引擎)
查看>>
[改善Java代码]多线程使用Vector或HashTable
查看>>
Linux开机禁用开启防火墙
查看>>
js事件之event.preventDefault()与event.stopPropagation()用法区别
查看>>
Ubuntu 上 执行命令 java -version 显示 没有那个文件或目录
查看>>
jQuery补充之jQuery扩展/form表单提交/滚动菜单
查看>>
Html5拖拽复制
查看>>
Intel Code Challenge Elimination Round (Div.1 + Div.2, combined) A. Broken Clock 水题
查看>>
An attempt was made to load a program with an incorrect format
查看>>