首先是最簡單的步驟(在500MB U盤下成功,試過2G,好像不行):
1. 必須的文件:IO.SYS / MSDOS.SYS / COMMAND.COM / CONFIG.SYS。
2. 拷入U盤根目錄。MSDOS.SYS包含系統的基本代碼。IO.SYS包含基本的IO驅動。COMMAND.COM是dos的shell。開啓主板的U盤啓動,此時應該可以從U盤啓動。
3. 包含DOS實用程序。在U盤根目錄新建DOS71\文件夾存放需要的DOS程序。修改根目錄下CONFIG.SYS的PATH變量。
關於啓動後顯示的盤符問題:
1、USB-HDD:硬盤仿真模式,DOS啓動後顯示C:盤,HP U盤格式化工具製作的U盤即採用此啓動模式。此模式兼容性很高,但對於一些只支持USB-ZIP模式的電腦則無法啓動。
2、USB-ZIP:大容量軟盤仿真模式,DOS啓動後顯示A盤,FlashBoot製作的USB-ZIP啓動U盤即採用此模式。此模式在一些比較老的電腦上是唯一可選的模式,但對大部分新電腦來說兼容性不好,特別是大容量U盤。
3、USB-HDD+:增強的USB-HDD模式,DOS啓動後顯示C:盤,兼容性極高。其缺點在於對僅支持USB-ZIP的電腦無法啓動。
4、USB-ZIP+:增強的USB-ZIP模式,支持USB-HDD/USB-ZIP雙模式啓動(根據電腦的不同,有些BIOS在DOS啓動後可能顯示C:盤,有些BIOS在DOS啓動後可能顯示A:盤),從而達到很高的兼容性。其缺點在於有些支持USB-HDD的電腦會將此模式的U盤認爲是USB-ZIP來啓動,從而導致4GB以上大容量U盤的兼容性有所降低。
5、USB-CDROM:光盤仿真模式,DOS啓動後可以不佔盤符,兼容性一般。其優點在於可以像光盤一樣進行XP/2003安裝。製作時一般需要具體U盤型號/批號所對應的量產工具來製作,對於U3盤網上有通用的量產工具。
整個啓動流程到操作系統之前的動作應該是這樣的:
- BIOS:啓動主動運行的韌體,會認識第一個可啓動的裝置;
- MBR:第一個可啓動裝置的第一個磁區內的主要啓動記錄區塊,內含啓動管理程序;
- 啓動管理程序(boot loader):一支可讀取核心文件來運行的軟件;
- 核心文件:開始操作系統的功能...
一些相關概念的示意圖:
圖1 磁盤組成示意圖 圖2 磁盤分區表的作用示意圖
每個Sector可以存儲512Byte數據,每個Cylinder包含若干Sector,Cylinder環狀分佈。磁盤結構可以展開成爲右圖的形式。第一個Sector存儲MBR,前64字節存儲着分區表。分區表的表項實際上記錄着partition起始Cylinder和結束Cylinder。
bootloader可以裝在第Cylinder 0 Sector 0,也可以裝在每個Partition的MBR區。安裝Windows會默認覆蓋Cylinder 0 Sector 0。
DOS啓動盤的大小限制:主要是看操作系統所支持的文件格式的限制。DOS7.1之後加入FAT32文件系統的支持,理論上單卷最大8TB,單文件最大4GB。更應該關心DOS對於內存使用大小的限制。
爲什麼大於1GB的U盤用上面的方法啓動不成功?
SD不能製作DOS啓動盤?爲什麼?
磁盤管理bootable和一般的區別。
linux 當前內核誤刪之後的恢復:
1.liveCD啓動
2.掛在根目錄所在分區
3.chroot
4.sudo apt-get install linux-headers-xxx linux-headers-xxx-generic linux-image-xxx-generic
5.sudo update-grub
6.reboot
7.grub command 模式
set root=(hd0,msdosx)
linux /vmlinuz root=UUIC=XXX ro locale=en_US quiet splash
initrd /initrd.lz
boot
注:UUID可以通過 ls (hd0,msdosx) 查詢
8.進入系統之後重複4.5,reboot完成。
以上步驟還不知道哪些是必須的。
參考資料:
1.無憂啓動論壇