うちのEX9も6年くらい使っているのでそろそろHDDやばそうだな、ってことで壊れる前に 250GBから500GBに交換しました。 HDDの物理的な交換は簡単ですが、交換しただけではやはり動かず(いちおう試しました)システムデータをコピーする必要があります。 システムデータのコピーはLinuxマシンが一台あればそれを利用して作業を行うことができます。
オリジナルのものからデータ領域だけ大きくして割り当てればよいのですが、必要以上に大きな領域があるので縮小しました。
パーティッション構成の調査結果と変更後のサイズ(サイズ旧→新)以下の通りです。
番号 | マウントポイント | タイプ | ファイルシステム | サイズ(GB)旧→新 | 内容 |
1 | /pvr/disk1/stream | Linux | xfs | 227 → 478 | 動画データ(.ts) |
2 | /pvr/disk1/info | Linux | xfs | 2 → 3 | 動画データの何か(.inf, .sct) |
3 | /pvr/disk1/playlist | Linux | xfs | 2 → 1 | 動画データのプレイリスト(.plst) |
4 | 無し | Extended | 無し | 12 → 6 | 拡張パーティッション(5-9のパーティションが含まれている) |
5 | /mnt/rsrc | Linux | xfs | 1 → 1 | メディアサーバデータ |
6 | /mnt/config | Linux | xfs | 1 → 1 | 設定データ |
7 | /var | Linux | xfs | 1 → 1 | システムワークエリア、ログ |
8 | 不明 | Linux | xfs | 5 → 2 | ユーザphotoストレージ |
9 | 無し | Linux | swap | 4 → 1 | スワップ |
fdiskの表示では以下のようになっています。
Disk /dev/hdc: 250.0 GB, 250059350016 bytes 255 heads, 63 sectors/track, 30401 cylinders Units = シリンダ数 of 16065 * 512 = 8225280 bytes デバイス Boot Start End Blocks Id System /dev/hdc1 1 28301 227327751 83 Linux /dev/hdc2 28302 28556 2048287+ 83 Linux /dev/hdc3 28557 28811 2048287+ 83 Linux /dev/hdc4 28812 30341 12289725 f W95 Ext'd (LBA) /dev/hdc5 28812 28938 1020096 83 Linux /dev/hdc6 28940 29066 1020096 83 Linux /dev/hdc7 29067 29193 1020096 83 Linux /dev/hdc8 29195 29831 5116671 83 Linux /dev/hdc9 29832 30341 4096543+ 83 Linux
Disk /dev/hdd: 500.1 GB, 500107862016 bytes 255 heads, 63 sectors/track, 60801 cylinders Units = シリンダ数 of 16065 * 512 = 8225280 bytes デバイス Boot Start End Blocks Id System /dev/hdd1 1 59573 478520091 83 Linux /dev/hdd2 59574 59939 2939895 83 Linux /dev/hdd3 59940 60062 987997+ 83 Linux /dev/hdd4 60063 60801 5936017+ 5 拡張領域 /dev/hdd5 60063 60185 987966 83 Linux /dev/hdd6 60186 60308 987966 83 Linux /dev/hdd7 60309 60431 987966 83 Linux /dev/hdd8 60432 60675 1959898+ 83 Linux /dev/hdd9 60676 60801 1012063+ 83 Linux
fdiskで上記のようにパーティッションを切った後、それぞれのパーティッションを初期化し、データをコピーするという手順になります。 初期化は、xfsの領域はmkfs.xfs(xfsprogsに含まれているコマンド), swapはmkswapを使用します。
ファイルシステムのタイプ指定は全部Linuxでいいみたいです。
1,2,3,5,6,7,8のパーティッションをmkfs.xfsで初期化します。
注意しなければならないのは、xfsにはバージョンがあるということです。 最新バージョンで作成するとcocoonでマウントできません。 私はこれで、2、3回作り直す羽目になりました。 最終的には以下のようにオプションを指定することでマウントできるようになりました。
# /sbin/mkfs.xfs -f -i attr=0 -l version=1 デバイスなお、http://www.sony.net/Products/Linux/Download/search.html で公開されているxfsprogsを使用すればなにも指定しなくてもマウントできたのかもしれません。
マウントに失敗するとハードディスクのチェックの画面が出て、しばらくすると電源が落ちてしまいます。
# mkswap デバイスでOKです。
録画データ関係のパーティッション1,2,3はコピーしません。 パーティッション5,6,7,8の中のファイルをコピーします。 写真データが不要ならばパーティッション8のコピーも不要だと思います。 cp でも tarでも できると思いますが、 私はxfsdump, xfsrestoreを使ってみました
録画データの移行はできませんでした。 コピーするだけだと、番組名との対応付けができないみたいです。 起動時のチェックで大部分が削除され、残ったデータも番組名と中身が一致しませんでした。 ちょっとしらべてみた感じではどうやっているのかわかりませんでした。 パーティッション6のapp/config/rectitle.datとかrestitle.datにタイトル文字列らしきものは含まれているんですけどね。 シリアルコンソールにはTitleMgrさんが
02/22 20:43:44.1 TitleMgr> [Warn]Find unknown title in AFS_TitleManager. titleId = 23849みたいなログをいっぱいだしています。
HDDボックスの下にあるCN402にシリアルコンソールが出ています。 RS232Cに接続するためにはレベルコンバータが必要です。
CN402のピン配置は以下の通りです。
番号 | 機能 |
1 | GND |
2 | GND |
3 | 5V |
4 | Tx(out) |
5 | Rx(in) |
ボーレートは38400bpsです。
ログ
NSC Boot Loaderとかいうネットワーク&ソフトウエアテクノロジーセンター(NSC)製と思われるBoot Loaderが使われています。でも操作方法がわからず、ブート処理をエスケープできません。
NSC Boot Loader Version 1.2 <built 11:46:08, 08/21/03 JST #3572> Machine : UBX UX Trinity (UX2) (mips/ubx/ux2) memory usage text: 0x80100000 - 0x80122d30 data: 0x80123020 - 0x801248c0 bss: 0x801248c0 - 0x80134d04 heap: 0x85000000 - 0x85800000 NBL: UNDEF mode : Comm Retry : UX1BootMode = Normal Trigger = PowKey Status = ACOff
xfsのバージョン問題ではまったときに原因を探る手助けになりました。
XFS: bad version XFS: SB validate failed mount: wrong fs type, bad option, bad superblock on /dev/hda7, or too many mounted file systems Warning: Can't mount /dev/hda7(N=0) Warning: There is no CRC LBA. log_area_repair:/dev/hda7 Phase 1 - find and verify superblock... bad primary superblock - bad version number !!!
しばらく待っていると ログインプロンプトが出ます。 しかし、login名とパスワードがわかりません。
************************************************************** Application Framework Servers Starting...............Finished ************************************************************** Phase 4.4 (ux2sysrc)start sysklogd start Starting system log daemon: syslogd klogd. xlogd start log rotate calling getty getty: ioctl() TIOCSPGR MontaVista Linux 2.1, Professional Edition (none) login:
ブートのエスケープ、linuxのlogin名とパスワードがわからないのでこれ以上は為す術がありませんでした。
FENIX/ MEMBERS / thomas's HOME / MEMO/ cocoon
佐藤益弘 thomas@fenix.ne.jp