Bootable USB Stick

HowTo make bootable USB stick. 1

U盘启动linux条件... 1

1Can boot from USB. 1

2Bootable USB. 1

3USB2.0. 1

4Boot files. 2

Linux下制作... 2

1. Format (FAT32) 2

2. write syslinux. 2

3. boot files. 2

4. install syslinux. 3

5. boot from USB. 3

windows下制作... 3

One Example. 3

An other example. 4

More Example. 5

 

HowTo make bootable USB stick

U盘启动linux条件

1Can boot from USB

主板支持从usb设备启动,即插入U盘后BIOS的选择启动菜单中有类似"USB-ZIP""USB-HDD"的选项。当然你需要选择其中的一个以便你可以从U盘启动。

2Bootable USB

你的U盘本身是可以启动的,一般近一两年出的U盘应该都是满足这个条件的。

3USB2.0

建议你的电脑的USB接口和你的U盘接口都是2.0的,这个不是必需的,但如果是1.1的话,可能运行linux的速度会很慢。

4Boot files

你的U盘里有用来引导linux的引导文件。

 

目前可以用于linuxU盘引导的主要有两大类:

一是grub

二是syslinux

 

下面我就如何用syslinux做一个可引导的 Karcholin LiveUSB做一个简单地说明。(请注意,目前的karcholin-0.1RC使用grub引导的。所以你需要从我贴的附件中下载syslinux或者从其他渠道获得syslinux)

 

你可以选择在linux下面做,也可以选择在windows下面做。你需要事先准备的东西有:

1.一个>=512M的可引导U

2.下载karcholin-0.1RCiso

下载地址请见http://www.linuxsir.org/bbs/showthread.php?t=280376

3.附件中的相应文件

 

Linux下制作

1. Format (FAT32)

插入U盘,假设U盘设备为/dev/sda1。用 mkfs.vfat /dev/sda1 命令将U盘格式化为fat32格式。请注意,这个命令在不同的linux发行版中有所不同,如果你用的不是archlinux,可能的形式为: mkdosfs -F 32 /dev/sda1 。如果你用的archlinux,却发现找不到这个命令,请用pacman -S dosfstools 安装dosfstools这个包。你可以事先用fdisk -l 查看你的USB设备。可能出现的结果如下:

/dev/sda1 * 1 1017 1023580 b W95 FAT32

2. write syslinux

下载附件中的syslinux.tar.gz包,解压后放在合适的位置,执行:

dd if=/你放的位置/syslinux/mbr.bin of=/dev/sda

3. boot files

挂载你的U盘,挂载你下载的karcholin-0.1RC.iso或者将你可录的光盘放入光驱中,将其中除boot文件夹以外的其他所有文件和 boot文件夹下面的vmlinuzlarch.img复制到U盘的根目录下面。再把附件中的isolinux.tar.gz包下载解压,把其中的所有文件均复制到U盘根目录下面,并把其中的isolinux.cfg改名为syslinux.cfg

4. install syslinux

U盘卸载,安装syslinux。执行:

/你放的位置/syslinux/syslinux /dev/sda1

5. boot from USB

大功告成,重启,在bios中将USB引导设为第一位,几十秒的等待以后你将看到karcholin的美好世界。

 

提醒:如果你的内存<=512M,请在引导时暂时不要使用linux c2r(等以后我把iso做小一点,应该就没有问题了。)。如果你有swap分区,你可以使用linux swap引导。

windows下制作

1.请确认你的U盘中没有重要的数据,如果有请事先备份,因为我们需要将U盘格式化。

2.在windows下把U盘格式化成Fat32格式,下载附件中的syslinux.rar包,将其中的mbr.bin文件拷贝到U盘根目录下。

3.用虚拟光驱或者ultraiso等软件提取karcholin-0.1RC.iso中的文件,将其中除boot文件夹以外的其他所有文件和boot文件夹下面的vmlinuzlarch.img复制到U盘的根目录下面。再把附件中的isolinux.tar.gz包下载解压,把其中的所有文件均复制到U盘根目录下面,并把其中的isolinux.cfg改名为syslinux.cfg

4.将附件syslinux.rar包中的syslinux.exe文件拷贝到C盘或者其他盘的根目录下,在windows自带的dos窗口下执行:

C:/syslinux.exe I: (其中的I:为你的U盘的盘符,请自己更改)

5.大功告成,重启,在bios中将USB引导设为第一位,几十秒的等待以后你将看到karcholin的美好世界。

One Example

我用的是Redhat As5 32 bit,大概步骤是这样的:

1。在linux系统上插入u盘,然后运行以下命令去创建分区:

   #fdisk -l       //查看你的u盘在你的系统下显示为怎样的盘符, 不如说为 /dev/sdb,按照提示,首先选择“d”删除你原来有的windows或者其他系统的分区。

   然后选择“n“去创建一个新的分区,你可以将你的u盘创建为一个分区。

   选择”w”去保存你创建的分区信息,同时你就是将你的分区信息写在硬盘上。

2。创建文件系统

  #mkfs -t ext3 -I 128 /dev/sdb1     //假设你创建的文件分区为ext3

3。安装grub

 #mount -t ext3 /dev/sdb1 /mnt

 #grub-install --root-directory=/mnt /dev/sdb      //注意了,此处是/dev/sdb,不是/dev/sdb1

如果显示安装成功的话,你就可以进行下一步了哦。

4。删除boot目录

  #rm /mnt/boot -fr

5.Copy你本机的boot目录到你的u盘上。

 #cp /boot /mnt -fr

6。修改你的u盘上的grub.conf

 因为你本机的grub.conf一般情况都会有两个启动选项,你可以按照自己的要求去修改。

7。修改initrd.img

  如果你需要的话,你可以替换/mnt/boot/initrd.img, 用你自己编译的,写上自己的大名,那可就cool极了。

8。保存

 #umount /mnt

9.在另外一台机器上,试一试你的成果哦。。。

An other example

 

电脑:联想品牌机,主板支持usb启动。

u(移动闪存,不是移动硬盘):联想T108+ 512M 可启动闪存

硬盘分区:第一个分区是windows xp,第二个是linux

OSFC4

 

1. Format USB Stick

我先把u盘分了2个区,都格式化为ext2文件系统格式。

mke2fs -m 0 /dev/sda1

注意:sda1 is the usb dev descriptor

 

2. 把宿主机/boot相关内容拷贝到u盘第一个分区(/dev/sda1)。因为暂时仅仅是想试验用u盘启动本机linux,所以只拷贝了几个文件,目录结构如下

/mnt/usbsda1/

`-- boot

`-- grub

|-- grub.conf

|-- stage1

|-- stage2

`-- stage2_eltorito

2 directories, 4 files

3。只需要修改一下grub.conf,内容如下:

default=0

timeout=10

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

hiddenmenu

title Fedora Core-up (2.6.11-1.1369_FC4)

root (hd1,1)

kernel /vmlinuz-2.6.11-1.1369_FC4 ro root=LABEL=/ rhgb quiet

initrd /initrd-2.6.11-1.1369_FC4.img

twgdh所说”另外要用u盘启动你最好选择usbhdd模式启动,然后如果是u盘启动应该是(hd00),从硬盘启动u盘才是hd1“,我这里用的是root (hd1,1)

4。重启,把BIOS的启动选项设置为usb-hdd即可。

More Example

本文以Red Hat 8.0为例,使用朗科的双启动型优盘建立优盘的Linux启动盘。

  下载相关软件:e3bviLiuux内核。

编译内核

  首先计算机的主板必须要支持USB硬盘的启动方式,并且所使用的优盘是启动型优盘。

  我以Linux-2.4.20为例说明。编译时一定要注意不要编译不必要的模块,如声卡驱动等驱动模块,使编译的内核尽可能小一些。由于要支持优盘启动,必须将SCSI设备、usbcoreusb-storageLoopback device supportRAM disk supportinitrd等编译到内核中。

  许多人会问,usb-storage模块已经包括在内核了为什么还要建立 initrd.img文件?这是由于优盘的初始化过程比执行/sbin/init,导致内核已经启动完成了,优盘还没有完成初始化工作,因此根文件系统没有加载,这时执行/sbin/init命令肯定不成功。通过建立initrd.img文件,在启动内核时加载initrd.img文件到内存中,等待3 秒使优盘完成初始化工作,再执行/sbin/init指令。具体操作步骤如下。

1.建立initrd.img文件

  # mkdir -p /mnt/initrd

  # cd /tmp

  # mkinitrd /tmp/initrd.gz 2.4.20-usb

  2.解压initrd.img文件,修改启动脚本linuxrc

  # gunzip initrd.gz

  # mount -o loop /tmp/initrd /mnt/initrd

  # cp /sbin/busybox /mnt/initrd/bin

  # cd /mnt/initrd/bin

  # ln -s busybox sleep

  # vi /mnt/initrd/linuxrc

  加入如下内容:

  echo 'wait 3 seconds.....'

  /bin/sleep 3

  3.重新生成initrd.img文件

  由于缺省建立的initrd文件比较大(4MB),为了加快优盘的启动,必须减小它。具体操作如下:

  # mkdir -p /mnt/initrdusb

  # cd /tmp

  # dd if =/dev/zero of= /tmp/initrdusb bs=1M count=1

  # mke2fs -m 0 initrdusb

  # mount -o loop /tmp/initrdusb /mnt/initrdusb

  # cp -a /mnt/initrd/* /mnt/initrdusb

  # umount /mnt/initrd

  # umount /mnt/initrdusb

  # cd /tmp

  # gzip -9 initrdusb

  # cp initrdusb.gz /boot/initrd-2.4.20-usb.img

  4.测试编译的内核是否正常启动

  测试编译的内核是否正常启动,以及在启动过程中是否可看见优盘的相关信息。

建立优盘启动盘

  1.将优盘分成两个分区

  留给Linux分区容量大小完全取决于安装哪些系统维护工具,结果如下:

  # modprobe usb-storage

  # fdisk -l /dev/sda

  Disk /dev/sda: 16 heads, 63 sectors, 126 cylinders

  Units = cylinders of 1008 * 512 bytes

  Device Boot Start End Blocks Id System

  /dev/sda1 1 102 51376+ 6 FAT16

  /dev/sda2 103 126 12096 83 Linux

  注意:如果需要使用优盘引导Windows 98,扇区大小必须设置为63个扇区,可以通过fdiskx命令扩展修改headssectorscylinders参数。

  2.建立与生成ext2分区 不要mountUSB

  # mke2fs -m 0 /dev/sda2

  # mkdir -p /mnt/sda2

  # mount /dev/sda2 /mnt/sda2

  # cd /mnt/sda2

  3.建立boot目录

  将编译好的内核与initrd-2.4.20-usb.img文件拷贝到boot目录、编译好的模块拷贝到lib/modules目录,以及将/boot/grub的文件拷贝到boot目录,编辑boot/grub/menu.lst文件,内容如下:

  timeout 10

  color 0x17 0x70

  default 0

  title Windows 98

  rootnoverify (hd0,0)

  makeactive

  chainloader +1

  title GNU/Linux Redhat 8.0 (2.4.20-usb)

root (hd0,1)

  kernel /boot/vmlinuz-2.4.20-usb ro root=/dev/sda2

initrd /boot/initrd-2.4.20-usb.img

 

  安装grub,具体操作如下:

  grub> root (hd1,1)

  grub> setup (hd1)

 

  4.建立bin目录

  根据自工作的需要拷贝系统维护工具,如insmodfsckmkdosfs等实用程序。一定要注意使用ldd命令检查那些共享库文件,这些文件需要按照原来的路径拷贝到lib目录。 由于受到磁盘空间的限制,使用busybox命令代替一些常见的Linux命令,主要原因就是busybox 文件非常小,并且是静态链接的,包括许多常见的Linux命令(如catinitifconigroute)用ln -s busybox建立这些文件的符号联接。可以根据个人需要重新编译busybox,包括vi等命令,也可以使用小巧的e3代替vi

  另外,如果使用bash,还必须编辑与裁减/etc/termcap及如下文件:

  /bin/bash

  /etc/termcap

  /usr/share/terminfo/l/linux

  /usr/share/terminfo/k/klone+acs

  /usr/share/terminfo/k/klone+color

  /usr/share/terminfo/k/klone+sgr

  5.建立dev目录

  使用cp -a命令拷贝常用的设备文件,包括consoletty1tty2tty3sdasda1sda2hdahdbhda1等设备文件。

  6.编辑etc/init.d/rcS

  内容如下:

  #!/bin/sh

  PATH=/sbin:/bin

  export PATH

  mount -n -t proc none /proc

  umount /initrd

  mount -n -o remount,rw /

  mount -n -o remount,rw -t proc none /proc

  ifconfig lo 127.0.0.1

  7.编辑etc/fstab文件

  内容如下:

  /dev/sda2 / ext2 defaults 1 1

  none /proc proc defaults 0 0

应用举例

  举一个传送文件的例子。在一台正常工作的Linux机器A(IP=192.168.100.5)上执行:

  $ tar cf - win98 | nc -l -p 5555

  注意:可以在机器B上使用优盘启动机器,telnet登陆到机器A上执行以上命令。

  在机器B上使用优盘启动执行:

  # mount -t vfat -o codepage=938,iocharset=cp936 /dev/hda5 /mnt/2dos

  # cd /mnt/2dos

  # modprobe eepro00

  # ifconfig eth0 192.168.1.10

  # route add default gw 192.168.1.1

  # ping 192.168.10.5

  # nc 192.168.10.5 5555 | tar xf -

  如果这时使用format /s命令无法建立优盘Windows 98启动盘,可以采用变通的方式,具体操作如下:

  # mkdosfs -F 16 /dev/sda1

  # xxd -c 16 /dev/sda1 | less

这时记录下Boot Record3235字节内容(本例为60 91 01 00,这4个字节记录了FAT分区总的扇区数量),再使用朗科随盘提供的制作引导盘的工具制作Windows 98启动盘,然后使用Linuxbvi或者能够编辑二进制文件的工具修改Boot Record3235字节为原来的内容。这样,就能够实现名副其实的三启动方式(Windows双启动+Linux启动)。

 

 

最近由于工作需要,准备做一个linuxU盘代替linux救援盘。

 

目前可以用于linuxU盘引导的主要有两大类:一是grub、二是syslinux

 

syslinux使用起来比较简单,而且可以在windows下操作,因此决定使用syslinux来做linux启动U盘。

 

下载最新的syslinux软件,在cmd下运行 syslinux -mbr <driver>,把引导信息写进U盘的mbr中,这样U盘就具有了启动信息。

 

接下来就是比较重要的配置了,syslinux启动成功后,会自动读取U盘下的syslinux.cfg文件,然后加载显示提示、内核和扩展。在这里我使用了knopperdiskusb

对于syslinux.cfg各个字段的写法如 DISPLAY xxx.txt或者xxx.msg

这指定了一个文件名,会在启动的时候显示的内容,该文件甚至可以包含一个 RLE 编码的图形文件,也就是大家在安装光盘启动时看到的那个;不过这个字段不甚重要,我们就略过了。

 

 default tonydisk

指定 label tonydisk 的启动选项为缺省,当然也可以是别的。

 

    LABEL linux

        kernel vmlinuz

        append initrd=initrd26.gz ramdisk_size=1000000 vga=791

这就是一个启动描述,前面的 label 大家都认识了,之后分别是指定 kernel 和内核参数,其中重要的参数就是initrd= 指定 initrd 的文件和ramdisk_size= 指定 initrd 的尺寸上限。其余的内核参数还可能有很多,不过这里的参数我们一般都可以抄过来。这样的启动选项描述是可以有若干个的。

 

    PROMPT=1

这是说,向用户提示输入选择,直接回车就是缺省选项了。

 

    TIMEOUT=0

没有时间限制,当然也可以指定一定时间之后自动进入缺省选项。

 

 

 

Grub参数

GRUB是一款非常优秀的系统引导器,它的功能非常强大,今天就为大家介 绍一下快速配置GRUB的五个参数。GRUB是利用其配置文件方式来工作的,要对GRUB进行配置,只需要修改/boot/grub/grub.conf 或者/etc/grub.conf/etc/grub.conf/boot/grub/grub.conf的符号链接)就可以了。GRUB的配置文件 其实可以分为两个部分,在开头有“#”的均为注释行,可以不必理会;另外一部分则是起作用的参数部分,下面就为大家一一介绍。

 

default

    这个参数决定了GRUB引导时光标默认停留的引导标签。如default=0,GRUB引导时,光标停留在第一个引导标签上。如果将0改成1,则GRUB引导时,光标默认停留在第二个引导标签上。 timeout

这个参数设置的是GRUB的等待时间。当计算机启动至引导页面的时候,GRUB会有一段默认是10秒的等待时间,如果在默认时间内用户不作任何选择,则GRUB将根据default参数的设置,自动引导系统。

 

timeout

 

用户也可以根据自身的需要来设置timeout参数。如timeout=30,则将GRUB默认等待时间设置为30秒,而如果将timeout参数删除或者将等于号后的数字改为负数,将会使此参数失效,GRUB将一直停留在引导页面等待用户选择。

 

splashimage

 

    当进入GRUB引导界面的时候,可以看见一副背景图片,而参数提供的就是这个功能。为了使GRUB引导更加个性化,大家也可以自己准备一张XPM图片,然 后将图片压缩成gz格式,最后修改splashimage参数中的文件路径即可。但是,如果将splashimage删除,GRUB的引导菜单将会和NT Loader一样,变成最普通的黑底白字,非常难看。

 

title

 

    其实title就是一个引导标签,我们可以对title后的文字部分进行修改,使它更加复合我们的使用习惯。如将title Red Hat Enterprise Linux AS改为title Red Hat Linux,再次进入GRUB引导界面的时候,引导菜单就会变为Red Hat Linux,是不是一目了然呢?(笔者提示:title以下部分是系统引导所需的信息,切勿修改!)

 

password

 

    众所周知,通过编辑GRUB启动参数可以轻松的进入单用户模式从而修改root密码,这对于一台多用户的计算机或服务器来说,无疑增加了安全隐患。大家一 定很像为自己的GRUB加一把锁吧,大家可以通过GRUBpassword参数对GRUB设置密码。GRUB的密码设置可分为全局密码和菜单密码。为了 防止他人通过GRUB修改root密码大家需要设置一个全局密码。在splashimage这个参数的下一行可以加上password=密码,保存后重新 启动计算机,再次登录到GRUB菜单页面的时候就会发现,这时已经不能直接使用e命令编辑启动标签了,须先使用p命令,输入正确的密码后才能够对启动标签 进行编辑。虽然我们设置了全局密码,但是如果他人得到了全局密码后仍然可以修改GRUB启动标签从而修改root密码;这样我们就可以设置菜单密码,设置 菜单密码也非常简单,我们只需要在title的下一行加上password=密码,然后保存退出。这样即使有了全局密码也必需输入菜单密码才能够引导系 统。此外,如果直接对GRUB进行明文加密也是非常不安全的,所以就要使用MD5对其进行加密。在终端中输入grub-md5-crypt回车,这时系统 会要求输入两次相同的密码,之后系统便会输出MD5。大家只需要将生成的MD5密文复制下来,然后在按照password --md5 MD5密文这个格式设置全局或者菜单密码,保存退出,重启计算机即可。

    好了,快速配置GRUB的五个参数给大家详细介绍了一下,会用这几个参数,就可以快速配置GRUB了,大家加油啊!

 

 

 

主题: Grub安装三系统

 

RedHat9Mandrake9.1在最近一个月都分别放出,笔者作为Linux的狂热爱好者,当然不能放过这 么好的机会,下载,刻盘ing...可是如果让它们和平相处了,用Grub是最好的办法,因为它是RedHat默认安装的,Grub为何物,简单来说就是 系统的引导程序,用它来引导三个系统一点都没问题,也不用到处找别的收费软件了。

 

 

一、分区

本人的电脑中有两块硬盘,基本 的想法是80GWin系统,10G的硬盘放两个Linux系统,第一块硬盘中已有Win2K系统,如果你只有一个硬盘,可以用PQ分一个空区出来,然后 在空出来的区中划一个交换分区,格式为/swap,大小一般为内存的1.5倍,如果你的内存为512M或者以上的交换分区和内存大小一样就行了,再分出两 个大小为5G左右的根分区,格式化为EXT3。这样做的好处就是当安装完Linux系统后,Win系统不会因为不识别EXT3格式再变得非常缓慢。

 

 

二、安装Linux系统

 

在安装Linux已经非常方便了,只要按屏幕上的提示来就行了,系统的安装不分先后,但是安装RedHat9时把Grub安装在硬盘hda1MBR上, 安装Mandrake9.1时把LILOGrub安装到/boot的第一个扇区上就OK了。在linux中,主分区是hda1,第二个硬盘的主分区是 hdb1,逻辑分区是从hda5开始的,如果有两个硬盘,可能就是从hdb5开始,以此类推。如果您不知道是怎么回事,就要用fdisk -ldf-la来查看。要安装系统的时候,也会有相应的让您选择安装位置,也是hdaX或者hdbX分区之类的,Linux下没有WinCD盘之 分。

 

 

三、修改grub.conf

 

系统安装完了,但是现在只能引导RedHat9Win系统,必须要改一下 /boot/grub/grub.conf才能让三系统正常运行,用root用户进入系统,先用fdisk -ld 终端中查看你的分区情况,知道分区情况就好办了,用任何文件编辑器来打开/boot/grub/grub.conf,一般来说,Win系统会自动加载到 grub里面的,下面是笔者的grub.conf文件,我们来分析一下

default=0

timeout=10

splashimage=(hd1,2)/boot/grub/splash.xpm.gz

title Windows2K

    rootnoverify (hd0,0)

    chainloader +1

title RedHat9

    root (hd1,2)

    kernel /boot/vmlinuz-2.4.20-8 ro root=LABEL=/

    initrd /boot/initrd-2.4.20-8.img

title Mandrake9.1

kernel (hd1,4)/boot/vmlinuz root=/dev/hdb5 quiet devfs=mount acpi=off vga=788

initrd (hd1,4)/boot/initrd.img

 

default=X为默认启动的系统,0为排在第一个的系统,以此类推。

timeout=XGrub菜单停留的时间,单位为秒

title XXXXXX为标题,也就是你要引导的操作系统的名字,可以自己修改

root (hdX,Y)XY都代表一个数值,Xlinux的根分区在哪个硬盘上。如你只有一个硬盘。那就是hd0。如果你的linux的一个发行版是安装在第 二个硬盘,这个X,就是1Y是代表您所安装的linux是在哪个区。这个数值有点不同,不太好说清楚。举个例子来说。比如我把Mandrake安装到第 二块硬盘的第二个分区,也就是hdb5了。那他的root (hdX,Y),就应该写为root (hd1,4),也就是说Y=hdaZhdbZ中的Z减去1

kernel (hdX,Y)/boot/vmlinuz root=/dev/hdaZinitrd (hdX,Y)/boot/initrd.img就是要引导哪个硬盘分区的映像和initrd文件,一定要写正确XY的数值,不然无法引导系统。

quiet devfs=mount acpi=off vga=788为启动的参数。

 

rootnoverify (hdX,Y)如果不能启动Win的话,可以改为root (hdX,Y)来试试

chainloader +1意思是指定此分区上的第一个磁道来启动

 

想加入别的操作系统到Redhat 中的GRUB中,也不过是如此,如者用其它发行版中的GRUB来引导别的发行版,原理也是一样的。这和Win2KXP中的BOOT.INI差不多,grub很简单吧,多试几次就会了。

 

最后吗,当然是存盘重启电脑,这时,我们就能享受多系统和平相处的乐趣了。

更改只对本次有效的 Grub 的引导参数(以引导系统进入单用户为例)- -

                                      

Grub 引导界面可以按 "E" 键进入编辑状态, 编辑完成后回车确认, 然后按 "B" 键让 Grub 以当前的参数引导指定的系统, 以更改 RedHat Linux 9 启动到单用户模式为例:

 

      a. 在出现 Grub 启动菜单时,选中 Linux 项,按 "E" 键进入编辑界面。

 

      b. 然后会面对一个引导项目列表, 定位到类似下面一行:kernel /vmlinuz-2.4.18-0.4 ro root=/dev/hda2 "E" 键进入编辑模式。

 

      c. 在其后加空格, 然后添加 "single" 通知 Grub 引导单用户 Linux 模式, 回车使编辑生效。

 

      d. "B" 键, Grub 会引导系统进入单用户 Linux 模式。

如果想把REDHAT启动从图形界面,进入文本界面,可以在上面的B,最后写上空格+3,B进入文本模式.

 

 

Syslinux参数

利用syslinux制作DosWinPESlax Linux集成的口袋操作系统

 

一、概述

U盘具有价格越便宜、携带方便的特点,在工作中可以把一些自己常用的工具整和到里面,在电脑维护方面比较方便。

二、系统的选择

1dos系统

目前在dos工具盘中比较多,有MS-DOS 7.1,深山红叶DOS工具盘、MaxDos、矮人dos工具盘、超普DOS工具盘等等,在制作中你自己自己选择自己喜欢的dos工具盘,我选择的 MaxDos,里面有许多的工具,比如pqwindows密码破解等。

2WinPE系统

WinPE系统网上提供的版本很多,基本都是修改至老毛桃的WinPE,主要有深山红叶WINPE工具箱、老九WinPE 老毛桃修改之撒手不管版、金手指快速装机U盘版、通用PE工具箱、完美者UWinPE维护系统、晨枫U盘维护等,为了使集成时修改最少,这里选择晨枫U 盘维护版。

3Linux

U盘上的Linux比较多,比如Damn Small LinuxSlax Linuxpuppy linuxUbuntu等选择体积比较小的,功能比较完备的,这里选择Slax

4、口袋操作系统

主要有ceedomojopacPortableApps Suite,根据自己的爱好去选择,我从使用习惯和功能上在这里选了ceedo

三、u盘启动引导程序的选择

任何一个操作系统在任何一个硬件平台上运行都需要一个引导的过程,即,初始化软件环境、把内核从存储介质放到内存当中去,并开始运行。引导程序上承 BIOS,下接内核的初始化代码,开一次机只运行一次后就不留痕迹了,相当的重要。

可对u 盘引导的引导程序主要有IONTLDRsyslinuxGrub等,她们各有特点,从兼容性考虑,我选择了syslinuxsyslinux是专门用来引导可移动介质的轻量级引导程序,支持initrd功能,initrd = init ramdisk,就是在启动时使用的一个内存虚拟磁盘,提高了对广泛的硬件支持性。

四、软件清单与说明

1syslinux-3.73

Syslinux系统文件,可以到下面地址下载:

http://www.kernel.org/pub/linux/utils/boot/syslinux/syslinux-3.73.zip

相关安装教程:

http://syslinux.zytor.com/wiki/index.php/SYSLINUX

2HP优盘格式化工具

HP优盘格式化工具是用来对u盘进行格式化的工具,也可以直接进行做io的启动u盘。可以到下面地址下载:

http://www.xdowns.com/soft/6/7/2007/Soft_35477.html

3GDParam

GDParam这个工具可以方便得获取 PC 虚拟启动当中所需要的磁盘镜像文件的c/h/s 参数。在用syslinux启动dos的磁盘镜像时需要指定c/h/s 参数。可以到下面地址下载:

http://www.05sun.com/downinfo/5089.html

4WinImage

用来创建和修改磁盘镜像的软件,你可以自己创建或者修改dos的磁盘镜像。可以到下面地址下载:

http://www.crsky.com/soft/281.html

5UltraISO

UltraISO软碟通是一款光盘映像ISO文件编辑制作工具,它可以图形化地从光盘、硬盘制作和编辑ISO文件。可以对下载得到的winpe或者slax光盘映像进行修改。可以到下面地址下载:

http://www.crsky.com/soft/1134.html

6WinHex

Winhex是在Windows下运行的十六进制编辑软件,在对winpe进行安装文件修改等方面需要的工具。可以到下面地址下载:

http://www.orsoon.com/Soft/4921.html

7XCAB

XCAB能调用系统的makecab.exe文件,把文件加或目录压缩为CAB,特别支持为 XCMD DEVI 生成 CAB,在对winpe进行修改打包时用到。可以到下面地址下载:

http://bbs.wuyou.net/attachment.php?aid=14397

8WimTool

WimTool可以对Wim格式文件进行进行操作处理,在修改winpe的外置程序包时必须用的。可以到下面地址下载:

http://www.newasp.net/soft/app/26726.html

9slax 6.0.9

ftp://ftp.slax.org/SLAX-6.x/slax-6.0.9.iso

10.晨枫U盘维护V2.0_512M

http://www.rayfile.com/zh-cn/files/5731196e-e314-11dd-85f0-0019d11a795f/

11Loadbin

http://download.gna.org/grubutil/makerom-0.1-bin-w32-2008-01-01.zip

12ceedo

http://www.myfiles.com.cn/soft/5/5224.htm

五、安装 SYSLINUX

1、把u盘格式化,采用fat32格式。你可以用windows或者HP优盘格式化工具进行。

2、在u盘的根创建boot文件夹,在boot下创建syslinux子文件夹

3、把下载得到的syslinux-3.73.zip解压缩到任意文件夹,在其中的win32下有syslinux.exe文件。拷贝syslinux.exe到你u盘的/boot/syslinux文件夹下

4、打开命令行,切换到u盘根目录,进入/boot/syslinux文件夹,执行syslinux.exe,假设你的u盘的盘符为j

在命令行下依次运行下列命令:

C:/Documents and Settings/xxxxx> J:

J:/>Cd boot/syslinux

J:/boot/syslinux> syslinux.exe -ma -d /boot/syslinux j:

其中 -d /boot/syslinux是把命令生成的启动系统文件ldlinux.sys放到/boot/syslinux目录,可以从该目录寻找syslinux.cfg配置文件。

六、配置启动菜单

1、拷贝syslinux系统文件

启动菜单的配置都在syslinux.cfg文件中。需要几个syslinux文件:

memdisk 引导IMG镜像的文件

vesamenu.c32 二种窗口模块之一

menu.c32 二种窗口模块之一

chain.c32 指定分区启动 如:chain.c32 hd0 1 (chain.c32 hd1 1)

reboot.c32 重新启动计算机

在解压缩的syslinux-3.73文件夹中搜索以上就几个文件依次拷贝到u盘的/boot/syslinux文件夹下。

2SYSLINUX.CFG菜单

default vesamenu.c32 默认使用vesamenu.c32窗口模块(必填项)

timeout 60 菜单停留时间,计时单位1/10秒(必填项)

F1 readme.txt F1阅读自述文件

F2 syslinux.cfg F2显示启动菜单配置文件

MENU BACKGROUND back.png 运行窗口背景图片(必填项)

MENU TITLE 菜单标题

MENU WIDTH 40 菜单选择条长度(必填项)

MENU MARGIN 0 菜单选择条缩进,0不缩进(若删除则自动使用默认值)

MENU ROWS 30 菜单选择条却换,0不能却换(若删除则自动使用默认值)

MENU HELPMSGROW 26 (若删除则自动使用默认值)

MENU TIMEOUTROW 27 倒计时条下移,0不下移(若删除则自动使用默认值)

MENU TABMSGROW 28 TAB显示条下移,0不下移 (若删除则自动使用默认值)

MENU CMDLINEROW 28 TAB信息条下移,0不下移 (若删除则自动使用默认值)

上面这2项的参数必须一致,以免按TAB键后弹出的信息条易位

MENU HSHIFT 0 菜单选择条右移,0不右移 (若删除则自动使用默认值)

MENU VSHIFT 0 菜单选择条顶端,0不下移(若删除则自动使用默认值)

menu color screen 37;40 #00000000 #00000000 none

menu color border 30;44 #00000000 #00000000 none(必填项)

menu color title 1;36;44 #00000000 #00000000 none

七、dos系统的配置

1、在u盘的根建立dos文件夹,从网上下载maxdos系统,或者你自己用WinImage进行创建修改成img文件,比如MaxDOS.img放在dos文件下。

2、取得img文件的CHS参数

syslinux支持gzipzip压缩格式的磁盘映像,但memdisk自身不能压缩,memdisk支持标准floppy镜像直接启动,非标准(容量大于2880K的)要附加CHS参数。我们可以用GDParam取得img文件的CHS参数。

3、修改SYSLINUX.CFG

打开SYSLINUX.CFG文件在里面添加形如下的内容:

LABEL MaxDOS

MENU LABEL MaxDOS

kernel /boot/syslinux/memdisk c=142 h=4 s=36 floppy

append initrd=/dos/MaxDOS.img

八、slax系统的配置

1、把下载得到的slax-6.0.9.iso完全提取出来放在slax-6.0.9文件夹。

2、把其中的slax文件夹包含子文件复制到u盘的根目录。

3slax-6.0.9文件夹中的下面vmlinuzinitrd.gz两文件拷贝到u盘的boot文件下。

4、打开slax-6.0.9文件夹boot中的slax.cfg文件,复制其中的:

LABEL xconf

MENU LABEL Slax Graphics mode (KDE)

kernel /boot/vmlinuz

append initrd=/boot/initrdch.gz ramdisk_size=6666 root=/dev/ram0 rw autoexec=xconf;telinit~4 changes=/slax/ locale=CHS.UTF-8

5、把复制的上面内容贴人u/boot/syslinux下的SYSLINUX.CFG

九、winpe的配置

1、解压缩下载得到的晨枫U盘维护V2.0_512M.rar到任意一文件夹。

2、在u盘根新建winpe文件夹。

3、修改winpe OEM信息

解压缩得到的MyFeng/Boot下的WinPE.is_改为WinPE.cab,用winrar打开解压出WinPE.iso,用UltraISO打开,提取出/WXPE/SYSTEM32下的oeminfo.iniOEMLOGO.bmp进行修改,导入替换掉就可以了,保持iso文件,把新得到的 iso文件用xcab软件重新进行打包,得到WinPE.cab,再把WinPE.cab改为WinPE.is_

4、修改winpe外置程序包

解压缩解压缩得到的MyFeng/Boot下的OP.WIMWimTool解开,然后你可以替换桌面背景图片,加入或者删除一些程序,然后再用WimTool打包成OP.WIM

5、把处理完的OP.WIMWinPE.is_文件拷贝到u盘的winpe文件夹。

6、打开MyFeng/Boot下的winpe.ini修改其中的关于OP.WIM位置的代码,你也可以修改其他的链接。修改如下。

MOUN %CurDrv%/winpe/OP.WIM,Y:/外置程序,1

保存,然后拷贝到u盘的boot文件夹下。

7、拷贝MyFeng/Boot下的ldrxpefon.binntd.comu盘的boot文件夹下。

8、用记事本修改MyFeng/Boot下的xpsi文件中的WinPE.IS_路径为:

OsLoadOptions="/minint /fastdetect /rdexportascd /rdpath=winpe/WinPE.IS_"

保持,然后拷贝到u盘的boot文件夹下。

9、解压缩下载得到的loadbin-0.1-bin-w32-2008-03-01.zip,把其中的ldntldr.bin改名为ldntldr,然后拷贝到u盘的boot文件夹下。

10、修改SYSLINUX.CFG文件,在其中加入下面内容:

LABEL WinPE

MENU LABEL Lite Win PE

kernel /boot/ldntldr

append initrd=/boot/ldrxpe

十、安装Ceedo

把下载得到的Ceedo安装到你的u盘,然后进行配置。

十一、U盘的目录结构和启动配置文件

1、根目录

|---boot----|--syslinux--| sysinux.cfg

|---dos

|---slax

|---winpe

|---Ceedo

|---My Documents

2、参考SYSLINUX.CFG文件内容:

prompt 1

timeout 90

default vesamenu.c32

MENU BACKGROUND back.png

 

MENU WIDTH 36

MENU MARGIN 0

MENU ROWS 8

MENU HELPMSGROW 14

MENU TIMEOUTROW 22

MENU TABMSGROW 24

MENU CMDLINEROW 24

MENU HSHIFT 40

MENU VSHIFT 2

menu color screen 37;40 #00000000 #00000000 none

menu color border 30;44 #00000000 #00000000 none

menu color title 1;36;44 #00000000 #00000000 none

menu color unsel 37;44 #ff60CA00 #00000000 none

menu color hotkey 1;37;44 #ff60CA00 #00000000 none

menu color sel 7;37;40 #ffffffff #ff60CA00 none

menu color hotsel 1;7;37;40 #ff808080 #ff60CA00 none

menu color scrollbar 30;44 #00000000 #00000000 none

menu color tabmsg 31;40 #aaaaaaaa #00000000 none

menu color cmdmark 1;36;40 #ffff0000 #00000000 none

menu color cmdline 37;40 #aaaaaaaa #00000000 none

menu color pwdborder 30;47 #ffff0000 #00000000 std

menu color pwdheader 31;47 #ffff0000 #00000000 std

menu color pwdentry 30;47 #ffff0000 #00000000 std

menu color timeout_msg 37;40 #aaaaaaaa #00000000 none

menu color timeout 1;37;40 #ffaaaaff #00000000 none

menu color help 37;40 #aaaaaa00 #00000000 none

menu color msg07 37;40 #90ffffff #00000000 std

MENU TITLE Jinjun's Tools Disk

LABEL MaxDOS

MENU LABEL MaxDOS

kernel /boot/syslinux/memdisk c=142 h=4 s=36 floppy

append initrd=/dos/MaxDOS.img

TEXT HELP

More about currently selected:

Run MaxDOS.

ENDTEXT

 

LABEL WinPE

MENU LABEL Lite Win PE

kernel /boot/ldntldr

append initrd=/boot/ldrxpe

TEXT HELP

More about currently selected:

Run Lite Win PE.

ENDTEXT

LABEL xconf

MENU LABEL Slax Graphics mode (KDE)

kernel /boot/vmlinuz

append initrd=/boot/initrdch.gz ramdisk_size=6666 root=/dev/ram0 rw autoexec=xconf;telinit~4 changes=/slax/ locale=CHS.UTF-8

TEXT HELP

More about currently selected:

Run Slax the best way we can.

ENDTEXT

 

LABEL reboot

MENU LABEL reboot

kernel /boot/syslinux/reboot.c32

TEXT HELP

More about currently selected:

reboot.

ENDTEXT

十二、使用

在使用中你可以把启动顺序设置u-hdd方式优先。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值