发表于 2018-5-12 06:06:14

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]
查看完整版本: linux系统组成之小型RedHat little linux制作二