CDemu
CDemu 是一個虛擬光碟機,可以掛載.bin/.cue, .nrg, 或 .ccd 等非ISO-9660格式光碟鏡像。mount
只能掛載包含單一文件系統的 iso。而許多 cd 都帶有複雜的信息,比如混合數據和音軌。CDemu 能獲得這些CD鏡像完整、原始的內容。
CDemu 利用vhba內核模塊模擬出一個SCSI CD/DVD設備,由後台運行的cdemud守護進程(cdemud
)與該模塊通信。鏡像分析代碼被抽象到一個庫中(libmirage
),需要支持新的鏡像格式時,也便於擴充。守護進程響應來自客戶端的dbus命令。CDemu軟體包提供了兩種可選的客戶端:基於命令行的(cdemu-client
)和GNOME的panel applet——(gcdemu
).
安裝[編輯 | 編輯原始碼]
CDemu 可以通過 安裝 官方軟體倉庫 中的軟體包 cdemu-client包 獲得。如果使用自定義內核,不要使用正常的 vhba
內核軟體包 vhba-module包, 必須使用 DKMS 版本的軟體包 vhba-module-dkms包.
啟動 Systemd 服務:
# systemctl enable cdemu-daemon.service
systemd 不會自動加載 CD/DVD 驅動,需要手動加載:
# modprobe -a sg sr_mod vhba
圖形界面[編輯 | 編輯原始碼]
AUR 中包含了多個圖形界面:
- GTK/Gnome gcdemuAUR: 提供 GNOME 面板程序。
- KDE kde-cdemu-managerAUR: 獨立程序,與 Dolphin 的動作菜單交互,可以在鏡像文件上右鍵。
示例[編輯 | 編輯原始碼]
將單個鏡像加載為第一個設備:
$ cdemu load 0 ~/image.mds
將多文件鏡像加載為第一個設備:
$ cdemu load 0 ~/session1.toc ~/session2.toc ~/session3.toc
設定字符編碼:
$ cdemu load 0 ~/image.cue --encoding=windows-1250
掛載加密鏡像:
$ cdemu load 0 ~/image.daa --password=seeninplain
卸載第一個設備:
$ cdemu unload 0
顯示設備狀態:
$ cdemu status
顯示設備掛載信息:
$ cdemu device-mapping
Setting daemon debug mask for the first device:
$ cdemu daemon-debug-mask 0 0x01
Obtaining library debug mask for the first device:
$ cdemu library-debug-mask 0
Disabling DPM emulation on all devices:
$ cdemu dpm-emulation all 0
Enabling transfer rate emulation on first device:
$ cdemu tr-emulation 0 1
Changing device ID of first device:
$ cdemu device-id 0 "MyVendor" "MyProduct" "1.0.0" "Test device ID"
Enumerating supported parsers:
$ cdemu enum-supported-parsers
Enumerating supported fragments:
$ cdemu enum-supported-fragments
Enumerating supported daemon debug masks:
$ cdemu enum-daemon-debug-masks
Enumerating supported library debug masks:
$ cdemu enum-library-debug-masks
Displaying daemon and library version:
$ cdemu version