CDEmuについての覚え書き(デーモンの各モードごとの細かい使い方)
「CDEmuについての覚え書き(概要、カスタムカーネル使用時のビルド設定、ユーザの大まかな操作)」の続き。
デーモン(cdemud)の動作モードに関して
- (/etc/init.d/以下のスクリプトを使用せず)セッション・バス*1を使用した場合、ユーザごとにデーモンを起動できる・ただし、ユーザはVHBAカーネルモジュールに対する制御を行う(/dev/vhba_ctlへ書き込む)ための権限が必要で、Gentoo Linuxでは「cdemu」グループのメンバになっている*2必要がある
- システム・バスを使用した場合は、システム全体で複数のユーザから使用できるデーモン(のインスタンス)が1つだけ動作する
- セッション・バスを使用したデーモンとシステム・バスを使用したデーモンは同時には動作しない
- 一般ユーザ権限でシステム・バスを使用したデーモンを起動するには、D-BUSと関係した設定*3を編集する必要がある?
- デーモンはローカルモード(通常のCLIプログラムとしての挙動)の他、システム・バス使用時にはデーモンモード(バックグラウンドで動作し、出力をシステムのログに書き出す)でも動作する
- /etc/init.d/以下のスクリプトから起動されるデーモンではデーモン・モードでシステム・バスを使用することになる
システムのデーモンを使用する
ここでの使い方は、/etc/init.d/以下のスクリプトからシステムのcdemudデーモンを起動した場合について。
Gentoo Linuxでは、OS起動時に自動起動するように「sudo rc-update add cdemud default」を実行した上で「/etc/init.d/cdemu start」によりデーモンを開始しておく。
デーモンへの引数に関しては、ディストリによって設定方法が異なり、Gentooでは/etc/conf.d/cdemudを編集*4する。
CDEmu client
システム・バスを使用したデーモンとやりとりをするために、あらゆる操作に対して、-b systemオプションを付ける。もし、これを指定しないと、下のようなエラーが出て失敗する。
ERROR: Failed to connect to CDEmu daemon: org.freedesktop.DBus.Error.ServiceUnknown: The name net.sf.cdemu.CDEMUD_Daemon was not provided by any .service files ERROR: Failed to connect to daemon!
下は具体的な使い方。
(イメージを読み込む) $ cdemu -b system load [デバイス番号] [イメージファイルなどの場所] (イメージを外す) $ cdemu -b system unload [デバイス番号] (状態を確認) $ cdemu -b system status
ここで指定するデバイス番号は0から始まるが、/dev/sr[番号]のデバイス名に対応する番号は、システム上にSCSIで認識される光学ドライブ*5がある場合には、その数だけ後ろにずれる。
(2008/10/26)光学ドライブのデバイス名に関する記述(脚注)を一部修正
http://fun.poosan.net/sawa/index.php?UID=1208449540
の人の環境では/dev/sr0が実ハードウェアのため、CDEmuにおけるデバイス0番が/dev/sr1に対応している。
gCDEmu
右クリックメニューから「Use system bus」にチェックすると、システム・バスを使用したデーモンとやりとりできるようになる。アイコンの色が付いていればOK。
アイコンクリック後、一覧から仮想デバイス番号を選択後、ファイルを開く。
ユーザ権限のデーモン(ローカル・モード)を使用する
ユーザ権限のデーモンを使用する場合、/etc/init.d/以下のスクリプトによるデーモンは動作していない必要がある。Gentoo Linuxでは、これを止めた場合にVHBAのカーネルモジュールを手動で読み込む必要があるようだ。
下は、オーディオ再生にALSAを使用して、最大4つの仮想SCSIドライブを提供するデーモンを起動する例。
$ cdemud -n 4 -a ALSA -o default
CDEmu client
システムのデーモンを使用したときと違うのは-b systemオプションを付けないこと。
gCDEmu
右クリックメニューの「Use system bus」にチェックがされている場合は外す。
関連記事:
- CDEmuについての覚え書き(概要、カスタムカーネル使用時のビルド設定、ユーザの大まかな操作)
- KDEでCDEmu仮想ドライブのイメージファイル管理を行うツールKDE CDEmu Manager(kde_cdemu)について
使用したバージョン:
- CDEmu 1.0.0