Linux开机自动启动脚本方法
来源:互联网 发布:mac npm安装gulp 编辑:程序博客网 时间:2024/05/27 20:39
redhat的启动方式和执行次序是:
加载内核
执行init程序
/etc/rc.d/rc.sysinit # 由init执行的第一个脚本
/etc/rc.d/rc $RUNLEVEL # $RUNLEVEL为缺省的运行模式
/etc/rc.d/rc.local #相应级别服务启动之后、在执行该文件(其实也可以把需要执行的命令写到该文件中)
/sbin/mingetty # 等待用户登录
在Redhat中,/etc/rc.d/rc.sysinit主要做在各个运行模式中相同的初始化工作,包括:
调入keymap以及系统字体
启动swapping
设置主机名
设置NIS域名
检查(fsck)并mount文件系统
打开quota
装载声卡模块
设置系统时钟
等等。
/etc/rc.d/rc则根据其参数指定的运行模式(运行级别,你在inittab文件中可以设置)来执行相应目录下的脚本。
凡是以Kxx开头的,都以stop为参数来调用;
凡是以Sxx开头的,都以start为参数来调用。
调用的顺序按xx从小到大来执行。(其中xx是数字、表示的是启动顺序)
例如,
假设缺省的运行模式是3,/etc/rc.d/rc就会按上述方式调用
/etc/rc.d/rc3.d/下的脚本。
值得一提的是,Redhat中的运行模式2、3、5都把/etc/rc.d/rc.local做为初始化脚本中的最后一个,
所以用户可以自己在这个文件中添加一些需要在其他初始化工作之后,登录之前执行的命令。
init在等待/etc/rc.d/rc执行完毕之后
(因为在/etc/inittab中/etc/rc.d/rc的action是wait),
将在指定的各个虚拟终端上运行/sbin/mingetty,等待用户的登录。
至此,LINUX的启动结束。
方法一
将自己写好的脚本或命令写入/etc/rc.local文件中。系统会根据该文件来启动所指定的脚本或命令。
下面为httpd服务做了一个启动脚本。
功能:在Linux系统启动时检查httpd服务是否启动成功,如果服务已启动,将日志写入log。如果没有启动,则立即启动httpd服务,并将日志写入log。
[web@info data]$ vi/data/http.sh
#/bin/bash
log_file=/data/http_state.log
echo "" >$log_file;
http_status=`netstat -nat|grep 80|awk {print $4}`
port=`echo ${http_status:3:3}`;
#echo $port;
if [ "${port}" == "80" ]; then
fi
将写好的脚本加入/etc/rc.local中
[web@info data]$
/data/http.sh
[web@info data]$ cat /data/http_status.log
http server stop!
[web@info data]$ netstat -nat|grep 80
tcp
方法二
通过启动脚本来创建一个服务,使用chkconfig来指定启动服务的级别,并在ntsysv工具下加载让其自动运行。
[root@info ~]# cp /etc/rc.d/init.d/httpd /etc/init.d/aparche
[root@info ~]# chmod +x /etc/init.d/aparche
[root@info ~]# chkconfig --list aparche
aparche 服务支持 chkconfig,但它在任何级别中都没有被引用(运行“chkconfig --add aparche”)
[root@info ~]# chkconfig --add aparche
[root@info ~]# chkconfig --list aparche
aparche
[root@info ~]# chkconfig --level 2345 aparche on
[root@info ~]# service aparche start
启动 httpd:httpd: Could not determine the servers fully qualified domain name, using 127.0.0.1 for ServerName
[root@info ~]# ntsysv
lqqqqqqqqqqqqu 服务 tqqqqqqqqqqqqk
方法三
在 /home/用户/.bash_profile文件中
[root@info ~]# cat /home/web/.bash_profile
# .bash_profile
# Get the aliases and functions
if [ -f ~/.bashrc ]; then
fi
# User specific environment and startup programs
PATH=$PATH:$HOME/bin
/usr/sbin/httpd
- linux 开机自动启动脚本方法
- linux 开机自动启动脚本方法
- linux 开机自动启动脚本方法
- Linux开机自动启动脚本方法
- linux开机自动启动脚本
- linux开机自动启动脚本
- linux开机自动启动脚本
- linux开机自动启动脚本
- linux开机自动启动脚本
- linux开机自动启动脚本
- linux开机自动启动脚本
- linux开机自动启动脚本
- linux下添加自动启动项,linux 开机自动启动脚本方法
- linux下添加自动启动项及设置开机自动启动脚本方法
- linux 自己编写脚本,开机自动启动
- linux开机启动自动执行某个脚本
- linux程序开机自动启动方法
- linux程序开机自动启动方法
- 我眼中的并查集
- 解读淘宝”搜刮九年夜规矩“,让流量爆棚(新店也可以哦)
- 【LeetCode】Binary Tree Level Order Traversal
- iOS开发系列--打造自己的“美图秀秀”
- linux下裁剪ffmpeg移植到 Android
- Linux开机自动启动脚本方法
- 设置界面以及清理缓存的实现
- WebView适配问题集锦
- 使用regsvr32出现“D:\npdemo.all”加载失败记录
- 四行代码MFC实现电脑关机
- Kinect开发教程三:利用OpenNI进行手势识别
- Android之项目推荐使用的第三方库
- 如何使用glog
- 15款值得学习的小型开源项目