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

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

  • 相关阅读:
    SLA打印机之打印机介绍
    SLA打印机之Slc文件解析
    Rayland-FDM打印机C200介绍
    Android 关机和重启
    AGVS调度系统 控制协议
    AGV 控制协议
    Android wechat 分享
    Android wechat 支付
    Android TimeoutExceptions及 wakelock
    flex 兼容性写法
  • 原文地址:https://www.cnblogs.com/jixingke/p/6050072.html
Copyright © 2011-2022 走看看