如果U盘够大,可以在一个U盘安装slax,pclinuxos,Linux Mint,puppy Linux等多种live linux。移动硬盘原理相同,不做区分。
因为U盘常用来拷贝文件,fat格式在多种操作系统上通用,所以用grub4dos管理U盘引导。
把U盘格成HDD格式:
用U盘格式化工具(HPUSBFW.EXE )格式化U盘,FAT/FAT32 均可,格完之后就是 HDD 格式; 备选方案,用 WIN PM 、DiskGenius给U盘分区。
将引导代码写入U盘mbr:
Win32下,运行grubinst_gui.exe ,在“磁盘”处选中U盘,在“选项”区选中“不保存原来的mbr”、“不引导原来的mbr”、“启动时不搜索软盘”、“输出详细信息”,点击“安装”即可。
拷贝grub4dos的grub.exe、grldr、menu.lst到u盘根目录。
现在,U盘已经可以用grub引导,把电脑设置为U盘优先引导,测试一下grub的引导。
安装linux live cd的过程分为两步,一是把live cd的iso镜像文件中的相关目录和文件复制到U盘,可以用Virtual CloneDrive加载iso镜像。二是编辑grub的menu.lst,各个版本的linux差别较大。
#安装Linux slax
提取slax-6.1.2.iso中的
boot
slax
目录(包含文件,其实boot目录只需vmlinuz 、initrd.gz即可)到U盘根目录即可,这个是最容易的安装的linux live之一,而且slax启动速度快,对声卡等硬件支持更好,至少在我测试过的live cd linux中如此。
grub菜单:
title Slax
root (hd0,0)
kernel /boot/vmlinuz root=/dev/ram0 rw max_loop=255 init=linuxrc load_ramdisk=1 ramdisk_size=6666 slax from=/slax/ vga=normal autoexec=startx
initrd /boot/initrd.gz
boot
#安装pclinuxos-2009.2.iso
打开pclinuxos-2009.2.iso
拷贝到livecd.sqfs到U盘根目录,拷贝vmlinuz、initrd.gz到相应目录
grub菜单:
title pclinuxos
root (hd0,0)
kernel /isolinux/vmlinuz livecd=livecd root=/dev/rd/3 acpi=on vga=788 keyb=us splash=silent fstab=rw,noauto
initrd /isolinux/initrd.gz
#安装Linux Mint
从LinuxMint-8.iso中提取文件,
拷贝mint.seed到U盘preseed目录,拷贝filesystem.manifest
filesystem.manifest-desktop
filesystem.squashfs
initrd.lz
vmlinuz到casper目录。
复制.disk目录,否则不能正常启动。ubuntu系列都可以这样操作。
grub菜单:
title Linux Mint live
root (hd0,0)
kernel /casper/vmlinuz file=/preseed/mint.seed boot=casper quiet nosplash –
initrd /casper/initrd.lz
#安装 puppy Linux
grub菜单:
title puppy
root (hd0,0)
kernel /puppy/vmlinuz ramdisk_size=256000 root=/dev/ram0 PMEDIA=idehd
initrd /puppy/initrd.gz
title Puppy-Linux
find –set-root /puppy/pup-431.sfs
kernel /puppy/vmlinuz root=/dev/ram0 PMEDIA=usbhd
initrd /puppy/initrd.gz
#安装Linux veket
grub菜单:
title Veket
kernel (hd0,0)/puppy/vmlinuz root=/dev/ram0 PMEDIA=idehd acpi=off
initrd (hd0,0)/puppy/initrd.gz
boot
#安装archinux(未成功)
grub菜单:
ERROR:boot device didn't show up for 30 seconds
在 ramfs$ 提示符下依次输入:
ln -s /dev/sdb1 /dev/archiso
exit
假定 sdb1 是U盘的挂载位置。
这个问题仅在U盘启动的时候产生,更准确的说,是仅在没有使用 dd 命令制作的U盘启动盘上发生。
为什么呢?因为这种情况下,U盘的标签(Label)与U盘上 boot/grub/menu.lst 中指定的不相符了。
因此,一个更好的解决办法是,修改U盘上 boot/grub/menu.lst :
kernel /boot/vmlinuz26 lang=en locale=en_US.UTF-8 archisolabel=ARCHISO_OINGAE2I ramdisk_size=75%
将 “ARCHISO_OINGAE2I” 改为你U盘的标签(Label)。是什么就改成什么,注意,要区分大小写。存盘即可。
#安装Linux Ubuntu live
title Linux Ubuntu live
root (hd0,0)
kernel /casper/vmlinuz boot=casper quiet nosplash –
initrd /casper/initrd.lz
#安装NimbleX Linux live
grub菜单:
title NimbleX 2008 – Boot in KDM
find –set-root /nimblex/vmlinuz-nx08
kernel /nimblex/vmlinuz-nx08 ramdisk_size=7120 root=/dev/ram0 rw vga=791 splash=silent quiet changes=nimblex.data autoexec=xconf;kdm
initrd /nimblex/initrd-nx08.gz
#安装knoppix Linux live(推荐)
grub菜单:
title knoppix adriane vga=0×311
root (hd0,0)
kernel /KNOPPIX/linux ramdisk_size=100000 lang=en vt.default_utf8=0 apm=power-off vga=0×311 nomce quiet loglevel=0 tz=localtime adriane
initrd /KNOPPIX/minirt.gz
boot
# 安装Fedora-12-i686-Live
grub菜单:
title Fedora-12-i686-Live
root (hd0,0)
kernel /LiveOS/vmlinuz0 root=live:CDLABEL=USB2G rootfstype=auto ro liveimg quiet rd_NO_LUKS rd_NO_MD noiswmd
initrd /LiveOS/initrd0.img
CDLABEL修改为分区的卷标名称。