Vine Linux バグトラッキングシステム - Vine Linux |
課題の詳細を表示 |
|
ID | プロジェクト | カテゴリ | 公開 | 登録日 | 最終更新 |
0000502 | Vine Linux | 1 バグ | 公開 | 2007-03-21 09:10 | 2007-11-20 22:26 |
|
報告者 | anonymous | |
担当者 | packager | |
優先度 | 中 | 再現性 | 不明 | |
状態 | 完了 | 解決状況 | 不明 | |
バージョン | 4.0 | |
修正予定バージョン | | 修正済バージョン | | |
arch | x86 |
パッケージ | kdm(plus/kdebase) |
|
概要 | 0000502: サウンドデバイスにアクセス権がない |
説明 | VineLinux 4.xにおいて/usr/sbin/alsaconfを実行すると、/dev/dsp等サウンドデバイスファイルが
# ls -l /dev/dsp
crw------- 1 root root 14, 3 Mar 21 2007 /dev/dsp
となり、一般ユーザでサウンドの再生が出来ません。
# chmod 666 /dev/{dsp*,audio*,midi*,mixer*,sequencer*,sound/*,snd/*,beep,admm*,adsp*,aload*,amidi*,dmfm*,dmmidi*,sndstat}
とすると、一般ユーザでも再生できるようになります。
/etc/udev/rules.d/50-udev.rulesにはこれらのファイルをMODE="0666"にするように指定されているようですが、どうすれば50-udev.rulesを適用できるのかわかりませんでした。 |
再現方法 | |
追加情報 | |
タグ | 設定されていません。 |
関連 | |
添付ファイル | |
|
課題の履歴 |
変更日 | ユーザー名 | 項目 | 変更内容 |
2007-03-21 09:10 | anonymous | 新規課題 | |
2007-03-21 14:42 | anonymous | コメント追加: 0002500 | |
2007-03-21 17:30 | anonymous | パッケージ | alsa-utils => alsa-utils, kdm(plus/kdebase) |
2007-03-21 17:30 | anonymous | コメント追加: 0002501 | |
2007-03-21 20:48 | anonymous | コメント追加: 0002502 | |
2007-03-21 23:43 | anonymous | コメント追加: 0002503 | |
2007-03-22 22:20 | anonymous | コメント追加: 0002504 | |
2007-03-22 22:40 | anonymous | コメント追加: 0002505 | |
2007-03-22 23:16 | anonymous | パッケージ | alsa-utils, kdm(plus/kdebase) => kdm(plus/kdebase) |
2007-03-22 23:16 | anonymous | コメント追加: 0002506 | |
2007-07-04 23:06 | kazutaka | 担当者 | => packager |
2007-07-04 23:06 | kazutaka | 状態 | 新規 => テスト待ち |
2007-07-04 23:06 | kazutaka | コメント追加: 0002507 | |
2007-11-20 22:26 | kazutaka | 状態 | テスト待ち => 完了 |
2007-11-20 22:26 | kazutaka | コメント追加: 0002508 | |
コメント |
|
|
> # ls -l /dev/dsp
> crw------- 1 root root 14, 3 Mar 21 2007 /dev/dsp
>
> となり、一般ユーザでサウンドの再生が出来ません。
>
> /etc/udev/rules.d/50-udev.rulesにはこれらのファイルをMODE="0666"にするよ
> うに指定されているようですが、どうすれば50-udev.rulesを適用できるのかわか
> りませんでした。
通りすがりのhatyaと言います。
2.6系のカーネルが起動されていないような気がします。
マシンを立ち上げ直すと、うまくいったりしませんか? |
|
|
|
> 2.6系のカーネルが起動されていないような気がします。
> マシンを立ち上げ直すと、うまくいったりしませんか?
# uname -srv
Linux 2.6.16-0vl68 0000001 SMP Thu Jan 18 10:46:40 JST 2007
いろいろ試してみて気づいたのですが、kdmやssh以外でログインした場合は所有者が書き換わるようですね。
kdmからログインすると強制的に600 root,rootに書き換わるようです。
gdm,xdmからログインした場合や、コンソールログインからstartxした場合は、600 <user>,rootに書き換わるので問題なく再生できるようです。 |
|
|
|
> kdmからログインすると強制的に600 root,rootに書き換わるようです。
> gdm,xdmからログインした場合や、コンソールログインからstartxした場合は、
> 600 <user>,rootに書き換わるので問題なく再生できるようです。
デバイスファイルの所有者が変更されるのは、udevとpamの設定だと思うので
ディスプレイ・マネージャーが関係しているのは考えにくいと思います。
ためしにkdmを使って、GNOME, KDE, icewmを起動してみましたが、
すべての環境で、
ls -l /dev/dsp*
crw------- 1 XXXXXX root 14, 3 3月22日 2007 /dev/dsp
crw------- 1 XXXXXX root 14, 19 3月22日 2007 /dev/dsp1
こんな感じでした。
こんな時の月並な発言で恐縮なんですが、もし新規のユーザーじゃないのでしたら、
新規のユーザーを作ってログインすると、どうなるでしょうか? |
|
|
|
> こんな時の月並な発言で恐縮なんですが、もし新規のユーザーじゃないのでした
> ら、
> 新規のユーザーを作ってログインすると、どうなるでしょうか?
一度rootでコンソールにログイン -> 600 root,root
useradd newuser、/etc/sysconfig/dmtype書き換え
ログアウトしてnewuserでコンソールにログイン -> 600 newuser,root
rootでコンソールにログインしなおして init 5; logout -> 600 root,root
gdmからnewuserでGNOMEにログイン -> 600 newuser,root
ログアウトしてgdmからrootでGNOMEにログイン -> 600 root,root
ログアウトしてgdmからnewuserでKDEにログイン -> 600 newuser,root
ログアウトしてgdmからrootでKDEにログイン -> 600 root,root
init 1、/etc/sysconfig/dmtypeを書き換えてから init 5
kdmからnewuserでKDEにログイン -> 600 root,root
(su) chown newuser /dev/dsp -> 600 newuser,root
ログアウトしてkdmからolduserでKDEにログイン -> 600 newuser,root
ログアウトしてkdmからolduserでGNOMEにログイン -> 600 newuser,root
init 1 -> 600 newuser,root
/etc/sysconfig/dmtypeを書き換えて init 5
gdmからolduserでKDEにログイン -> 600 olduser,root
init 1、 /etc/sysconfig/dmtype書き換え、init 5
kdmからnewuserでGNOMEにログイン -> 600 root,root
(su) chown olduser /dev/dsp -> 600 olduser,root
ログアウトしてkdmからnewuserでGNOMEにログイン -> 600 olduser,root
init 3 してolduserでコンソールにログイン -> 600 olduser,root
init 5 してkdmからolduserでKDEにログイン -> 600 root,root
まとめると、
gdmからログイン -> 所有者が正しく設定される
コンソールからログイン -> 所有者が正しく設定される
init 1 -> 所有者の変更はない
kdmからログイン -> 所有者は変更されないか、rootになる
ということらしいです。
また、手動でパーミションを変えた後Noatunを使う場合はKDEのサウンドサービスを再起動する必要があるようです。XMMSの場合は必要ありません。 |
|
|
|
> gdmからログイン -> 所有者が正しく設定される
> コンソールからログイン -> 所有者が正しく設定される
> init 1 -> 所有者の変更はない
> kdmからログイン -> 所有者は変更されないか、rootになる
>
> ということらしいです。
>
原因がわかりました。kdmのログイン認証に使われる/etc/pam.d/kdeの
設定の不具合?です。
...
session required /lib/security/pam_pwdb.so
session sufficient /lib/security/pam_ldap.so ← 下の行を実行するため削除
session optional /lib/security/pam_console.so ← 実行されないと不具合
上のような記述がありますが、pam_ldap.soの行があって、
nss_ldapパッケージがインストールされていると、
次の行が実行されません。
そのためデバイスファイルの所有者の変更がされないので、
音が鳴らないなどのトラブルになります。
これは<BTS:306>「kdmログイン時のサウンドがらみのトラブル」と同じ現象です。
session sufficient /lib/security/pam_ldap.so
の行を削除してください。
nss_ldapパッケージをインストールしていない場合は、
/lib/security/pam_ldap.soが無いので、次の行が実行されますが、
/var/log/secureに、
Mar 21 22:59:57 XXXXXX kdm: :0[1872]: PAM [error: /lib/security/pam_ldap.so: cannot open shared object file: No su
ch file or directory]
というエラーが吐き出されます。
投稿者の方と私の環境の違いは、nss_ldapパッケージがインストールされていたか、
いなかったのか、ということだと思います。
ついでにkdmがらみのトラブルの対処方法を書きます。
* <BTS:283>「ディスプレイマネージャに kdm を使用すると SCIM 起動せず」
/usr/share/config/kdm/kdmrc(/etc/kde/kdm/kdmrc)に、
Session=/usr/share/config/kdm/Xsession
という行がありますが、ここを
Session=/etc/X11/xdm/Xsession
に打ち変えてください。
setimeの設定は、/etc/X11/xinit/xinitrc.d以下のスクリプトによって
反映されますが、もとのXsessionではスクリプトが実行されません。
* <BTS:388>「KDEで自動マウントができない」
/etc/pam.d/kde-npが無いためです。
「ログインマネージャ」の「自動ログインを有効にする」を設定したら、
rootになって、
cp /etc/pam.d/gdm-autologin /etc/pam.d/kde-np
を実行してください。
以上です。またGNOMEに戻らせてもらいます^^; |
|
|
|
> * <BTS:388>「KDEで自動マウントができない」
> /etc/pam.d/kde-npが無いためです。
> 「ログインマネージャ」の「自動ログインを有効にする」を設定したら、
> rootになって、
>
> cp /etc/pam.d/gdm-autologin /etc/pam.d/kde-np
>
> を実行してください。
>
すいません、寝ぼけていたんで自動マウントと自動ログインを
間違えました。忘れてください^^;
ちょっと早いですが、もう寝ますm(_ _)m |
|
|
|
元投稿者です。
/etc/pam.d/kdeの書き換えでサウンドデバイスの所有権を正しく取得できることと、
/etc/kde/kdm/kdmrcの書き換えでSCIMが動くようになることを確認しました。
ただし、kdmは.wm_styleを/usr/bin/startkdeとしてKDEを起動させようとするため、
/etc/X11/xinit/Xclientsのcaseに/usr/bin/startkdeを追加して対処しました。
回答ありがとうございました。
# VineでKDE使うってのはやっぱり異端なのかなぁ・・・(- -;; |
|
|
|
kdebase-3.5.7 で対応していただけたようです。
手元の VirtualBox 上の 4.1 環境でも確認しましたが、
念のため他の方の環境でも確認をお願いします。
状態を確認待ちに変更します。
ハラダ |
|
|
|
> 手元の VirtualBox 上の 4.1 環境でも確認しましたが、
> 念のため他の方の環境でも確認をお願いします。
他に不具合の話も出てこないので、これで完了にします。
ハラダ |
|