バーコードリーダが使えなくなった [プログラム]
8月下旬ころの話です。
蔵書管理のために、USB接続のバーコードリーダを使っているのですが、急に使えなくなりました。毎日のように使うものなので大変困ります。すぐに直さなければなりません。
そういえば、前日apt-getしたなぁ。そうそう、linuxカーネルもアップデートされたんだっけ。…もしや、と思って、古いカーネルで起動しなおすとちゃんとバーコードリーダが使えます。はぁ、linuxカーネルの問題ですか。相変わらずのSHITぶりです。
なにはともあれ、google先生にお伺いをたてたところ、次のページに驚愕の事実が!!!
「バーコードリーダのベンダIDとプロダクトIDが不正(複数のメーカが使用している)ので、
linux開発者がカーネルのソースをいじくって無理やり使わせないように改造した」
というもの。linux開発者殿、相変わらずのSHITぶりです。
いや、そりゃ、バーコードリーダが勝手に他人のIDを使っている(らしい)のが悪いといえば全くそのとおりですが、でもね、人を罠にかけるかように「使えないようにしてやる」とは何事ですか。IDがどうであれ、使えることが第一じゃないんですか? コンピュータなんて使えてなんぼの世界なんです。それを、「今使えているものを使えなくしてやる」というのは、どう考えても(以下略)。
直すための方法はわかりましたが、忙しくて直している暇がありませんでしたので、今日まで古いカーネル2.6.26-2(debian)で動かしていました。
で、今日の話です。
どうも昨日のapt-getで何か問題が生じたらしく、Xを立ち上げるとGNOMEが非常に重くなりました。ちょっと調べてみると、何かがプロセスを起動しまくっているようで、プロセスIDがものすごいスピードで増えていきます。犯人を探そうと、次々とプロセスをkillして様子をみたのですが、結局わかりませんでした。で、試しにバーコードリーダが使えない2.6.30を起動してみると… gnomeは全く問題ありませんでした。2.6.26-2が使えなくなった(またかよ)ので、2.6.30以降に移行せざるをえませんが、debianのカーネル(2.6.30)は使えません。もう面倒なので、kernel本家から最新ソースを持ってきて、修正してしまいましょう。
で、先ほどのページの方と同じく、linuxカーネルを直しました。「動くように戻して」やります。大まかな手順は以下のとおり。debianなら簡単です。
先のページの方に深く感謝致します。ありがとうございました。
蔵書管理のために、USB接続のバーコードリーダを使っているのですが、急に使えなくなりました。毎日のように使うものなので大変困ります。すぐに直さなければなりません。
そういえば、前日apt-getしたなぁ。そうそう、linuxカーネルもアップデートされたんだっけ。…もしや、と思って、古いカーネルで起動しなおすとちゃんとバーコードリーダが使えます。はぁ、linuxカーネルの問題ですか。相変わらずのSHITぶりです。
なにはともあれ、google先生にお伺いをたてたところ、次のページに驚愕の事実が!!!
http://groups.google.com/group/jlug.ml.users/browse_thread/thread/7ea2aede217a9223#私の主観に基づいて超意訳すると、
「バーコードリーダのベンダIDとプロダクトIDが不正(複数のメーカが使用している)ので、
linux開発者がカーネルのソースをいじくって無理やり使わせないように改造した」
というもの。linux開発者殿、相変わらずのSHITぶりです。
いや、そりゃ、バーコードリーダが勝手に他人のIDを使っている(らしい)のが悪いといえば全くそのとおりですが、でもね、人を罠にかけるかように「使えないようにしてやる」とは何事ですか。IDがどうであれ、使えることが第一じゃないんですか? コンピュータなんて使えてなんぼの世界なんです。それを、「今使えているものを使えなくしてやる」というのは、どう考えても(以下略)。
直すための方法はわかりましたが、忙しくて直している暇がありませんでしたので、今日まで古いカーネル2.6.26-2(debian)で動かしていました。
で、今日の話です。
どうも昨日のapt-getで何か問題が生じたらしく、Xを立ち上げるとGNOMEが非常に重くなりました。ちょっと調べてみると、何かがプロセスを起動しまくっているようで、プロセスIDがものすごいスピードで増えていきます。犯人を探そうと、次々とプロセスをkillして様子をみたのですが、結局わかりませんでした。で、試しにバーコードリーダが使えない2.6.30を起動してみると… gnomeは全く問題ありませんでした。2.6.26-2が使えなくなった(またかよ)ので、2.6.30以降に移行せざるをえませんが、debianのカーネル(2.6.30)は使えません。もう面倒なので、kernel本家から最新ソースを持ってきて、修正してしまいましょう。
で、先ほどのページの方と同じく、linuxカーネルを直しました。「動くように戻して」やります。大まかな手順は以下のとおり。debianなら簡単です。
- www.kernel.orgから最新のカーネルソース(2.6.31)をダウンロードして展開。
- hid-core.cの該当箇所1行をコメントアウト。
- /boot/config-2.6.26-2-686を.configとしてコピー。
- make oldconfigして、追加された部分などを答える(ほぼEnter、ときどきm Enter)。
- makeして終わるまで待つ。
- make install modules_installする。
- update-initramfs -c -k 2.6.31する。
- /boot/grub/menu.lstに追加する。
- reboot!
先のページの方に深く感謝致します。ありがとうございました。