在 FC6 下面制作 USB 启动盘的基本过程
来源:互联网 发布:网络销售是诈骗吗 编辑:程序博客网 时间:2024/06/05 10:38
在 FC6 下面制作 USB 启动盘的基本过程
冷胜魁(Seaquester)
lengshengkui@gmail.com
2008-6-4
1. 给 USB Disk 分区:
将u盘分成两个分区,一个Linux Ext3分区,一个FAT32分区,并将Linux分区标记为可引导的
/dev/sda1 FAT32
/dev/sda2 Linux
# fdisk /dev/sda
格式化 ext3 分区(并指定label为 ROOT_USB,我们在grub.conf里面会使用这个label来指定root)
# mke2fs -j -m0 -L ROOT_USB /dev/sda2
# tune2fs -c 0 -i 0 /dev/sda2
格式化 ext2 分区
# mkfs.vfat -F 32 /dev/sda1
2. 制作 InitRD
mkinitrd --preload=ehci-hcd --preload=usb-storage --preload=scsi_mod --preload=sd_mod /boot/usbinitrd.img 2.6.18-1.2798.fc6
注意:
由于从USB Disk启动,所以需要提前加载USB Disk相关的驱动(由preload参数限定),否则kernel会无法mount USB Disk上的rootfs。
2.6.18-1.2798.fc6 是FC6的kernel版本,必须跟系统的kernel版本一致,否则无法找到ehci-hcd等module。
3. 安装GRUB
# mkdir -p /mnt/usb
# mount /dev/sda2 /mnt/usb
# cp -a /boot /mnt/usb/
# grub
grub> find /boot/grub/stage1
(hd1, 1)
grub> root (hd1, 1)
grub> setup (hd1)
grub> quit
修改 grub.conf (或menu.lst):
default 0
timeout 5
spalshimage=(hd0,1)/grub/splash.xpm.gz
hiddenmenu
title Fedora Core (2.6.18-1.2798.fc6 USB)
root (hd0,1)
kernel /boot/vmlinuz-2.6.18-1.2798.fc6 ro root=LABEL=ROOT_USB selinux=0
initrd /boot/usbinitrd.img
注意:
(1) 在从USB Disk启动时,USB Disk应该是hd0,如果从硬盘启动,则硬盘是hd0,USB Disk是hd1(假设系统里面只有一个硬盘)。
(2) selinux=0 是用来禁用SELinux的,否则可能登录不进系统。另一种方法是修改 /etc/selinux/config 文件,将 SELINUX=Enforcing 改为 SELINUX=disabled。
4. 建立USB启动盘
在USB Disk上建立根文件系统,主要是这些目录:/bin /sbin /etc /dev /lib /sys /proc /usr /var /root /home /tmp /mnt 等(可以从硬盘上 Copy 文件系统到 USB Disk)
# cd /mnt/usb
# mkdir -p mnt/d
编辑etc/fstab文件(增加USB Disk的分区):
/dev/sda2 / ext3 defaults 1 1
/dev/sda1 /mnt/d vfat defaults 0 0
devpts /dev/pts devpts guid=5,mod=620 0 0
tmpfs /dev/shm tmpfs defaults 0 0
none /proc proc defaults 0 0
参考资料:
http://www.simonf.com/usb/
冷胜魁(Seaquester)
lengshengkui@gmail.com
2008-6-4
1. 给 USB Disk 分区:
将u盘分成两个分区,一个Linux Ext3分区,一个FAT32分区,并将Linux分区标记为可引导的
/dev/sda1 FAT32
/dev/sda2 Linux
# fdisk /dev/sda
格式化 ext3 分区(并指定label为 ROOT_USB,我们在grub.conf里面会使用这个label来指定root)
# mke2fs -j -m0 -L ROOT_USB /dev/sda2
# tune2fs -c 0 -i 0 /dev/sda2
格式化 ext2 分区
# mkfs.vfat -F 32 /dev/sda1
2. 制作 InitRD
mkinitrd --preload=ehci-hcd --preload=usb-storage --preload=scsi_mod --preload=sd_mod /boot/usbinitrd.img 2.6.18-1.2798.fc6
注意:
由于从USB Disk启动,所以需要提前加载USB Disk相关的驱动(由preload参数限定),否则kernel会无法mount USB Disk上的rootfs。
2.6.18-1.2798.fc6 是FC6的kernel版本,必须跟系统的kernel版本一致,否则无法找到ehci-hcd等module。
3. 安装GRUB
# mkdir -p /mnt/usb
# mount /dev/sda2 /mnt/usb
# cp -a /boot /mnt/usb/
# grub
grub> find /boot/grub/stage1
(hd1, 1)
grub> root (hd1, 1)
grub> setup (hd1)
grub> quit
修改 grub.conf (或menu.lst):
default 0
timeout 5
spalshimage=(hd0,1)/grub/splash.xpm.gz
hiddenmenu
title Fedora Core (2.6.18-1.2798.fc6 USB)
root (hd0,1)
kernel /boot/vmlinuz-2.6.18-1.2798.fc6 ro root=LABEL=ROOT_USB selinux=0
initrd /boot/usbinitrd.img
注意:
(1) 在从USB Disk启动时,USB Disk应该是hd0,如果从硬盘启动,则硬盘是hd0,USB Disk是hd1(假设系统里面只有一个硬盘)。
(2) selinux=0 是用来禁用SELinux的,否则可能登录不进系统。另一种方法是修改 /etc/selinux/config 文件,将 SELINUX=Enforcing 改为 SELINUX=disabled。
4. 建立USB启动盘
在USB Disk上建立根文件系统,主要是这些目录:/bin /sbin /etc /dev /lib /sys /proc /usr /var /root /home /tmp /mnt 等(可以从硬盘上 Copy 文件系统到 USB Disk)
# cd /mnt/usb
# mkdir -p mnt/d
编辑etc/fstab文件(增加USB Disk的分区):
/dev/sda2 / ext3 defaults 1 1
/dev/sda1 /mnt/d vfat defaults 0 0
devpts /dev/pts devpts guid=5,mod=620 0 0
tmpfs /dev/shm tmpfs defaults 0 0
none /proc proc defaults 0 0
参考资料:
http://www.simonf.com/usb/
- 在 FC6 下面制作 USB 启动盘的基本过程
- 【笔记】在 Windows 中制作 Ubuntu 系统的USB启动盘
- 在Windows7 下制作freebsd usb启动盘
- 在Ubuntu中制作USB启动盘
- 制作Linux的优盘(usb)启动盘
- 如何制作 Windows XP 的 USB 启动盘
- 如何制作 Windows XP 的 USB 启动盘
- 制作gOS和ubuntu的usb启动盘
- usb 启动盘制作的几种办法
- 强大的USB启动盘制作工具
- 制作Fedora 15的USB启动盘
- USB启动盘制作的几种方式
- Linux usb启动盘制作
- 自己动手制作USB启动盘
- USB启动盘制作教程
- 制作USB启动盘
- 自己动手制作USB启动盘
- 自己动手制作USB启动盘
- displaytag 1.1 初探
- 关于导出DLL问题
- SqlDataSource数据转DataSet,DataView
- oracle参数调整
- 对MySQL自增字段的操作
- 在 FC6 下面制作 USB 启动盘的基本过程
- 【轉載】html页面技巧的使用
- 五种提高SQL性能的方法
- oracle基础知识-基本管理操作(登录、归档)
- 免费虚拟现实运用开发平台VR Juggler
- JDBC入门
- 火狐常用的快捷键
- eclipse下安装js插件-spket(支持Ext)
- 数据库连接池