Windows XP Windows 7 Windows 2003 Windows Vista Windows 綜合教學 Linux 系統教學
Windows 10 Windows 8 Windows 2008 Windows NT Windows Server 電腦軟體教學
您现在的位置: Windows教程網 >> Windows教程 >  >> Linux 系統教學 >> Linux 教學

Linux 使用 mkisofs 製作可開機 ISO 映像檔完整參數說明

編輯:Linux 教學

mkisofs (或 genisoimage) 是 Linux 下製作 ISO 9660 光碟映像的標準工具。本文整理開機光碟關鍵參數、常用指令範例、常見警告解決方案。

關鍵開機參數

參數說明
-no-emul-boot指定開機映像為「無模擬」模式 (非軟碟/硬碟模擬)
-b / -eltorito-boot 指定開機映像檔路徑 (相對 ISO 根目錄),如 isolinux/isolinux.bin
-c / -eltorito-catalog 指定開機目錄檔名稱,mkisofs 會自動產生,如 isolinux/boot.cat
-J / -joliet生成 Joliet 目錄記錄 (支援 Windows 長檔名、Unicode)
-R / -rock生成 Rock Ridge 目錄記錄 (支援 Linux/Unix 權限、長檔名、符號連結)
-r / -rational-rockRock Ridge + 開放所有檔案讀取權限 (適合發布光碟)
-boot-load-size 4開機載入區塊大小 (預設 4 扇區,兼容性最佳)
-boot-info-table在開機映像中嵌入資訊表 (修正啟動位置)
-input-charset UTF-8指定輸入字元集 (解決檔名編碼警告)
-V 設定卷標標籤
-o 指定輸出 ISO 檔名

完整指令範例


mkisofs -r -J -T -V "MY_BOOT_ISO" \
  -o custom.iso \
  -b isolinux/isolinux.bin \
  -c isolinux/boot.cat \
  -no-emul-boot \
  -boot-load-size 4 \
  -boot-info-table \
  -input-charset UTF-8 \
  .
  • -T:生成 TRANS.TBL 對照表 (舊系統兼容)
  • 結尾的 . 代表當前目錄為 ISO 根目錄來源,**不可省略**,否則報 Missing pathspec。

常見警告與解決

警告/錯誤原因解決
Warning: creating filesystem that does not conform to ISO-9660.檔名過長或含非 ISO-9660 字元加上 -J -R (Joliet+Rock Ridge) 即可解決,或移除 -d 參數
INFO: UTF-8 character encoding detected by locale settings.系統 locale 為 UTF-8,檔名編碼自動偵測明確加上 -input-charset UTF-8
mkisofs: Missing pathspec未指定來源路徑在 -o output.iso 後加上 . 或具體路徑

進階:製作 UEFI + BIOS 雙模式開機 ISO

需準備 efi.img (FAT12/16 映像含 EFI 檔案),並加入參數:


-eltorito-alt-boot \
-e efi.img \
-no-emul-boot \
-eltorito-platform efi

完整指令會包含兩組 -b/-eltorito-alt-boot 區塊。

Copyright © Windows教程網 All Rights Reserved