FAQ-21
質問
「許可がありません」等の理由でデバイスにアクセスできません
回答
FAQ-16 とも関連しますが、ARMA/OGL ではデバイスの使用許可を「グループ」を使って管理しています。対象となるデバイスファイルのグループにユーザーを追加して下さい。デバイスの使用権限を調べるには ls コマンドに -l オプションを付け加えます。
たとえば CD-ROM の場合、多くのソフトウエアはデフォルトの設定で /dev/cdrom というデバイスファイルを使用します。このデバイスファイルを調べてみると
|
$ ls -l /dev/cdrom
| lr-xr-xr-x 1 root root ... /dev/cdrom -> cdroms/cdrom0
|
|
|
上記のように表示され、/dev/cdroms/cdrom0 へのシンボリックリンクになっていることがわかります。リンク先を調べると
|
$ ls -l /dev/cdroms/cdrom0
| lr-xr-xr-x 1 root root ... /dev/cdroms/cdrom0 ->
| ../ide/host0/bus1/target0/lun0/cd
|
|
|
さらに、/dev/ide/host0/bus1/target0/lun0/cd へのシンボリックリンクになって
いることがわかります。(パスはCD-ROM ドライブの接続方法によって変わります)このリンク先を再度調べると、
|
$ ls -l /dev/ide/host0/bus1/target0/lun0/cd
| brw-rw---- 1 root cdrom ... /dev/ide/host0/bus1/target0/lun0/cd
|
|
|
と表示され、元のデバイスファイルの所有者は root で、グループ cdrom に書き込みと、読み出しの権限が与えられていることがわかります。(ls -l の出力の読み方につきましてはマニュアル 126 ページ、4.1.7 パーミッション をご覧下さい)
そこで、ユーザー ruri さんが CD-ROM を使えるようにするには root権限で、次のようにします。
グループにユーザーを追加した後は一旦ログアウトすると変更が有効になります。
また、グループは /etc/group というファイルで管理されており、
とすると、
という1行があれば、ruriさんが cdrom グループに所属していることを表します。
権限を与えるためには、chown や、chmod コマンドを使うこともできますが、デバイスファイルの使用権限の管理はグループを使うようにして下さい。
|