Ubuntu 8.04 でサスペンドすると、復帰後に音が出なくなってしまう。ネットで調べたところ、音関係の module を再読み込みすればよいことが分かった。
- ミニノート:工人舎 SH8 に Ubuntu 8.04 をインストールしたメモ・その後 - カミクズヒロイ /root
- [ubuntu] Hardy. Toshiba Laptop. Low Sound. [Archive] - Ubuntu Forums
具体的には、modprobe コマンドを使って snd_hda_intel モジュールを一度削除して、その後もう一度インストールする。
コマンドを毎回打つのは大変なので、shell script を作った。
#!/bin/sh pm=pm-suspend snd=snd_hda_intel sync && $pm && modprobe -r $snd && modprobe $snd
こいつを /usr/local/bin に pm-suspend-snd.sh という名前で置いて、sudo コマンドで呼び出してやる。
$ sudo pm-suspend-snd.sh
Suspend じゃなくて Hibernate したい場合は、pm=pm-suspend
を pm=pm-hibernate
に変更されたし。
ソースコードは gist に登録してあるので、git 使いの人はこちらから最新版をどうぞ。
$ git clone git://gist.github.com/120717.git pm-suspend-snd
注意点
どっかのプロセスが snd_hda_intel を掴んでいると、modprobe -r に失敗する。エラー・メッセージはこんな感じ:
FATAL: Module snd_hda_intel is in use.
原因の一つは、GNOME の音量調節アプレット。アプレットを右クリックして削除してしまうのが一番簡単な解決策。
もう一つは pulseaudio。これが何のコマンドか知らないけだけど、次のコマンドを打つと pulseaudio を殺せる。もしかしたら、アンインストールしてしまってもいいのかもしれない。
$ pulseaudio -k
後はオーディオ関連のコマンド。何気に firefox が音を掴んで離さないことが多い。
No comments:
Post a Comment