Decremented Blog

プログラミング、釣り、工作など、ジャンルを特に定めず、適当に書かれたブログです。

Giga LANDISKのHD交換方法 まとめ

2008-06-25 23:12:19 | 趣味・その他
Giga LANDISKのHDDの載せ換え方法をまとめます。

1.準備するもの
・Giga LANDISK
 今回は、HDL-GX250Rを利用しました。
 eSATAコネクタのあるモデルです。他のモデルでは多分上手く行きません。元のHDD容量は異なってもOKです。
・裸族の頭
 裸のHDDをUSBで接続するキットです。
 他の物でも構いません。
・PC
 Telnetでログインするために必要です。
 Windowsを前提として書きます。

2.Telntedを有効化
http://wiki.nothing.sh/page/I-O%20Hack/Giga%20LANDISK/%A5%BD%A5%D5%A5%C8%A5%A6%A5%A7%A5%A2
を参考に、Telnetdを有効にします。
有効化後、「ファイル名を指定して実行」から「telnet landisk」でLANDISKへTelnetでログインできます。

3.新しいHDDを接続
裸族の頭を使い、新しいHDDをLANDISKへ接続します。
私はLANDISKの後ろのUSBポートを使用しました。
接続後、LANDISKを再起動し、Telnetで再度ログインします。
以下のコマンドを入力して接続を確認します。

> fdisk -l /dev/sdb

Disk /dev/sdb: 1000.2 GB, 1000204886016 bytes
255 heads, 63 sectors/track, 121601 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

上のような出力が出たら接続されています。
接続したHDDの容量等を確認してください。

4.システム転送
以下のコマンドで、システム領域を新しいHDDへ転送します。
(HDDの先頭2Gが転送されます)

> dd bs=1M count=2048 if=/dev/sda of=/dev/sdb

5.パーテーション切り直し
以下のコマンドで、パーテーションの切り直しを行います。

> fdisk /dev/sdb

まず、現在のパーテーションを確認します。

> Command (m for help): p

Disk /dev/sdb: 1000.2 GB, 1000204886016 bytes
255 heads, 63 sectors/track, 121601 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

Device Boot Start End Blocks Id System
/dev/sdb1 2 27 208845 83 Linux
/dev/sdb2 28 78 409657+ 83 Linux
/dev/sdb3 79 144 530145 82 Linux swap / Solaris
/dev/sdb4 145 30394 242983125 5 Extended
/dev/sdb5 145 170 208844+ 83 Linux
/dev/sdb6 171 30394 242774279+ 83 Linux

サイズ変更のために、拡張パーテーションを削除します。

> Command (m for help): d
> Partition number (1-6): 4

拡張パーテーションを作成しなおします。

> Command (m for help): n
> Command action
> e extended
> p primary partition (1-4)
> e
> Selected partition 4
> First cylinder (1-121601, default 1): 145
> Last cylinder or +size or +sizeM or +sizeK (145-121601, default 121601):
> Using default value 121601

設定保存用パーテーション(sdb5)を作成します。

> Command (m for help): n
> First cylinder (145-121601, default 145):
> Using default value 145
> Last cylinder or +size or +sizeM or +sizeK (145-121601, default 121601): 170

データパーテーション(sdb6)を作成します。

> Command (m for help): n
> First cylinder (171-121601, default 171):
> Using default value 171
> Last cylinder or +size or +sizeM or +sizeK (171-121601, default 121601):
> Using default value 121601

> q
で終了します。

6.データの転送
以下のコマンドで、フォーマットを行います。

> mke2fs -j /dev/sdb5
> mke2fs -j /dev/sdb6

以下のコマンドで、設定保存用パーテーションの内容をコピーします。

> mount /dev/sdb5 /mnt/usbdisk1/
> cp /mnt/hda5/* /mnt/usbdisk1

以下のコマンドで、データパーテーションに初期フォルダを作成します。

> mount /dev/sdb6 /mnt/usbdisk2/
> cd /mnt/usbdisk2/
> mkdir -p share/disk/ spool/samba

7.RAIDの再構成
HDL-GXRはHDが一台ですが、ミラーリングのためにRAIDが構成されていますので、再構成が必要です。
LANDISKのHDDを新しいものに入れ替え、再起動します。
この時点では、正常に起動しません。
Telnetで再度ログインします。

以下のコマンドで、RAIDの再構成を行います。

> mdadm -C -f /dev/md5 -l 1 -n 1 /dev/sda5
> mdadm -C -f /dev/md6 -l 1 -n 1 /dev/sda6

LANDISKを再起動します。
以上で作業は完了です。

※追記
正常起動を確認後、管理画面からフォーマットしてください。
そうしないと、RAID管理領域の関係で、データが壊れるようです。

Giga LANDISKのHD交換方法 その2

2008-06-25 03:48:00 | 趣味・その他
昨日の続きです。
とりあえず、元と同じ容量のHDとして認識させることには成功しました。
バックアップの場合はこれで良いのですが、今回はより大容量のものへの載せ替えが目的です。

手元にPartitionMagic 8があるので、これを用いて単純にデータ領域のパーテーションのサイズを変更してみます。
結果、起動はするのですが、内臓HDにアクセスできなくなってしまいました。
フォーマットなどを行っても、エラーになってしまいます。

外からは原因が分かりそうに無いので、telnetを使えるようにし、内部へアクセスして原因を探ることにしました。
telnetdの有効化方法は、↓のサイトを参考にさせていただきました。
http://wiki.nothing.sh/page/I-O%20Hack/Giga%20LANDISK/%A5%BD%A5%D5%A5%C8%A5%A6%A5%A7%A5%A2

色々調べた結果、どうも、ミラーリング機能に原因があるようです。
データパーテーションは/dev/sda6にマウントされるのですが、LANDISKのソフトウェアは/dev/md6をアクセスするようにできてるようです。
パーテーションをいじった為に、RAID情報が失われてしまい、/dev/md6が消滅してしまったのが、今回の原因のようです。

原因が分かれば対策は簡単です。
telnetしたプロンプトから、以下のコマンドを実行し、再度RAIDを構成します。
RAIDと言ってもディスクはひとつなので、-fを付けて強制的に実行します。

> mdadm -C -f /dev/md6 -l 1 -n 1 /dev/sda6

RAID再構成後、再起動すると無事認識されました。
結構、手間をかけさせられたなあ・・・

[散財] ここ数日の買い物(釣具)

2008-06-24 02:24:24 | 釣り
少しまとまった額のお金が手に入ったのと、釣具のポイントがサマーセールを行っていたので、まとめて釣具を揃えました。
だいたい4割引以上で購入しています。
ポイントのバーゲンセールって、普段買うのが馬鹿らしくなるほど値引きされるんですね・・・

■サーフトローリング、ショアジギング関係
[ロッド] シマノ - SURF LEADER FV 425CX-T
[ロッド] POINT BAY - TRUSTER-Z 10f
[リール] ダイワ - FREAMS KIX 4000
[ライン] フロストン - BlueWater 30lb/200m

正直、定価1万円を超えるラインは無駄遣いだった・・・
同じ値段でも、値引きの大きいゴーセンのPEジギングマスター AJの方が良かったかな。

■アオリイカ関係
[ロッド] POINT BAY - EGI BOMBER 7.6f
[ロッド] POINT BAY - HEDGEHOG SQUID 8f
[リール] ダイワ - REVROS 2000
[ライン] アオリイカ エギファイヤー 1号/120m

エギは二人分の道具を揃えました。
ボートで使うつもりなので、短めのロッドです。
良い奴も安売りしてたんですが、サーフトローリングにお金をかけすぎて予算が足りませんでした(笑

これまで、貰い物と激安の釣具で釣りしてたので、ちょっとお金をかけてみました。
趣味にお金をかけるって、楽しいですね。
まあ、コストパフォーマンス最優先で選んだので本格的にやってる人には笑われそうですが(笑

Giga LANDISKのHD交換方法

2008-06-24 01:50:38 | 趣味・その他
今更ですが、IO-DATAのGiga LANDISKのHDを交換したので、その方法を公開します。

Giga LANDISKのHDは、PartitionMagic等でHDを複製しても正常に動作しないようです。
どうやら、原因は先頭約8Mの空き領域にありそうです。
ここにブートイメージが入っているようなのですが、空き領域扱いなので、PartitionMagic等ではコピーできません。

一番簡単なのは、「これDo台」等を利用して、セクタコピーを行うことです。
ATA接続のこれDo台は持ってるのですが、Giga LANDISKはSATAなので、使用できません。
SATA対応のこれDo台が販売されていますが、結構高いので、他の方法を考えます。

Linuxではddと言うツールがあるので、簡単にセクタコピーを行うことができます。
探してみると、dd for windowsと言うWindows版のddがあるようです。
これを利用します。

ddは、コマンドラインベースのソフトで、さらに、NTのネイティブデバイス名を指定する必要があるため、それなりにPCの知識がある人向けです。
私の環境では、元のLANDISKのHDが\\?\Device\Harddisk3\、新しいHDが\\?\Device\Harddisk2\にマウントされました。

> dd --list

で、デバイスリストが表示されます。
Partition0がディスク全体、Partition1以降が各パーテーションになります。
私の環境では、以下のようなコマンドでディスクの全コピーが可能です。

> dd ds=10M if=\\?\Device\Harddisk3\Partition0 of=\\?\Device\Harddisk2\Partition0

ds=10Mは、10Mずつコピーする指定です。これが無いと、たぶんコピーに数日かかります。
これで、とりあえず、HDの複製ができました。
続きは次回で。