« 2008年8月 | トップページ | 2008年10月 »

2008年9月

2008/09/14

玄箱の時刻合わせ

今回は小ネタです。

玄箱は時間がよくズレます。
一ヶ月で10分ぐらいはズレると思う。時計としては失格です。
数秒のズレなら気になりませんが、分単位でズレると、実用上問題があります。

前からうちの嫁に、ファイルの同期をする時に時刻がおかしいと問題が出るからなんとかしてくれと言われていたのですが、玄箱にはntpdateが無いので難しいのだろうと思っていました。

と言うのも、玄箱の時刻ズレは有名な話なのに、ネットで調べても対策はほとんど、Debian化してなんとかしている記事ばかりです。
そんなわけでデフォルトでは難しいのだと思い込んでいました。

そんなある日、ふと玄箱のCDの中身を見ると、ntp-4.0.99g.tar.gz があるではないか!
これとcronがあればなんとかなりそうです。

玄箱のCDのbinaryフォルダから ntp-4.0.99g.tar.gz を持ってきて適当な場所に置きます。
で、
# tar xzvf ntp-4.0.99g.tar.gz -C /
とすればインストール完了。

cronの設定をしようと、
# crontab -e
としたら
/usr/bin/editor: No such file or directory
と出ました。
crontab のコマンドはあるのに使えないとは。玄箱のこういう中途半端な作りがイヤです・・・。

しかたが無いので、/etc/crontab を直接修正。
最終行に以下を追記しました。
00 1 * * * root ntpdate 111.111.111.111

最後のIP部分には、NTPサーバのIPを記述します。
NTP サーバ一覧
とかで調べるといいです。
ちなみに我が家ではLAN内にNTPサーバがあるので、そこのIPです。
これで、毎日午前1時ぐらいに時間を合わせてくれます。

| | コメント (0) | トラックバック (0)

玄箱に接続したUSBハードディスクをホットプラグ対応させる

以前、玄箱にUSB接続でハードディスクを増設しましたが、これは /etc/fstab で直接マウントさせる方法で、設定は簡単なのですが、玄箱HG起動前にUSBハードディスクを接続しておく必要があり、起動後はずーっと付けっぱなしになります。
設定した時は、そういう運用でいいかなーと思ったのですが、増設したUSBハードディスクが1T(テラ)もあるのでここに置くのは基本的に動画ファイルやCDのイメージなどファイルサイズが大きいものになります。
こういうファイルを日常的に使うわけではないので、外付けハードディスクの電源が常に入れっぱなしになっているのはなんとなく無駄な気がしてきました。
そんなわけで、使いたい時に外付けUSBハードディスクを挿せば使えるようにするため、ホットプラグ対応を行うことにしました。
今まで謎だった murasaki の動きについて勉強できるしね。

とりあえず、玄箱にUSB接続でハードディスクを増設で行った変更は元に戻しておきました。


さて、やり方ですが、「玄箱の本」に全部載っています。(笑)
ま、玄箱HGを買った人は持っていて損は無いと思います。

「玄箱の本」の付属CDから murasaki_mount.tar.gz を玄箱の適当なフォルダに置きます。
# tar xzvf murasaki_mount.tar.gz -C /
とコマンドを打ってインストールします。

# tail -f /var/log/messages
として messages を表示したままUSBハードディスクをぶぢっと挿して、出てくる文字列を確認します。
MODULE 0x0383 0x152d 0x2336 0 0 0x0 0x0 0x0 0x8 0x6 0x50 0x00000000
みたいに出てくる
0x0383 0x152d 0x2336 0 0 0x0 0x0 0x0 0x8 0x6 0x50 0x00000000
を後で使うので、忘れないようにエディタとかにコピーしておきます。

その後、
# cat /proc/scsi/scsi
として、
Vendor: SAMSUNG Model: HD103UI Rev:
と出てくるVendor:以降の部分を後で使います。
これだと、SAMSUNG ですね。

/etc/murasaki/murasaki.usbmap の最後に、以下を追加。
alias-sd 0x0383 0x152d 0x2336 0 0 0x0 0x0 0x0 0x8 0x6 0x50 0x00000000

数値部分はさっき調べた数値を追加しています。

/etc/murasaki/murasaki.usbmap の最終行に、以下を追加。
SAMSUNG.* 1 /mnt/share/USB-MOUNT ext3

さっき調べたVendor:と、マウント場所、ハードディスクのフォーマットを記載しています。
1ってのは、最初のパーティションってことです。


これだけでOK、と本では書いてあります。
ちなみに、修正するファイルは読み込み専用なので、ファイルを修正するにはアクセス権を変更するか、vi終了時に :wq! と強制的に書き込む必要があります。


さて、念の為再起動し、USBハードディスクを挿した所・・・・マウントされない・・・。

/var/log/messages を見ると、モジュールのロードで失敗しているようです。
murasaki.depend の問題か!?
でも、本では「ドライバの読み込みは実際には行われません」と書かれています。
さらに、「間違いさえなければ、必ずマウントできるはずです。」とまで書いてあるのに、マウントできないとは!
ファイルの修正ミスが無いか何度も調べたけども間違っていません。


わけがわからず、ネットでいろいろ調べてみました。
すると、槻ノ木隆のPC実験室 ってページにGigabit Ethernet対応「玄箱」(Part2)~USBを使えるようにするという記事がありました。

調べてみた所、玄箱HGのUSBハードディスクのホットプラグは簡単に言うと以下の動きになるそうです。
1、カーネルでUSB Hotplugイベントが発生。
2、hotplug.murasakiが呼ばれる。
3、murasaki.usbが呼ばれる。
4、murasaki.usbで、
 ・カーネルから渡されたUSBデバイスに関する情報を取得する。
 ・この情報と、murasaki.usbmap に記載された情報を比較し、デバイスを特定する。
 ・デバイスが特定できた場合、そのデバイスを利用するするのに必要なドライバを、
  murasaki.dependから読み取ってロードするが、USBハードディスクの場合は、
  murasaki.preload に usb-storage の記述があり既にロードされている為
  ロードしなくて良い。呼び出す真似だけする。
 ・ドライバのロードが終わったら、murasaki.callを呼び出してモジュールに対応したスクリプトを実行する。
5、murasaki.call から murasaki_mount が呼び出される。
6、murasaki_mount は murasaki.mnttab の情報に従って、マウントしたりアンマウントする。

ってことのようです。
2、以降のファイルを順番に追って行った所、murasaki.call って所には
[net]: net
としか書かれていません。
どう見てもUSBハードディスクの設定には見えません。
そこで、このページに書かれているように
/etc/murasaki/murasaki.call の最後に以下を追加しました、
[usb]: /etc/murasaki/bin/murasaki_mount

そしてUSBハードディスクを繋ぐと、きちんとマウントできました!
やっぱりモジュールロード時のエラーは無視してOKでした。
っつーか、「玄箱の本」間違ってるし!!


ちなみに、「玄箱の本」からインストールしたのは murasaki_mount だけです。
上記ページでは、このスクリプトを VineLinuxが配布しているmurasakiのRPMSから取ってこれると書いてあるので、「玄箱の本」が無い人でもできる可能性があります。


もう少しネットを調べた所、
seechickenの日記 の玄箱
って所を見つけました。ホットプラグ化の記事が簡潔にまとまっています。

| | コメント (0) | トラックバック (0)

2008/09/13

Windows2000でDRM付きコンテンツの試聴ができない

私は以前、仕事柄ラジオを聴く事が多かったです。
中でもJ-WAVEは大のお気に入りでした。
でした、というのも、今のように普通のサラリーマン生活をしていればなかなかラジオを聴く余裕はありません。
でも、ちょっとした時にBGM代わりにラジオが鳴っていれば、と思うこともあります。

そんなわけで、J-WAVEがやっているBrandnew-Jというインターネットラジオを大変愛用していました。
しかし、昨年の年末以降、Brandnew-Jを聴こうとするとIEがクラッシュし聴けなくなってしまったのです。
推奨環境は、以前と同じくWindowsとMediaPlayerがあればいいとのこと。
リニューアルの際にDRMの関係で推奨環境が変わり、MediaPlayer9では聴けなくなったのでは?と思いBrandnew-Jにメールしてみたところ、MediaPlayer9でも聴けます、という返事が・・・。

うちのPC固有の問題なのか?と思ったのですが、ネットで調べた際にこんなサイトを見つけました。
Windows2000でGyaoやYahoo!動画が見れない - 問題回避編

やはり、うちのPC固有の問題では無く、Windows2000共通の問題のようです。
Windows 2000 用セキュリティ更新プログラム (KB941569) を摘要すると発生する現象のようで、これを摘要する前までは問題なく視聴できるそうです。
ようするにWindowsUpdateの問題。Microsoftの問題ということです。

解決方法は、MediaPlayer9のインストーラから
WMVDMOD.DLL
WMVCORE.DLL
drmv2clt.dll
DRMClien.dll
DrmStor.dll
を取り出し(つまり古いDLLを取り出し)、System32フォルダの中に上書きするそうです。
(上書きされるファイルは、ファイル名を変更するか、他へ退避させるのが無難。)
7zipでmpsetup.exeを解凍すればDLLを取り出せるとのことで、たまたま持っていた7-ZipPortableを使って取り出しました。

DLL上書き後、C:\Documents and Settings\All Users\DRM を一度削除して
http://drmlicense.one.microsoft.com/Indivsite/ja/indivit.asp
でDRMコンポーネントを再作成すると視聴できるようになります。

ちなみに、上記フォルダを削除すると、有料コンテンツを視聴するための情報が無くなってしまうので、これもどこかに退避させておくのが無難かもしれません。
ちなみにMediaPlayer9でDRMのバックアップができるのですが、KB941569摘要後はバックアップすらできなくなるみたいです。(ウチの環境ではエラーになりバックアップできなかった。)

これでBrandnew-Jが聴けるようになりました。

しかし、KB941569は緊急のアップデートなわけで、それ以前のDLLを使いつづけるのには不安が残ります。
問題の Windows 2000 用セキュリティ更新プログラム (KB941569)には違うバージョンのDLLも入っているらしく、このDLLを使えば視聴可能なため若干マシになる、という情報も上記ページに載っていました。

ま、いずれにせよMicrosoftはこの不具合が出てから全然対策するつもりが無いようです。
サポートの切れたOSの扱いはこんなもんです。

ちなみに、Windows2000環境では、フェアユースというソフトによってDRMの解除が可能でした。
サポートの切れるWindows2000はDRM自体丸ごと使えないように改造したのではないでしょうね、Microsoft?
DRM解除のことの顛末は、
DRM解除方法
に載っています。


2008/12/27 追記
よく参考にさせて頂いている黒翼猫さんからトラックバックを頂いた際に試聴できるか試したところ、Windows2000&IE6&WMP9の環境で普通に聴けてしまえました。
WMVCore.dllを確認した所、バージョン9.0.0.3358、2008/06/10日付のものが入っていました。
何が原因か良く判りませんが、最近の更新で何か変わったかもしれません。
または、Brandnew-J 側で修正されたか。
いずれにせよ、Brandnew-J が聴けるようになった、ということです。

| | コメント (0) | トラックバック (1)

2008/09/02

UbuntuでSkype計画 リベンジ

前回、Webカメラが対応していなくて挫折した、UbuntuでのSkype計画。
だがしかし!挫折したまま終るような私ではない!

・・・というか、ここしばらくず~っと物欲しげにYahoo!オークションを眺める日々が続いておりました。
UVC規格のWebカメラなら問題なく使えるはずなのだけど、UVC規格自体が新しい規格なので、当然それに対応しているWebカメラは最近の機種が多くて、お手ごろ価格では出品されません。

そんな時、1円スタートのELECOM UCAM-DLQ30HWH を発見!しかも新品。
マジッすか?
価格COMで見ても2000円は下回らない品です。
誰も入札していないので、早速1円で入札!

そんなこんなで締切日に近付いたのですが、ELECOM UCAM-DLQ30HWH が1円で手に入るほど世の中甘くありません。
案の定ライバルが価格吊り上げ攻撃をしてきました。
オレのUCAM-DLQ30HWHに触るな!外道ども!

だいたい世の中Mac用のWebカメラってのは数が少なく、Mac対応を謳っているこのWebカメラをみんな放っておくわけない。
Macユーザーが来ればやっかいなことになるな、と思ってました。
ちなみに、当然ですがLinux対応は謳ってません。coldsweats01

値段はどんどん釣りあがり、オレが限界と思っていた1000円を突破しました。
・・・もういいよ。これ以上は出せないよ。
と思った矢先、嫁が「負けでいいの?」と言った言葉にカチンと来て、1500円まで頑張りました。
見事落札。
送料付けたら最安店で買うのと変わらん・・・。
これもそれも、Linuxのためだ!安いもんだ!

早速、Skype For Linux のページから Ubuntu版をダウンロードしてインストールし、ELECOM UCAM-DLQ30HWH を繋いだところ、問題なく使えました。
こんなに簡単でいいの?ってぐらい簡単です。
これで、UbuntuでSkype計画は無事完了しました。

唯一の欠点は、普段メインに使っているWindows2000には使えないってことです。
Windows2000が無くなりそうなころに出た規格なんで、そんなのをMicrosoftがサポートしてくれるわけありません。
LinuxだったらOSをアップデートしていけば主要な技術は使えるようになるし、この辺の使い勝手はWindowsには永遠に近づけない領域なんだろうなあ。
ま、メインマシンにWebカメラを繋ぐことはまず無いので問題なしなんだけど。

| | コメント (0) | トラックバック (0)

« 2008年8月 | トップページ | 2008年10月 »