开机关机功能添加
开机关机功能配置流程
编辑/mnt/sysroot/etc/inittab配置文件添加以下内容:
l0:0:wait:/etc/rc.d/rc 0
l6:6:wait:/etc/rc.d/rc 6
在/mnt/sysroot/etc/rc.d/init.d/目录下创建一个脚本halt内容如下:
#!/bin/bash
#
case $0 in
*reboot)
COMMAND='/sbin/reboot' ;;
*halt)
COMMAND='/sbin/halt -p' ;;
*)
echo "Only call this script by *reboot OR *halt;"
;;
esac
exec $COMMAND
chmod +x /mnt/sysroot/etc/rc.d/init.d/halt 添加脚本执行权限
在rc.d目录下创建rc0.d与rc6.d目录:
进入rc0.d目录创建链接:
ln -sv ../init.d/halt S99halt
进入rc6.d目录创建链接:
ln -sv ../init.d/halt S99reboot
在/mnt/sysroot/etc/rc.d/目录下创建rc脚本,内容如下(这里的rc脚本简单的定义了一下)
#!/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
chmod +x /mnt/sysroot/etc/rc.d/rc 添加脚本执行权限
每一个步骤的完成建议都要测试一下,这样能更容易排错,并且容易熟悉一个功能的执行流程
切换级别自动开启或关闭相关服务的功能添加
在inittab中加入一个级别3
l3:3:wait:/etc/rc.d/rc 3
在init.d目录中创建一个服务脚本为tserver内容如下:
#!/bin/bash
#
# chkconfig: 35 66 33
# description: test service script
#
prog=tserver
lockfile=/var/lock/subsys/$prog
start() {
touch $lockfile
}
stop() {
rm -f $lockfile
}
status() {
if [ -f $lockfile ]; then
echo "Running..."
else
echo "Stopped..."
fi
}
usage() {
echo "Usage: $prog {start|stop|status|restart}"
}
case $1 in
start)
start ;;
stop)
stop ;;
restart)
stop
start
;;
status)
status
;;
*)
usage
exit 1
esac
添加执行权限 chmod +x /mnt/sysroot/rc.d/init.d/tserver
在/mnt/sysroot/etc/rc.d/目录下创建rc3.d目录在其中添加链接:
ln -sv ../init.d/tserver S66tserver
分别在rc0.d与rc6.d中添加链接:
ln -sv ../init.d/tserver K33tserver