设为首页 收藏本站
查看: 764|回复: 0

[经验分享] linux系统组成之小型RedHat little linux制作三

[复制链接]

尚未签到

发表于 2018-5-12 06:06:17 | 显示全部楼层 |阅读模式
本文中接“linux系统组成之小型RedHat little linux制作二”
  1、在rc036.d内增加相关的连接

  •   mkdir rc3.d
  •   cd rc3.d
  •   ln -sv ../init.d/tserver S66tserver
  •   cd rc0.d
  •   ln -sv ../init.d/tserver K33tserver
  •   cd rc6.d
  •   ln -sv ../init.d/tserver K33tserver
  •   修改inittab
  •   id:3:initdefault:
  •   si::sysinit:/etc/rc.d/rc.sysinit
  •   l0:0:wait:/etc/rc.d/rc 0
  •   l3:3:wait:/etc/rc.d/rc 3
  •   l6:6:wait:/etc/rc.d/rc 6
  •   1:2345:respawn:/sbin/mingetty --loginprog=/bin/bash tty1
  •   2:2345:respawn:/sbin/mingetty --loginprog=/bin/bash tty2
  •   loginprog运行依赖/bin/sh.把bin下的bash连接为sh即可实现
  •   修改rc.d/rc.sysinit为
  •   #!/bin/bash
  •   #
  •   echo "welecome chris little linux"
  2、增加主机名显示
None--代表没有主机名:
  

  •   mkdir -p etc/sysconfig/network
  •   vim nerwork增加
  •   HOSTNAME=chris.linux
  •   新增etc/fstab文件并配置
  •   sysfs                   /sys                    sysfs   defaults        0 0
  •   proc                    /proc                   proc    defaults        0 0
  •   /dev/hda1               /boot                   ext3    defaults        0 0
  •   /dev/hda2               /                       ext3    defaults        1 1
  •   让其以读写的方式重新挂载根系统并增加主机名vim inittab
  •   #!/bin/bash
  •   #
  •   echo "welecome chris little linux"
  •   mount -n -o remount:rw /
  •   echo "set the hsotname"
  • [ -f /etc/sysconfig/network ] && . /etc/sysconfig/network

  • [ -z $HOSTNAME -o "$HSOTNAME" == '(none)' ] && HOSTNAME=localhost

  •   /bin/hostname $HOSTNAME
  

测试如下:
DSC0000.png


开启虚拟终端:
  
由于mingetty需要用户登陆,下面利用agetty来进行登陆验证
利用脚步addshell移植agetty命令



  •   修改inittab文件
  •   id:3:initdefault:
  •   si::sysinit:/etc/rc.d/rc.sysinit
  •   l0:0:wait:/etc/rc.d/rc 0
  •   l3:3:wait:/etc/rc.d/rc 3
  •   l6:6:wait:/etc/rc.d/rc 6
  •   1:2345:respawn:/sbin/agetty -n -l /bin/bash 38400 tty1
  •   2:2345:respawn:/sbin/agetty -n -l /bin/bash 38400 tty2
  Tty 1终端
DSC0001.png
Tty 2终端
DSC0002.png
5、定义系统启动过程中显示的服务启动信息的脚本function


  •   #!/bin/bash
  •   #
  •   SCREEN=`stty -F /dev/console size 2>/dev/null`
  •   COLUN=${SCREEN#* }
  • [ -z $COLUN ] && COLUN=80

  •   SPA_COL=$[$COLUN-14]
  •   RED='\033[31m'
  •   GREEN='\033[32m'
  •   YELLOW='\033[33m'
  •   BLUE='\033[34m'
  •   RONMAL='\033[0m'
  •   success() {
  •   string=$1
  •   RT_SPA=$[$SPA_COL-${#string}]
  •   echo -n "$string"
  •   for I in `seq 1 $RT_SPA`; do
  •   echo -n " "
  •   done
  •   echo -e "[   ${GREEN}OK${RONMAL}   ]"
  •   }
  •   failure() {
  •   string=$1
  •   RT_SPA=$[$SPA_COL-${#string}]
  •   echo -n "$string"
  •   for I in `seq 1 $RT_SPA`; do
  •   echo -n " "
  •   done
  •   echo -e "[ ${RED}FAILED${RONMAL} ]"
  •   }
然后在tserver等服务脚本内调用function脚本,即可实现显示服务启动的信息等。



  •   #!/bin/bash
  •   #
  •   # chkconfig: 35 55 44
  •   # description: chris service
  •   #
  •   . /etc/rc.d/init.d/functions
  •   FILE=/var/lock/subsys/`basename $0`
  •   prog=`basename $0`
  •   start() {
  •   echo "starting `basename $0`..."
  •   touch $FILE
  • [ $? -eq 0 ] && success "Starting $prog" || failure "Starting $prog"

  •   }
  •   stop() {
  •   echo "stopping `basename $0`..."
  •   rm -rf $FILE
  • [ $? -eq 0 ] && success "Stopping $prog" || failure "Stopping $prog"

  •   }
  •   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

6、为小系统增加网功能(网卡驱动)

    虚拟机的网卡pcnet32的。先查找其驱动模块/pcnet32.ko,而且有依赖于mii.ko模块。
移植驱动模块
  
  mkdir -p /lib/modules
cd /lib/modules
modinfo pcnet32
cp /lib/modules/2.6.18-308.el5/kernel/drivers/net/pcnet32.ko modules/
modinfo mii
cp /lib/modules/2.6.18-308.el5/kernel/drivers/net/mii.ko modules/
配置rc.d/rc.sysinit文件
#!/bin/bash
#
echo "welecome chris little linux"
mount -n -o remount,rw /
  
echo "set the hsotname"
[ -f /etc/sysconfig/network ] && . /etc/sysconfig/network
[ -z $HOSTNAME -o "$HSOTNAME" == '(none)' ] && HOSTNAME=localhost
/bin/hostname $HOSTNAME
  echo "insmod pcnet32 mode"
/sbin/insmod /lib/modules/mii.ko
/sbin/inmod /lib/modules/pcnet32.ko
增加网卡配置文件etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
BOOTPROTO=static
IPADDR=172.16.7.4
NETMASK=255.255.0.0
GATEWAY=172.16.7.1
ONBOOT=yes

添加必须的配置

  •   配置etc/init.d/network
  •   #!/bin/bash
  •   #
  •   # chkconfig: 35 09 90
  •   # description:network servce
  •   . /etc/rc.d/init.d/functions
  •   CONF=/etc/sysconfig/network-scripts/ifcfg-eth0
  •   . $CONF
  •   start () {
  •   NETMASK=16
  •   ifconfig eth0 $IPADDR/$NETMASK up
  • [ -z $GATEWAY ] && route add default gw $GATEWAY

  •   }
  •   stop() {
  •   ifconfig eth0 down
  •   }
  •   status () {
  •   ifconfig eth0
  •   }
  •   usage() {
  •   ehco "like start,stop,restart"
  •   }
  •   case $1 in
  •   start)
  •   start
  •   success "config network eth0 "
  •   ;;
  •   stop)
  •   stop
  •   success "stop network eth0"
  •   ;;
  •   restart)
  •   stop
  •   Start
  •   success "restart network eth0"
  •   ;;
  •   status)
  •   status
  •   ;;
  •   *)
  •   usage
  •   ;;
  •   esac
  在rc.d下创建连接
rc0.d rc3.d rc6.d
cd rc0.d/
ln -sv ../init.d/network K90network
cd rc6.d/
ln -sv ../init.d/network K90network
cd rc3.d/
ln -sv ../init.d/network S09network
配置测序效果如下


DSC0003.png

DSC0004.png





  

  

  

  



  

  


  

  下文接“linux系统组成之小型RedHat little linux制作四”

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-458841-1-1.html 上篇帖子: linux系统组成之小型RedHat little linux制作二 下篇帖子: linux系统组成之小型RedHat little linux制作四
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表