Chinaunix首页 | 论坛 | 博客
  • 博客访问: 584109
  • 博文数量: 95
  • 博客积分: 1573
  • 博客等级: 上尉
  • 技术积分: 1030
  • 用 户 组: 普通用户
  • 注册时间: 2011-12-23 10:46
个人简介

hello world!

文章分类

全部博文(95)

文章存档

2014年(1)

2013年(44)

2012年(50)

分类: LINUX

2013-02-27 13:57:54

一、利用U盘安装系统

U盘作为安装媒介代替光盘安装,整个制作过程引导U盘的程序(grub)至关重要和ISO中需要的部分文件拷贝出放入对应的目录,如vmlinuxzinitrd.imgks.cfg images/install.img。制作过程如下:
1.
准备U盘,使用分区工具cfdisk U盘分出一个4G分区(可以放入ISO 和需要文件,根据自己需求定)

”cfdisk /dev/sdb “     注:U盘设备
2.
分区完成后格式化分区
                mkfs.vfat /dev/sdb1
3.
创建目录
    
把制作好的U盘手动挂在/mnt目录下面             
        mkdir -p /mnt/{boot/grub ,images}
4.
把文件放入对应目录
    1>grub
引导文件放入/mnt/boot/grub/目录下:

e2fs_stage1_5ffs_stage1_5  iso9660_stage1_5minix_stage1_5stage1ufs2_stage1_5xfs_stage1_5fat_stage1_5grub.confjfs_stage1_5reiserfs_stage1_5stage2vstafs_stage1_5

stage1   /boot/grub中的stage1文件大小为512b,它是引导扇区中引导程序(前446字节为引导程序)的备份文件,功能是用来装载 stage1.5stage2的。

stage1_5 stage1并不能识别文件系统格式,stage1.5引导位于e2fs_stage1_5fat_stage1_5,分别用于识别extfat的文件系统格式

stage2grub能让用户以选项方式将OS加载、改变参数、修改选项,这些全都是stage2程序的功能。

stage2可以去获取grub.conf以及menu.lst等文件的内容。
     2>ISO
文件放入
        cp -R  ISO
目录/isolinux/{vmlinuz,initrd.img}   /mnt/boot/
        cp -R  ISO
目录/images/install.img /mnt/images/
        cp -R  ISO
目录/ks.cfg  /mnt/ks.cfg
5.
生成grub引导
       1>  grub
       2>  root (hd1,0)
注:hd1U盘设备,0hd1的第一个分区
       3>  setup (hd1)
       4>  quit
完成操作。

grub.conf
文件需要如下:
default=0
timeout=5
hiddenmenu
title fedora-13
       root (hd0,1)
       kernel /boot/vmlinuz ks=hd:sda2/ks.cfg repo=hd:sda2:/
       initrd /boot/initrd.img
title fedora-17
       root (hd0,1)             
       kernel /images/pxeboot/vmlinuz  repo=hd:/dev/sda2:/
       initrd /images/pxeboot/initrd.img

二、U盘运行 Live OS

1、将LiveCD中的isolinuxLiveOS文件夹解压出来放在放在EXT2/EXT3FAT32分区指定目录下。例如,我将其放入U盘的第二个分区下的/Fedora17-LiveOS下。

#mount -o loop Fedora-17-i686-Live-Desktop.iso /mnt

#mkdir Fedora17-LiveOS

#cp /mnt/* Fedora17-LiveOS/

2、修改grub的引导项。如下

title Fedora17-LiveOS

       root (hd0,1)
              kernel /Fedora17-LiveOS/isolinux/vmlinuz0 root=UUID=0C02-A283 live_dir=/ Fedora17-LiveOS /LiveOS/ liveimg quiet rhgb rootfstype=auto 
              initrd /Fedora17-LiveOS/isolinux/initrd0.img

即可。


经多次折腾测试,最精炼的Fedora-17-i686-Live-Desktop硬盘系统的炼成法是:

提取Fedora-17-i686-Live-Desktop.iso中的LiveOS整个文件夹及内容放到一vfat或FAT32格式分区的根目录下,并提取Fedora-17-i686-Live-Desktop.isoisolinuxinitrd0.imgvmlinuz0到目标分区文件夹LiveOS内。并编辑启动程序加入如下菜单:

title Fedora17-LiveOS

       root (hd0,1)

       kernel /LiveOS/vmlinuz0 root=UUID=0C02-A283 liveimg quiet rhgb rootfstype=auto

       initrd /LiveOS/initrd0.img


#kernel /LiveOS/vmlinuz0 root=live:/dev/sda2 liveimg quiet rhgb rootfstype=auto,最好不要采用“root=/dev/sda2告诉内核的根文件系统所在位置,因为如果有多个存储设备时,sda还是sdb是不确定的。使用UUID号指定,肯定不会出问题。

重启选择这引导菜单即可进入了LiveOS

以上配置,可以正常使用Liveusb,但是运行系统后,不能保存用户设置。进行下一步,则可以保存用户数据。

3、创建 overlay 文件

运行 su -c "livecd-iso-to-disk --overlay-size-mb 512 Fedora-16-x86_64-Live-Desktop.iso /dev/USBPARTITIONNAME"

可以直接制作好liveusb,参考制作好的效果。我们手动创建persistent data storage area

LiveOS目录下:

# dd if=/dev/zero of=overlay-JIE-775B-EDA3 count=1024 bs=1M

Overlay 文件的格式为:overlay-LABEL-UUID

然后在 grub.conf 中添加2个内核参数:rw overlay=UUID=775B-EDA3

可以保存用户设置的Liveusb制作完成。


完整的grub.conf

default=0

timeout=10

splashimage=(hd0,1)/boot/grub/splash.xpm.gz

#splashimage=(hd0,1)/boot/grub/2.xpm.gz

hiddenmenu

title NeoKylin_install f17

    root (hd0,0)

    kernel /images/pxeboot/vmlinuz repo=hd:/dev/sdc1:/

    initrd /images/pxeboot/initrd.img


title NeoKylin_install f13

    root (hd0,0)

    kernel /boot/vmlinuz ks=hd:sdc1/ks.cfg repo=hd:/dev/sdc1:/

    initrd /boot/initrd.img

 

title Fedora17-LiveOS

    root (hd0,0)

    #kernel /Fedora13-Live/isolinux/vmlinuz0 root=UUID=3DB8-C873 live_dir=/Fedora13-Live/LiveOS liveing rhgb rootfstype=auto

    kernel /LiveOS-fc17/vmlinuz0 root=UUID=775B-EDA3 live_dir=/LiveOS-fc17/ liveimg  rhgb rootfstype=auto splash

    #kernel (hd0,0)/LiveOS/vmlinuz0 root=UUID=3DB8-C873 liveing rhgb rootfstype=auto

    initrd /LiveOS-fc17/initrd0.img

    #initrd LiveOS/initrd0.img

 

title Neokylin-LiveOS

    root (hd0,0)

    #kernel /LiveOS/vmlinuz0 root=UUID=775B-EDA3 liveimg  rhgb rootfstype=auto splash

    #kernel /LiveOS/vmlinuz0 root=LABEL=JIE liveimg  rhgb rootfstype=auto splash rw overlay=UUID=775B-EDA4 rdinitdebug

    kernel /LiveOS/vmlinuz0 root=live:LABEL=JIE liveimg  rhgb rootfstype=auto splash rw overlay=UUID=775B-EDA3

    initrd /LiveOS/initrd0.img

阅读(3817) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~