標籤:des style c class blog code
一般製作多系統啟動盤的教程都會要用到rub4dos+grubinst+ultraiso+msgdiyerl等等工具,很多的時候都是用隨身碟量產來實現,這樣做的壞處就是:製作繁瑣對隨身碟傷害較大且無法復原,讓人望 而生畏。本教程採用完全不同於傳統的方法製作多系統啟動隨身碟,方法原理簡單,操作方便。
廢話不多說,下面看正題:
其實大白菜裡已經對這些工具做了非常好的封裝,利用大白菜+FbinstTool+Windows+Ubuntu,我們就可以方便的製作出功能豐富的啟動隨身碟。 懂grub一些開機引導命令,會更好,靈活的定製自己的引導盤
製作步驟:
1.開啟大白菜4.6(http://pan.baidu.com/s/1eQ24uWi),點擊“一鍵製作啟動隨身碟”。大白菜會從隨身碟上划出400M作為隱藏式磁碟分割,裡麵包括win7pe,win03pe以及其他一些有用的工具。
勾選NTFS,快顯視窗選否(就是製作後轉為NTFS格式),這樣隨身碟就能拷大於4G的檔案了
製作完後,大白菜就沒用了= =現在隨身碟裡會只有一個GHO檔案夾,大白菜已經將PE及引導寫入了一個隱藏式磁碟分割裡,然後將要用的東西拷進隨身碟
接著,將win7鏡像內的檔案全部解壓到隨身碟根目錄,再把bootmgr改名為win7mgr(大白菜列表裡預設是讀win7mgr來引導,所以我們就這麼做吧),最終效果,bootmgr已改名為win7mgr
2.利用FbinstTool開啟隨身碟的隱藏式磁碟分割,雙擊開啟(ud)/BOOT/GRUB/grldr,可以看到裡面是對主菜單的定義,其中包括等待時間,預設選項,各個功能表項目的定義。
3.在隨身碟根目錄中(注意不是隱藏式磁碟分割)建立UBUNTU檔案夾,將ubuntu-12.10-desktop-amd64.iso中casper目錄下 的initrd.lz和vmlinuz兩個檔案提取出來(可以用UltraISO、FbinstTool等等),連同ubuntu-12.10- desktop-amd64.iso一起放進ubuntu12.04檔案夾中。鏡像可以更改名字,可以不更改名字,有一點:你要知道自己在幹嘛就行了(可以不更改名子)。
4.熟悉檔案目錄,具體的不作介紹了,有個別地方需要注意一下,(38和39行之間)下面的代碼大家應該能看懂。title後面寫的就是功能表項目的名字
RUN /win7mgr 指的就是運行隨身碟根目錄下的win7mgr進行引導
kernel /ubuntu12.04/vmlinuz.efi boot=/casper iso-scan/filename=/ubuntu12.04/ubuntu-12.04-desktop-amd64.iso ro quiet splash locale=en.UTF-8
這一句各段內容是:指定kernel位置,指定boot位置,指定iso位置,運行參數,設定語言為中文UTF-8,指定livecd啟動時啟動並執行指令碼,原文還有一句find --set-root /UBUNTU/vmlinuz,但是不要也可以
(這裡是Fbintool工具地址http://pan.baidu.com/s/1gdsXFwv)
5.修改(ud)/BOOT/GRUB/grldr中的內容如下(注意與你的檔案目錄一致)
1 timeout 15 2 default 0 3 command --set-path=(ud)/BOOT/GRUB/ 4 gfxmenu (ud)/BOOT/GRUB/MESSAGE 5 configfile (md)4+8 6 title 【01】 硬碟引導啟動 7 RUN (ud)/BOOT/GRUB/MENU12.LST 8 title 【02】 安裝Ubuntu 12.04-86_x64 9 find --set-root /ubuntu12.04/vmlinuz.efi 10 echo $[1105]Loading ubuntu-12.04-desktop-amd64!!waiting!! 11 kernel /ubuntu12.04/vmlinuz.efi boot=/casper iso-scan/filename=/ubuntu12.04/ubuntu-12.04-desktop-amd64.iso ro quiet splash locale=en.UTF-8 12 initrd /ubuntu12.04/initrd.lz 13 title 【03】 安裝 ubuntu-10.04-i386 14 find --set-root /ubuntu10.04-i386/vmlinuz 15 echo $[1105]Loading ubuntu-10.04-desktop-i386!!waiting!! 16 kernel /ubuntu10.04-i386/vmlinuz boot=/casper iso-scan/filename=/ubuntu10.04-i386/ubuntu-10.04-desktop-i386.iso ro quiet splash locale=en.UTF-8 17 initrd /ubuntu10.04-i386/initrd.lz 18 title 【04】 安裝 Fedora-17-i686-desktop-live 19 find --set-root /syslinux/vmlinuz0 20 kernel /syslinux/vmlinuz0 root=live:LABEL=LIVE rootfstype=auto ro liveimg quiet rhgb 21 initrd /syslinux/initrd0.img 22 title 【05】安裝 ubuntu10.04-x86 23 find --set-root /ubuntu10.04/vmlinuz 24 echo $[1105]Loading ubuntu-10.04-desktop-amd64!!waiting!! 25 kernel /ubuntu10.04/vmlinuz boot=/casper iso-scan/filename=/ubuntu10.04/ubuntu-10.04-desktop-amd64.iso ro quiet splash locale=en.UTF-8 26 initrd /ubuntu10.04/initrd.lz 27 title 【06】安裝 ubuntu12.04-x86 28 find --set-root /ubuntu12.04-i386/vmlinuz 29 echo $[1105]Loading ubuntu-12.04-desktop-i386!!waiting!! 30 kernel /ubuntu12.04-i386/vmlinuz boot=/casper iso-scan/filename=/ubuntu12.04-i386/ubuntu-12.04.3-desktop-i386.iso ro quiet splash locale=en.UTF-8 31 initrd /ubuntu12.04-i386/initrd.lz 32 title 【07】 運行Win7PE精簡版 33 checkrange 0x30001:-1 read 0x8298 34 clear 35 echo $[1106] Loading DBC WIN7PE.ISO, www.winbaicai.com 36 map --mem (ud)/PE/DBC7.ISO (0xff) ! map (ud)/PE/DBC7.ISO (0xff) 37 map --hook 38 chainloader (0xff) title 【08】安裝win7 64位旗艦版 RUN /win7mgr 39 title 【09】 其他工具 40 RUN (ud)/BOOT/GRUB/DIY.LST
這個菜單中我們保留了運行winpe的選項,加入了安裝ubuntu和fedora的選項。為了保持菜單精簡,將其他功能都整合到了另一個菜單裡 (DIY.LST)。Ubuntu功能表項目中kernel /UBUNTU/vmlinuzboot=/casper iso-scan/filename=/UBUNTU/ubuntu.iso這三句還有initrd/UBUNTU/initrd.lz是不能少的,它指 明了從哪裡載入系統。ro quiet locale=zh_CN.UTF-8就是指明我們希望使用的語言等等,不寫也無所謂。上面那句find是尋找檔案,推薦寫,不寫的話也沒有什麼影響,系 統會自動尋找。注意修改後儲存
6.修改DIY.LST,內容如下
1 timeout 15 2 default 4 3 gfxmenu (ud)/BOOT/GRUB/MESSAGE 4 configfile (md)4+8 5 title 【01】 PE藍黑屏無法進入不認硬碟方案 6 RUN (ud)/BOOT/GRUB/MENU03.LST 7 title 【02】 進入Ghost備份還原系統多合一菜單 8 RUN (ud)/BOOT/GRUB/MENU04.LST 9 title 【03】 運行最新版DiskGenius分區工具 10 RUN --mem (ud)/BOOT/IMGS/DBCDOS.IMG 11 title 【04】 運行MaxDos工具箱增強版菜單 12 RUN --mem (ud)/BOOT/IMGS/MAXDOS.IMG 13 title 【05】 運行硬碟記憶體檢測掃描工具菜單 14 RUN (ud)/BOOT/GRUB/MENU07.LST 15 title 【06】 運行Windows登陸密碼破解菜單 16 RUN (ud)/BOOT/GRUB/MENU08.LST 17 title 【07】 啟動USB2.0加速電腦啟動(老機專用) 18 (ud)/BOOT/GRUB/USB_ACC.0PE 19 title 【08】 安裝原版Win7/Win8系統(非GHOST版) 20 RUN (ud)/BOOT/GRUB/MENU11.LST 21 title 【09】 返回大白菜隨身碟啟動主菜單 22 configfile (md)4+8 23 title 【10】 運行大白菜Win03PE2013網路增強版 24 checkrange 0x30001:-1 read 0x8298 25 clear 26 echo Loading DBC WIN03PE.ISO 27 map --mem (ud)/PE/WINPE.ISO (0xff) ! map (ud)/PE/WINPE.ISO (0xff) 28 map --e820cycles=0 29 map --hook 30 chainloader (0xff) 31 title 【11】 重啟電腦 32 reboot 33 title 【12】 關閉電腦 34 halt
我們就是把原來主菜單中的東西搬了過來,沒做任何改動。儲存檔案。
7.可以將隨身碟目錄下UBUNTU和CDLINUX目錄設為隱藏,這樣可以防止誤刪。
8.以後要添加BackTrack等等只需要修改grldr即可。
後記:1.為了隨身碟目錄的乾淨整潔,呃,嘗試過把win7鏡像解壓在隨身碟內建立的一個檔案夾裡,然後在功能表項目修改相應路徑,但是失敗了,看來只能解壓在根目錄,或者還得動點其他什麼手腳? 2.有些盆友可能會遇到啟動ubuntu LiveCD時提示掛載出錯,提示windows is hibernated云云,這 是因為你的windows沒有系統保留分區(又是它= =)只有一個主要磁碟分割,啟動時會調用硬碟主要磁碟分割內的boot所以一直佔用導致掛載失敗,而有系統保留分區的話就只會調用單獨的系統保留分區,掛載就沒問題 (猜測這也是導致win7安裝時提示“安裝程式無法建立新的系統磁碟分割,也無法定位現有系統磁碟分割”的原因之一),所以系統保留分區很萌噠你們不要刪它,有這種情況的童鞋可以嘗試在BIOS裡設定隨身碟為第一啟動項,而非每次手動選擇啟動裝置為隨身碟,當然最好的方法還是用PE啥的弄好系統保留分區啦 現在查出來的原因是,隨身碟的分區處於佔用狀態,所以會出這樣的問題,解決方案有兩種: 1.插著隨身碟進入系統,然後將隨身碟卸載/彈出,拔出隨身碟,關機,插隨身碟,隨身碟啟動 2.完全關機,拔隨身碟,插隨身碟,進BIOS設定隨身碟為第一啟動項,重啟
----吳尚奇 Devil_box 2014/05
註:這篇文章不是我的原創,是經過大量網上尋找資料總結出來,經實驗可以用的。