精品丰满熟女一区二区三区_五月天亚洲欧美综合网_亚洲青青青在线观看_国产一区二区精选

  • <menu id="29e66"></menu>

    <bdo id="29e66"><mark id="29e66"><legend id="29e66"></legend></mark></bdo>

  • <pre id="29e66"><tt id="29e66"><rt id="29e66"></rt></tt></pre>

      <label id="29e66"></label><address id="29e66"><mark id="29e66"><strike id="29e66"></strike></mark></address>
      學(xué)習(xí)啦>學(xué)習(xí)電腦>操作系統(tǒng)>Linux教程>

      initramfs鏡像命令如何生成及運行

      時間: 若木635 分享

        生成initramfs鏡像命令

        若鏡像根目錄為/initrd,執(zhí)行下面命令在當(dāng)前用戶主文件夾中生成myinitramfs.gz鏡像。

        cd /initrd

        find .|cpio -o -H newc|gzip>~/myinitramfs.gz

        生成的鏡像文件是gzip壓縮過的。

        如何運行initramfs

        如果第一章開發(fā)工具學(xué)習(xí) 你會了的話,這是很好辦的事。首先要找一個內(nèi)核,自己編譯一個也可以,用現(xiàn)有l(wèi)inux系統(tǒng)內(nèi)核也可以,一般在/boot文件夾內(nèi)。

        設(shè)置一個menu.lst加入對自己制作的initrd的啟動項,可以如下:

        title my initramfs

        root (hd0,0)

        kernel /boot/vmlinuz

        initrd /boot/myinitramfs.gz

        boot

        其中內(nèi)核和鏡像都放到了U盤的boot文件夾下了。

        其實啟動方法有很多,對于熟悉GRUB的人來說這很簡單,所以多了解一點GRUB還是很好的。

        這樣的好處是不用重啟系統(tǒng),如果在linux中設(shè)置grub的話要重啟系統(tǒng),很費時間。

        生成initrd鏡像

        下面是一個shell文件,可以自動將/initrd目錄下的文件打包成myinitrd.img鏡像。

        #!/bin/sh

        dd if=/dev/zero of=/dev/ram1

        mke2fs -m 0 /dev/ram1

        mount /dev/ram1 /mnt/ram

        cp -R /initrd/* /mnt/ram

        umount /dev/ram1

        dd if=/dev/ram1 of=~/myinitrd.img

        gzip -v9 ~/myinitrd.img

        生成位置為當(dāng)前用戶主文件夾。

        RedHat的initrd

        下面是鏡像中的linuxrc文件。

        #!/bin/nash

        echo "Loading scsi_mod.o module"

        insmod /lib/scsi_mod.o

        echo "Loading sd_mod.o module"

        insmod /lib/sd_mod.o

        echo "Loading BusLogic.o module"

        insmod /lib/BusLogic.o

        echo "Loading jbd.o module"

        insmod /lib/jbd.o

        echo "Loading ext3.o module"

        insmod /lib/ext3.o

        echo Mounting /proc filesystem

        mount -t proc /proc /proc

        echo Creating block devices

        mkdevices /dev

        echo Creating root device

        mkrootdev /dev/root

        echo 0x0100 > /proc/sys/kernel/real-root-dev

        echo Mounting root filesystem

        mount -o defaults --ro -t ext3 /dev/root /sysroot

        pivot_root /sysroot /sysroot/initrd

        umount /initrd/proc

        pivot_root是切換到真實系統(tǒng)的一個命令下面有詳細(xì)講述。下面是redhat鏡像中的所有文件的結(jié)構(gòu):

        │ linuxrc

        │

        ├─bin

        │ insmod

        │ nash

        │

        └─lib

        BusLogic.o

        ext3.o

        jbd.o

        scsi_mod.o

        sd_mod.o

      75382