我が家のS57を改造することにした。
S57ってのは、「スゴ録」の前身に当たる「CoCoon」の前身に当たる、「ソニーチャンネルサーバー」の最後の機種の型番ね。
ちなみに、チャンネルサーバー以前にClipOnという機械もあったけど、それとも別物。ソニー、ハードディスクレコーダー作りすぎ。(PSXもあるしね)
で、チャンネルサーバー及び初代 CoCoon は、アメリカでいち早くサービスを開始したハードディスクレコーダーの会社「TiVo」の中身を日本語版にしただけ、と言うことが判明している。
その証拠に、本体裏面には TiVo のライセンス証が貼られているし。
この TiVo って機械は、中身が Linux なので改造されまくっている。
もちろん、改造を防ぐようなプロテクトはかかっているのだが、TiVo 本体がデータを読み出せるのだから読み出す方法はあるのだ、という当たり前の話。
巧妙な方法でプロテクトをかいくぐり、ただのハードディスクレコーダーではなく、れっきとしたパソコンとして使いこなすことも出来るようだ。
そこで冒頭の話になるが、S57 も TiVo とほぼ同じ方法で改造できる。
多少の違いはあるが、日本でも研究している人がいるのだ。
目標は二つ。
1) ハードディスク増量
2) Telnet 出来るようにする
S57は標準で 80GB のハードディスクを持っている。
以前はこれで十分だと思っていたのだが、子供が生まれて以降ゆっくりテレビを見る暇が無いので、2時間番組などは消えない設定になったままディスクに保存しっぱなしだ。
そのせいで、ディスクの残容量が常にギリギリいっぱい。というか、少なすぎてこれ以上予約が増やせないので、「ギリギリで諦めている」状態。
そこで、今手ごろな 250GB のディスクに入れ替えようと思う。
さらに、一部「消すに消せない」番組もある。
妻が槇原則之のファンで、ここ数ヶ月で何本かの番組に出演したのでそれを録ってあるのだ。
僕の PC に録画機能があるので、再ダビングしてDVD保存、というのも考えているのだが、離れた場所にあるので面倒くさい。
これは、Telnet 可能になれば解決する問題で、再ダビングせずとも S57 から録画データを取り出せばよい。
(もちろん、Telnet 可能と言うのは Telnet だけではなく、各種ネットワーク作業が可能であることを意味する)
もっといえば、Telnet 可能になれば、S57 では不可能な「好きなキーワードで番組を検索し、自動録画」が可能になる可能性だってあるのだ。
まずは第1段階。
250GB のディスクに、80GB の元ディスクのデータを全コピーする。以下が作業手順。
TiVo の改造サービス業者のページから、msftools 2.0 のCD イメージを貰ってきて、CD を作成する。
…この時点で、ISO イメージを焼けるソフトが無くて困ったりしたが、ISORecorderをインストールして解決。
この CD でブートすると、Linux が起動する。ちなみに、Windowsでこの CD を開くと、改造請け負い業者の注文ページにアクセスされる。「良くわからない人は金で解決してあげるよ」ってわけで、絶妙な仕組みだ。
さて、Linux がブートできるようになったら、PC のハードディスクを入れ替える。
Primary Master に S57 のオリジナルディスク、
Primary Slave に 250GB の新ディスク
Secondary Master は、元々 PC に繋がっていた DVD ドライブ。ここから起動する。
Secondary Slave に FAT32 でフォーマットされた 20GB ほどのディスク。(家の中に転がっていたのを流用)
まず、SS に接続したディスクをマウントする。
ブートした CD では /mnt/c と言うのが用意されていたので、そこに接続。
mount /dev/hdd1 /mnt/c
Linux を知らない人が興味を持ったときのために解説しておこう。
Linux では、/dev/hd? でハードディスクを意味している。
? 部分は、PM が a PS が b SM が c SS が D になる。
(Primary とか Secondary の意味までは解説しない。これがわからない人はハードディスクの繋ぎかえも出来ないだろう)
さらに後ろに数字が付いているのは「1番目のパーテーション」と言う意味だ。
今回は、パーテーションを分けない(1つしかない)ディスクを使用した。
mount は、ディスクを使えるようにするコマンドで、/mnt/c というディレクトリの下に見えるようにしている。
続いて、何かあったときのために、/mnt/c に S57 のシステムのバックアップを作る。
これがあればハードディスクを壊してしまっても復旧できる。FAT32なので、Windows で読み出して CD にでも焼いておくといいだろう。
mfsbackup -6so /mnt/c/tivo.bak /dev/hda
圧縮率中くらいで圧縮しながら、PM のシステム部分を tivo.bak に保存する、という設定だ。
続いて、ディスク内容を 250GB の新ディスクに移行させる。
mfsbackup -Tao - /dev/hda | mfsrestore -s 127 -zxpi - /dev/hdb
mfsbackup はさっき使ったコマンドと同じ。ただし、今度はシステム部分だけでなく全体を取り出していて、保存先ファイル名に「-」(ハイフン一個)を指定している。
ハイフン一個の時には、内容が | の次に書かれたコマンドに渡されるのだ。
次のコマンドは mfsrestore 。これはディスクに内容を書き込むコマンド。
-s 127 で「swap 領域を 127Mbyte 確保」の意味。まぁ、これは Linux の動作に必要なものなので、わからなくてもよろしい。
-zxpi で、容量が大きい時には大きくなった領域を使えるようにフォーマットする意味も含んでいる。
読み込みファイル名は「-」。これは、前のコマンドの出力を読み込むと言う意味だ。
(mfsrestore で先ほど作ったシステムバックアップを指定すれば、ディスクが壊れた時にも復旧できる)
で、書き込むディスクは /dev/hdb 。PS に接続された新しいディスクだ。
ハードディスクの増量作業は、実はこれだけで終わり。
(すごく時間がかかるけど…80GB のコピーで12時間くらいかかったはず。寝ている間に終わったので正確にはわからないけど)
新しいディスクを元通り S57 につないで電源を入れ、保存されている番組一覧画面で「画面表示」キーを押せば 250Gbyte 使えるようになっているのが確認できる。
さて、これで目標 1 が完了した。
ここまでの内容だけで詳細に日記を書いている「余裕」があることからもわかるとおり、目標 2 には進んでいない(笑)
というか、改造のために新しいディスクを mount して中身を見ようと思ったら、mount 出来ないんだよね。
CD からのブートでは mount 出来ないのかな? Tivoの特殊なフォーマットを mount 出来るように設定された、専用の Linux カーネルが必要なのかも。
同じテーマの日記(最近の一覧)
別年同日の日記
申し訳ありませんが、現在意見投稿をできない状態にしています。 【あきよし】 ちゃんと読めばわかるとおり Linux の知識は不要ですが、PCについての基礎知識は必要です。冷たい言い方ですが、理解できないなら手を出さないほうが良いと思います。 (2005-02-01 09:42:29)【ソニオ】 ご返答ありがとうございます。当方の機は、まだ完全には、死んでないので電源を入れればかろうじて動きます。でもここに書かれてることがレベルが高すぎてとても理解出来ません。 (2005-02-01 04:18:26) 【あきよし】 システムファイルのバックアップがあれば復活できると思いますが…。Linux 自体は著作権フリーですが、システムはソニーの著作物です。自分で使用するためにバックアップをとっていない場合は、ソニーに修理を頼むしかないと思います。 (2005-01-31 11:08:09) 【ソニオ】 再度、投稿させていただきます。私のS57死んでるんですが、何とか80Gでもいいから復活させたいのですが、、、よろしくお願い致します。 (2005-01-31 03:56:19) 【あきよし】 その後暇が無くて続きをやっていないのですが、無理ではない感触ですよ。ちなみに最後に書いてある「mountできない」はKnoppix-Lite V3.3 ISO for Tivoを使えば解決です。 (2005-01-08 14:11:32) 【ソニオ】 結局、この機種は、無理なのですか? (2005-01-08 04:55:10) 【あきよし】 上の内容の訂正。S57 は BigDrive 対応だと言う情報が 2ch に出ていたので信用してみたのですが、どうやら違うようです(バージョンの問題かもしれません)。そのため、上の方法で137GB以上のハードディスクを増設すると、不具合が出ます。パッチをあてたS57用Kernelも作って見ましたが、まだ動作確認取れていません。 (2004-11-21 18:15:13) |