zoukankan      html  css  js  c++  java
  • 基于红帽5裁剪一个简单的Linux

      HOST:宿主机

      Target:目标机

      1.基于HOST制作一个简单的可启动的Linux

        1.给目标磁盘分区

          两个:

            在宿主机上:/dev/sdb1,/dev/sdb2

            /dev/sdb1挂载到 /mnt/boot

            /dev/sdb2挂载到 /mnt/sysroot

        2.安装grub至目标磁盘

          #grub-install --root-directory=/mnt /dev/sdb

        

        3.复制内核和initrd文件

          #cp /boot/vmlinuz-VERSION /mnt/boot/vmlinuz

          #cp /boot/initramfs-VERSION.img /mnt/boot/initramfs-VERSION.img

        4.创建目标主机的根文件系统

          #mkdir -pv /mnt/sysroot{etc/rc.d,usr,var,proc,sys,dev,lib,lib64,bin.sbin,boor,srv,mnt,media,home,root}

             #移植bash等至目标机的根文件系统

        5.为grub提供配置文件

          # /mnt/boot/grub/grub.conf

           default=0

           timeout=5

           title My new tiny Linux

            root(hd0,0) 

            kernel /vmlinuz ro root=/dev/sda2 quiet selinux=0 init=/bin/bash

            initrd /initramfs.img

        6.编辑init

          #cd /mnt/sysroot

          #vim sbin/init

              

    #!/bin/bash
    #
    echo -e "	Welcome to 33[34m My new tiny 33[0m Linux"
    mount -n -t proc /proc
    mount -n -t sysfs sysfs /sys
    insmod /lib/modules/e1000.ko
    [ $0 -eq 0 ] && echo -e "Load e1000 moduel succeeded [33[32m ok 33[0m]"
    ifconig lo 127.0.0.1/8
    ifconfig eth0 192.168.19.128/16
    mount -n -o remount,rw /dev/sda2 / /bin/bash

          #chmod +x sbin/init

          #vim /mnt/boot/grub/grub.conf

    default=0
    timeout=5
    title My new tiny Linux
        root(hd0,0)
        kernel /vmlinuz ro root=/dev/sda2 selinux=0 init=/sbin/init
        initrd=/initramfs.img
    

      #sync

      最后,目标机使用新的硬盘启动

  • 相关阅读:
    搭建Jumpserver
    支付功能流程图
    我是如何招聘程序员的
    从问题域看hadoop的各种技术
    转一篇做BI项目的好文
    关于数据倾斜的问题
    技能的十一个级别
    企业计划体系的变迁:从ERP到APS再到SCP
    别浪费自己的高学历
    一个CTO谈自己的技术架构体系
  • 原文地址:https://www.cnblogs.com/jixingke/p/6050072.html
Copyright © 2011-2022 走看看