linux系统组成之小型RedHat little linux制作二
本篇是在上篇“linux系统组成之小型RedHat little linux制作一”的基础上对微型小系统进一步完善,使其实现关机、重启等功能⑴、通过脚本使其微型系统实现关机、重启
[*] 修改inittab文件,新增
[*] l0:0:wait:/etc/rc.d/rc 0
[*] l6:6:wait:/etc/rc.d/rc.6
[*] 增加rc.hald 脚本
[*] #!/bin/bash
[*] #
[*] case $0 in
[*] *reboot)
[*] COMMAND='/sbin/reboot'
[*] ;;
[*] *halt)
[*] COMMAND='/sbin/halt -p' ;;
[*] *)
[*] echo "only call thsi script *reboot *halt"
[*] ;;
[*] esac
[*] exec $COMMAND
[*] 增加执行权限
[*] chmod +x rc.halt
[*] 创建相关的连接文件
[*] cd /mnt/sysroot/etc/irc.d/nit.d
[*] mkdir rc0.d rc6.d
[*] cd rc0.d/
[*] ln -sv /mnt/sysroot/etc/rc.d/init/.d/rc.halt S99halt
[*] cd rc6.d/
[*] ln -sv /mnt/sysroot/etc/rc.d/init.d/rc.halt S99reboot
在rc.d目录内创建一个rc脚本,用其脚本来实现对S*服务进行start,K*的服务进行stop的功能,详细如下:
在rc0、3、6.d内增加相关的连接--"linux系统组成之小型RedHat little linux制作三"
[*] #!/bin/bash
[*] #
[*] RUNLEVEL=$1
[*] for I in /etc/rc.d/rc$RUNLEVEL.d/K*; do
[*] $I stop
[*] done
[*] for I in /etc/rc.d/rc$RUNLEVEL.d/S*; do
[*] $I start
[*] done
修改inittab文件,新增
l0:0:wait:/etc/rc.d/rc 0
l6:6:wait:/etc/rc.d/rc.6
运行第三级别修改inittab增加
l3:3:wait:/etc/rc.d/rc 3
增加一个测试脚本tserver来测试第三级别的运行情况
[*] #!/bin/bash
[*] #
[*] # chkconfig: 35 55 44
[*] # description: chris service
[*] #
[*] FILE=/var/lock/subsys/`basename $0`
[*] start() {
[*] echo "starting `basename $0`..."
[*] touch $FILE
[*] }
[*] stop() {
[*] echo "stopping `basename $0`..."
[*] rm -rf $FILE
[*] }
[*] status() {
[*] if [ -e $FILE ]; then
[*] echo "Running.."
[*] else
[*] echo "stopping..."
[*] fi
[*] }
[*] usage() {
[*] echo "please insernt like start|stop|restart|status"
[*] }
[*] case $1 in
[*] start)
[*] start ;;
[*] stop)
[*] stop ;;
[*] restart)
[*] stop
[*] start
[*] ;;
[*] status)
[*] status
[*] ;;
[*] *)
[*] usage
[*] exit 1
[*] ;;
[*] esac
页:
[1]