server03 從源碼到鏡像
前言
最近跟著國外大佬的視頻,從頭到尾編譯了一遍 server2003。特地把整個(gè)過程錄制了下來,記錄了把 server2003 源碼打包成鏡像的完整過程,主要分為:環(huán)境搭建,編譯,驗(yàn)證三個(gè)部分。
本文及視頻僅用于技術(shù)交流,請勿用于非法用途。如有侵權(quán),請聯(lián)系我刪除。
環(huán)境搭建
有幾個(gè)關(guān)鍵點(diǎn)需要注意:
為了避免不必要的麻煩,請選擇 32位英文版的xp系統(tǒng)進(jìn)行安裝。我使用中文版xp編譯有問題。在 vmware中安裝系統(tǒng)時(shí),默認(rèn)只會(huì)生成一個(gè)C盤。源碼最好解壓到D盤,需要新增一個(gè)盤符。D盤需要40 GB的磁盤空間。根據(jù)自己主機(jī)情況,調(diào)整虛擬機(jī)中的設(shè)置。配置越高,編譯時(shí)間越短。
以上幾點(diǎn),視頻中都有提及。
編譯
環(huán)境搭建好之后,就可以編譯了。主要步驟如下:
解壓源碼(
nt5src\Source\Win2k3\NT\*)到d:\srv03rtm下,為了避免不必要的麻煩,請務(wù)必解壓到該文件夾下。解壓完成后,去除
d:\srv03rtm的只讀屬性,一定要勾選將修改應(yīng)用于此文件夾、子文件夾和文件。解壓
win2003_prepatched_v6b.zip到d:\srv03rtm下,如果操作正確的話會(huì)提示是否覆蓋現(xiàn)有文件,選擇Yes To All。手動(dòng)安裝證書文件。在
d:\srv03rtm\tools文件夾下找到driver.pfx文件,雙擊安裝。一直點(diǎn)擊Next,直到完成。如果是第一次安裝會(huì)有安全警告,請選擇Yes。跳過腳本中的證書安裝操作。編輯
d:\srv03rtm文件夾下的prebuild.cmd文件,修改SKIPCERTINSTALL的值為1。雙擊運(yùn)行
prebuild.cmd,耐心等待出現(xiàn)Press Any key to continue...,回車。新建
razzle.cmd快捷方式。設(shè)置
Target的值為%windir%\system32\cmd.exe /k d:\srv03rtm\tools\razzle.cmd free offline。設(shè)置
Start in的值為d:\srv03rtm\。
razzle-shortcut 雙擊新建的
razzle快捷方式,執(zhí)行一段時(shí)間后會(huì)彈出記事本界面,直接關(guān)閉即可。razzle執(zhí)行完成后,**不要關(guān)閉!不要關(guān)閉!不要關(guān)閉!**輸入build /cZP進(jìn)行編譯。我編譯了大概3個(gè)小時(shí)。敲黑板:
razzle.cmd會(huì)為當(dāng)前命令行設(shè)置一些臨時(shí)的環(huán)境變量,比如,添加build所在的路徑到PATH。確認(rèn)編譯結(jié)果!編譯完成后,不應(yīng)該有任何錯(cuò)誤,只會(huì)有一些警告,如果有錯(cuò)誤,說明前面某個(gè)步驟出錯(cuò)了。

編譯成功后就可以開始準(zhǔn)備打包了。
解壓
missing.7z中的文件到d:\binaries.x86fre下。執(zhí)行
tools\postbuild.cmd -sku:{srv}。執(zhí)行需要一段時(shí)間,請耐心等待。執(zhí)行完成后,檢查
d:\binaries.x86fre\build_logs下的postbuild.err中的錯(cuò)誤數(shù)。不應(yīng)該有很多,但也不會(huì)太少,很可能像下圖這樣。
check-postbuild-error 解壓
2k3missingx86fre NOTFINAL v3.7.7z中的文件到d:\binaries.x86fre下。一定要注意:不要覆蓋任何現(xiàn)有文件。解壓完成后,再次執(zhí)行
tools\postbuild.cmd -sku:{srv}。執(zhí)行完成后,再次檢查
d:\binaries.x86fre\build_logs下的postbuild.err文件中的錯(cuò)誤數(shù),這次應(yīng)該只有很少的幾個(gè)錯(cuò)誤,類似下圖:
check-postbuild-error-again 執(zhí)行
tools\postbuild.cmd -sku:srv。執(zhí)行成功后,會(huì)在d:\binaries.x86fre下生成一個(gè)名為srv的文件夾。敲黑板:
這是第三次執(zhí)行
tools\postbuild.cmd,這次的參數(shù)是不帶大括號(hào)的-sku:srv。國外大佬的視頻中并沒有錄制執(zhí)行第三次的過程,所以有的小伙伴兒會(huì)在這里被坑。最后,執(zhí)行
tools\oscdimg.cmd srv即可生成最終的系統(tǒng)鏡像文件。
如果上面的描述不夠明白,沒關(guān)系,看視頻。
驗(yàn)證
拷貝制作好的系統(tǒng)鏡像和符號(hào)文件(只需要拷貝 symbols.pri 文件夾下的符號(hào)文件)到主機(jī)上。拷貝完成后,使用生成的鏡像文件新建虛擬機(jī),具體過程與安裝 XP 虛擬機(jī)類似,安裝過程從略。調(diào)試環(huán)境搭建,及使用 windbg 進(jìn)行內(nèi)核調(diào)試的過程請參考視頻。
相關(guān)文件
我已經(jīng)把相關(guān)的文件上傳到百度云盤了。
鏈接: https://pan.baidu.com/s/1M8vId2uFyxgIUTE2wDdXvQ
提取碼: 163c
這些文件包括:
32位英文版xp系統(tǒng)鏡像。油管上外國大佬錄制的視頻及缺失的文件,及相應(yīng)的鏈接。
razzle.cmd快捷方式。server03可用的lisence。我錄制的三段視頻。
沒有源碼,請自行到網(wǎng)上搜索。
感謝你的討論,分享,點(diǎn)贊和在看
