FreeBSD 內建 mdconfig 裝置驅動程式,可將 ISO 檔案模擬為區塊裝置(/dev/mdX),再以 mount_cd9660 掛載,實現「虛擬光碟機」功能。無需第三方工具,即可安裝系統、存取光碟映像內容。本文說明完整操作步驟與 sysinstall 整合方式。
/var/osorg/FreeBSD-14.0-RELEASE-amd64.iso)mkdir -p /dist)mdconfig -a -t vnode -f /var/osorg/FreeBSD-14.0-RELEASE-amd64.iso
# 輸出: md0 (配配配配的裝置編號)
參數說明:
-a:附加裝置-t vnode:類型為 vnode(一般檔案)-f:指定備份檔案路徑mount_cd9660 /dev/md0 /dist
驗證:
ls /dist
# 應顯示 ISO 根目錄內容(boot、base.txz、kernel.txz 等)
若使用 sysinstall 進行安裝/套件管理:
sysinstall
# 選單:Configure → Media → File System
# 輸入掛載路徑: /dist
# 即可從 ISO 讀取套件/原始碼
umount /dist
mdconfig -d -u 0 # 釋放 md0 裝置
mdconfig -a -t vnode -f /path/to/file.iso -u 5
# 固定使用 /dev/md5
mount_cd9660 /dev/md5 /mnt/iso5
/path/to/file.iso /mnt/iso cd9660 ro,noauto,late 0 0
# 手動掛載: mount /mnt/iso
# 開機不自動掛載(需 mdconfig 先建立裝置),late 確保多使用者環境就緒後處理
搭配 /etc/rc.local 或 systemd(FreeBSD 13+ 支援)自動建立 md 裝置:
# /etc/rc.local
mdconfig -a -t vnode -f /path/to/file.iso -u 10
mount /mnt/iso
mount /dev/md0 /mnt(自動偵測)mount_msdosfs /dev/md0 /mntfusefs-ntfs,ntfs-3g /dev/md0 /mnt| 錯誤 | 原因與解決 |
|---|---|
mount_cd9660: /dev/md0: Device not configured | mdconfig 未成功或裝置編號錯誤,檢查 mdconfig -l |
Invalid argument | ISO 檔案損毀、非 ISO 9660 格式,嘗試 file file.iso 驗證 |
| 掛載點非空 | 目錄已有內容,掛載會遮蓋原內容,請使用空目錄 |
| 權限拒絕 | 需 root 權限,或檔案權限不允許讀取 |
pkg install、make install clean,無需 ISO。FreeBSD mdconfig + mount_cd9660 提供輕量級虛擬光碟機功能,三條指令即可掛載 ISO。適合離線安裝、檢視安裝媒體內容、舊版 sysinstall 操作。現代管理多改用網路安裝,但此技能在嵌入式、隔離網路環境仍具價值。
Linux 動態函式庫 建立與鏈結實戰:從 .so 產生到執行期載入
VNC 遠程連線 Linux 桌面完整教學:Server 安裝、配置、密碼、防火牆、Viewer 連線
Ubuntu 系統安裝 WPS Office 後缺字型解決方案(符號亂碼修正)
華碩 F81se 筆電安裝 Ubuntu 12.04 出現 Cannot allocate resource for EISA slot 錯誤解決方法
Linux 記憶體緩存釋放實戰:drop_caches 參數詳解、安全釋放流程與自動化策略
CentOS 6.4 升級 Python 導致 yum 失效?修復指南(修改 yum shebang + 重裝系統 Python RPM)