Difference between revisions of "CDemu"

From ArchWiki
Jump to: navigation, search
(Instructions for systemd)
(8 intermediate revisions by 4 users not shown)
Line 1: Line 1:
[[Category:Optical (English)]]
+
[[Category:Optical]]
{{i18n|CDemu}}
+
[[zh-CN:CDemu]]
[http://cdemu.sourceforge.net/ CDemu] enables you to use disc images that contain more than a standard ISO-9660 filesystem, like .bin/.cue, .nrg, or .ccd images. It's needed only because {{Ic|mount}} can only directly handle .iso disc images, which can only contain a single filesystem, but many CDs have multiple sessions, mixed data/audio tracks, etc. In short you can mount nearly any kind of image file with ease using cdemu.
+
[http://cdemu.sourceforge.net/ CDemu] is a software suite designed to emulate an optical drive and disc (including CD-ROMs and DVD-ROMs). It enables you to use other disk image formats that contain more than just the standard ISO-9660 filesystem, for instance .bin/.cue, .nrg, or .ccd images. {{Ic|mount}} can directly handle only .iso disc images (which contain a single filesystem), but many images contain multiple sessions, mixed data/audio tracks… In short, cdemu enables you to mount nearly any kind of image file with ease.
  
 
==Installation==
 
==Installation==
 +
CDemu can be [[pacman|installed]] with the package {{Pkg|cdemu-client}}, available in the [[official repositories]].
 +
To enable the daemon in systemd run:
 +
# systemctl enable cdemu-daemon.service
  
# pacman -S cdemu-client
+
===GUI===
 +
There are several GUIs available in the [[AUR]].
  
This will install the dependencies as well.
+
* GTK/Gnome: {{AUR|gcdemu}} is the official GTK version, which also provides a GNOME panel applet.
 
+
* KDE: {{AUR|kde-cdemu-manager}} is the KDE equivalent which also integrates with Dolphin's Actions menu when right clicking an image file.
==Configuration==
+
 
+
CDemu can be configured to register with the D-Bus system or session bus. A session bus instance is created for every user session, and is visible only within that session. On the other hand, there's only one instance of system bus, which is visible system-wide.
+
 
+
===System Bus===
+
 
+
To configure CDemu, edit {{ic|/etc/conf.d/cdemud}}. You can change the number of drives to emulate, the control device, and which audio backend to use.
+
 
+
====Starting cdemu====
+
 
+
If you want to start cdemu at boot add cdemud to the daemons section in {{ic|/etc/rc.conf}}.
+
 
+
you can also start cdemu manually by running '{{ic|/etc/rc.d/cdemud}} start' as root.
+
 
+
In both cases cdemud loads the necessary modules.
+
 
+
===Session Bus===
+
 
+
Add every user who needs to run the daemon to the cdemu group. They will need to log out to take effect.
+
 
+
Add {{ic|vhba}} to the modules array in {{ic|/etc/rc.conf}}
+
 
+
Copy {{ic|/etc/conf.d/cdemud}} to {{ic|~/.cdemu-daemon}} for configuration. All options replace variables in {{ic|/usr/bin/cdemu-daemon-session.sh}}
+
 
+
====Starting cdemu====
+
 
+
Run {{ic|cdemu-daemon-session.sh}} as a normal user. Errors are logged to {{ic|~/.cdemu-daemon.log}} by default.
+
 
+
==To Run==
+
 
+
By default on archlinux cdemu is configured to use the DBus system bus, the user command however defaults to the DBus session bus.
+
 
+
either replace cdemu in the below examples with 'cdemu -b system' or make an alias.
+
 
+
i added this alias to .bashrc of the users that need to run cdemu :
+
alias cdemu='cdemu -b system'
+
 
+
Leave as is if using session bus.
+
  
 
==Examples==
 
==Examples==
Line 99: Line 65:
 
Displaying daemon and library version:
 
Displaying daemon and library version:
 
  # cdemu version
 
  # cdemu version
 
==GUI==
 
Available on the AUR
 
 
GTK/Gnome {{AUR|gcdemu}}: Provides a GNOME panel applet.
 
 
KDE {{AUR|kde-cdemu-manager}}: Standalone program and integrates with Dolphin's Actions menu when right clicking an image file.
 

Revision as of 10:48, 8 February 2013

CDemu is a software suite designed to emulate an optical drive and disc (including CD-ROMs and DVD-ROMs). It enables you to use other disk image formats that contain more than just the standard ISO-9660 filesystem, for instance .bin/.cue, .nrg, or .ccd images. mount can directly handle only .iso disc images (which contain a single filesystem), but many images contain multiple sessions, mixed data/audio tracks… In short, cdemu enables you to mount nearly any kind of image file with ease.

Installation

CDemu can be installed with the package cdemu-client, available in the official repositories. To enable the daemon in systemd run:

# systemctl enable cdemu-daemon.service

GUI

There are several GUIs available in the AUR.

  • GTK/Gnome: gcdemuAUR is the official GTK version, which also provides a GNOME panel applet.
  • KDE: kde-cdemu-managerAUR is the KDE equivalent which also integrates with Dolphin's Actions menu when right clicking an image file.

Examples

Loading a single image to first device:

# cdemu load 0 ~/image.mds

Loading multiple-file image to first device:

# cdemu load 0 ~/session1.toc ~/session2.toc ~/session3.toc

Loading a text-based image in non-ASCII/non-Unicode encoding:

# cdemu load 0 ~/image.cue --encoding=windows-1250

Loading an encrypted image with password provided as an argument:

# cdemu load 0 ~/image.daa --password=seeninplain

Unloading first device:

# cdemu unload 0

Displaying device status:

# cdemu status

Displaying device mapping information:

# 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