设为首页 收藏本站
查看: 394|回复: 0

[经验分享] 【转】利用syslinux制作Dos、WinPE、Slax Linux集成u盘

[复制链接]
累计签到:77 天
连续签到:1 天
发表于 2015-3-4 18:10:08 | 显示全部楼层 |阅读模式
  【转自】http://blog.sina.com.cn/s/blog_4fb009a90100c7ze.html
利用syslinux制作Dos、WinPE、Slax Linux集成的口袋操作系统

  一、概述
  U盘的价格越来越便宜,容量也越来越大,携带也方便,在工作中可以把一些自己常用的工具整和到里面,在电脑维护方面使用比较方便。
  二、系统的选择
  1、dos系统
  目前在dos工具盘比较多,常见有MS-DOS 7.1,深山红叶DOS工具盘、MaxDos、矮人dos工具盘、超普DOS工具盘等,在制作中可以根据自己喜欢,选择相应的dos系统工具盘,我选择的MaxDos 7.1,里面有许多有用的工具,比如ghost 、pq、windows密码破解等。
  2、WinPE系统
  网上提供WinPE系统基本都是修改至老毛桃的WinPE,主要有老九WinPE 老毛桃修改之撒手不管版、深山红叶WINPE工具箱、、金手指快速装机U盘版、通用PE工具箱、完美者U盘WinPE维护系统、晨枫U盘维护等,为了使集成时修改最少,这里选择晨枫U盘维护版。
  3、Windows 故障恢复控制台
  Windows 故障恢复控制台的功能是帮助基于 Windows 的计算机在未正确启动或根本无法启动时进行恢复操作。这里选择网上的光盘上运行的基于Ramdisk的恢复控制台。
  4、Linux
  U盘上的Linux比较多,比如Damn Small Linux、Slax Linux、puppy linux、Ubuntu等选择体积比较小的,功能比较完备的,这里选择Slax。
  5、口袋操作系统
  主要有ceedo、mojopac和PortableApps Suite,根据自己的爱好去选择,我从使用习惯和功能上在这里选了ceedo。
  三、u盘启动引导程序的选择
  任何一个操作系统在任何一个硬件平台上运行都需要一个引导的过程,起着初始化软件环境、把内核从存储介质放到内存当中去,并开始运行的作用。引导程序上承 BIOS,下接内核的初始化代码,虽然开一次机只运行一次后就不留痕迹了,但相当的重要。
  可对u 盘引导的引导程序主要有IO、NTLDR、syslinux、Grub等,她们各有特点,从兼容性考虑,我选择了syslinux。syslinux是专门用来引导可移动介质的轻量级引导程序,支持initrd功能,initrd = init ramdisk,就是在启动时使用的一个内存虚拟磁盘,提高了对广泛的硬件支持性。
  四、软件清单与说明
  1、syslinux-3.73
  Syslinux系统文件,可以到下面地址下载:
  http://www.kernel.org/pub/linux/utils/boot/syslinux/syslinux-3.73.zip
  相关安装教程:
  http://syslinux.zytor.com/wiki/index.php/SYSLINUX
  2、HP优盘格式化工具
  HP优盘格式化工具是用来对u盘进行格式化的工具,也可以直接进行做io的启动u盘。可以到下面地址下载:
  http://www.xdowns.com/soft/6/7/2007/Soft_35477.html
  3、GDParam
  GDParam这个工具可以方便得获取 PC 虚拟启动当中所需要的磁盘镜像文件的c/h/s 参数。在用syslinux启动dos的磁盘镜像时需要指定c/h/s 参数。可以到下面地址下载:
  http://www.05sun.com/downinfo/5089.html
  4、WinImage
  用来创建和修改磁盘镜像的软件,你可以自己创建或者修改dos的磁盘镜像。可以到下面地址下载:
  http://www.crsky.com/soft/281.html
  5、UltraISO
  UltraISO软碟通是一款光盘映像ISO文件编辑制作工具,它可以图形化地从光盘、硬盘制作和编辑ISO文件。可以对下载得到的winpe或者slax光盘映像进行修改。可以到下面地址下载:
  http://www.crsky.com/soft/1134.html
  6、WinHex
  Winhex是在Windows下运行的十六进制编辑软件,在对winpe进行安装文件修改等方面需要的工具。可以到下面地址下载:
  http://www.orsoon.com/Soft/4921.html
  7、XCAB
  XCAB能调用系统的makecab.exe文件,把文件加或目录压缩为CAB,特别支持为 XCMD DEVI 生成 CAB,在对winpe进行修改打包时用到。可以到下面地址下载:
  http://bbs.wuyou.net/attachment.php?aid=14397
  8、WimTool
  WimTool可以对Wim格式文件进行进行操作处理,在修改winpe的外置程序包时必须用的。可以到下面地址下载:
  http://www.newasp.net/soft/app/26726.html
  9、MaxDOS 7.1 集成 GHOST 11.5 PQ、DM、光盘启动版
  电信下载   http://pzz.cn/soft/MaxDOS_71plus_iso.rar
  网通下载   http://c.pzz.cn/soft/MaxDOS_71plus_iso.rar
  10、Windows 故障恢复控制台
  http://www.xdowns.com/soft/6/boot/2006/soft_32527.html
  11、晨枫U盘维护V2.0_512M版
  http://www.rayfile.com/zh-cn/files/5731196e-e314-11dd-85f0-0019d11a795f/
  12、slax 6.0.9
  ftp://ftp.slax.org/SLAX-6.x/slax-6.0.9.iso
  13、Loadbin
  http://download.gna.org/grubutil/makerom-0.1-bin-w32-2008-01-01.zip
  14、ceedo
  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解压缩到syslinux-3.73文件夹,在其中的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配置文件。
  六、配置启动菜单
  拷贝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文件夹下。
  七、dos系统的配置
  1、在u盘的根建立dos文件夹
  2、制作dos映像文件
  (1)从网上下载得到的MaxDOS_71plus_iso.rar解压缩得到maxdos_71plus_iso.iso文件
  (2)用UltraISO打开maxdos_71plus_iso.iso提取出光盘映像maxdos文件夹下的maxs.sys文件。
  (3)把maxs.sys改名为maxs.gz,用winrar打开把其中的maxdos.exe解出。
  (4)然后把maxdos.exe 改名为maxdos.img
  (5)你自己可用WinImage进行对maxdos.img文件进行简单的修改,加入你自己的doas应用程序。
  (6)把修改后的MaxDOS.img复制到u盘的dos文件夹下。
  3、取得img文件的CHS参数
  syslinux支持gzip或zip压缩格式的磁盘映像,但memdisk自身不能压缩,memdisk支持标准floppy镜像直接启动,非标准(容量大于2880K的)要附加CHS参数。我们可以用GDParam取得img文件的CHS参数。记下c/h/s=555/2/18
  4、修改SYSLINUX.CFG
  打开u盘/boot/syslinux下的SYSLINUX.CFG文件,在里面添加形如下的内容:
  LABEL MaxDOS
  MENU LABEL Max DOS V7.1
  kernel /boot/syslinux/memdisk c=555 h=2 s=18 floppy
  append initrd=/dos/MaxDOS.img
  八、slax系统的配置
  1、把下载得到的slax-6.0.9.iso用UltraISO打开,完全提取出来放在slax-6.0.9文件夹下。
  2、把其中的slax文件夹包含子文件复制到u盘的根目录。
  3、把slax-6.0.9/boot文件夹下的linuz、initrd.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.ini和OEMLOGO.bmp进行修改,导入替换掉就可以了,保持iso文件,把新得到的iso文件用xcab软件重新进行打包,得到WinPE.cab,再把WinPE.cab改为WinPE.is_ 。
  4、修改winpe外置程序包
  解压缩解压缩得到的MyFeng/Boot下的OP.WIM用WimTool解开,然后你可以替换桌面背景图片,加入或者删除一些程序,然后再用WimTool打包成OP.WIM
  5、把处理完的OP.WIM、WinPE.is_文件拷贝到u盘的winpe文件夹。
  6、打开MyFeng/Boot下的winpe.ini修改其中的关于OP.WIM位置的代码,你也可以修改其他的链接。修改如下。
  MOUN %CurDrv%\winpe\OP.WIM,Y:\外置程序,1
  保存,然后拷贝到u盘的boot文件夹下。
  7、拷贝MyFeng/Boot下的ldrxpe、fon.bin、ntd.com到u盘的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、打开u 盘boot/syslinux下的SYSLINUX.CFG文件,在其中加入下面内容:
  LABEL WinPE
  MENU LABEL Lite Win PE
  kernel /boot/ldntldr
  append initrd=/boot/ldrxpe
  十、Windows 故障恢复控制台
  1、在u盘根建立comcns文件夹
  2、解压缩下载得到的base_ramdisk.rar文件到base_ramdisk文件夹
  3、用UltraISO打开base_ramdisk下的光盘上运行的基于Ramdisk的恢复控制台.iso文件,把其根目录下的CMDCONS.IS_、WINNT.SIF,提取出来,再把其i386下的SETUPLDR.BIN也提取出来。
  4、拷贝CMDCONS.IS_到u盘的comcns文件夹
  5、用记事本打开WINNT.SIF文件,把其中修改为:
  [SetupData]
  BootDevice = "ramdisk(0)"
  BootPath = "\i386\"
  OsLoadOptions = "/noguiboot /fastdetect /rdexportascd /rdpath=comcns\cmdcons.is_"
  然后保存。
  6、把修改后的WINNT.SIF文件改名为cnsi,并复制到u 盘boot/下。
  7、用WinHex打开SETUPLDR.BIN
  (1)查找替换,把NTDETECT.COM替换为boot\ntd.com,共4处,替换前2处就可。
  (2)查找替换,WINNT.SIF替换为boot\cnsi。全部替换,共9处。
  (3)保存SETUPLDR.BIN文件。
  8、把SETUPLDR.BIN改名为ldrcmdcon,并复制到u 盘boot/下。
  9、打开u 盘boot/syslinux下的SYSLINUX.CFG文件,在其中加入下面内容:
  LABEL Cmdcons
  MENU LABEL Cmd cons
  kernel /boot/ldntldr
  append initrd=/boot/ldrcmdcon
  十一、安装Ceedo
  把下载得到的Ceedo安装到你的u盘,然后进行配置。
  十二、U盘的目录结构和启动配置文件
  1、根目录
  |---boot----|--syslinux--| sysinux.cfg
  |---dos
  |---slax
  |---comcns
  |---winpe
  |---Ceedo
  |---My Documents
  
  2、SYSLINUX.CFG文件内容:
  prompt 1
  timeout 100
  default vesamenu.c32
  MENU BACKGROUND back.png
  F1 readme.txt
  F2 syslinux.cfg
  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 Max DOS V7.1
  kernel /boot/syslinux/memdisk c=555 h=2 s=18 floppy
  append initrd=/dos/MaxDOS.img
  TEXT HELP
  
  More about currently selected:
  
  Run Max DOS V7.1
  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 Cmdcons
  MENU LABEL Cmd cons
  kernel /boot/ldntldr
  append initrd=/boot/ldrcmdcon
  TEXT HELP
  
  More about currently selected:
  
  Boot System of cmdcon.
  ENDTEXT
  
  LABEL boothd
  MENU LABEL Boot System of HD1
  kernel /boot/syslinux/chain.c32
  append hd1
  TEXT HELP
  
  More about currently selected:
  
  Boot System of HD1.
  ENDTEXT
  
  LABEL boothd
  MENU LABEL Boot System of HD2
  kernel /boot/syslinux/chain.c32
  append hd2
  TEXT HELP
  
  More about currently selected:
  
  Boot System of HD2.
  ENDTEXT
  LABEL reboot
  MENU LABEL  Reboot
  kernel /boot/syslinux/reboot.c32
  TEXT HELP
  
  More about currently selected:
  
  reboot.
  ENDTEXT
  
  十三、使用
  在使用中你可以把启动顺序设置u-hdd方式优先。欢迎大家进行交流。

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.iyunv.com/thread-43014-1-1.html 上篇帖子: Linux下反斜杠号"\"引发的思考 下篇帖子: Linux.NET学习手记(6)
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表