準備把maxdos6整進pxelinux的菜單中,結果發現通過pxelinux引導maxdos6.pxe無法啟動,而maxdos6.sys也不是標準的鏡像,通過memdisk也引導不成功。沒辦法,只能將裡面的檔案提取出來,然後通過重建一個IMG鏡像。於是下了個WinImage,然後按照網上搜到的方法:
1、建立一個 2.88 M 標準格式鏡像
2、設定開機磁區屬性為 “Windows 95/98”方式
3、對鏡像進行擴容
4、將提取出來的檔案全部添加進來,儲存為maxdos6.img
然後把maxdos6.img壓縮為maxdos6.zip,拷入pxelinux目錄中,修改pxelinux.cfg/default,添加如下一段:
LABEL maxdos6
MENU LABEL ^7----Boot for MaxDOS6
kernel memdisk c=280 h=2 s=36 floppy
append initrd=maxdos6.zip
然後設定用戶端從PXE啟動,可以正常啟動了,但是在載入網卡驅動的時候,出現錯誤:”Error closing file“,重新啟動進入DOS命令列發現A盤只能讀不能寫。Baidu,Google都沒找到解決的方法,沒辦法,只能靠自己了。先開啟memdisk的文檔,memdisk預設是可寫的,只有加上參數ro才為可讀,應該是img的問題,於是找了一些別人做好的img來研究,經過反覆的實驗,終於找到瞭解決的辦法:
在對鏡像擴容後,先往鏡像裡加入一些檔案把鏡像的空間佔滿,然後把這些檔案刪掉,最後再把maxdos的檔案拷進來,儲存。然後壓縮成zip檔案放入pxelinux目錄下,啟動用戶端,終於OK了。
當然這個方法還是比較麻煩,還有個簡單的方法,在WinImage的"選項"菜單裡找到"設定",選擇"映像"選項卡,將最下面”載入到記憶體的映像的大小限制 (KB)"的值設定為大於等於要製作的鏡像的大小即可。
參考文章:
1. 用 WinImage 製作 大IMG磁碟片鏡像
2. 製作任意容量可引導 IMG 鏡像