HDL-GX250 改造&HDD交換 [PCハード]
知人から電源が入らなくなったHDL-GX250をもらい受ける。
調べてみると内部に入っているスイッチング電源が壊れていた。
ネットで探し回ったが、代替電源は今は出回っていない模様。
捨ててしまうのはもったいないので、内蔵HDDをUSB経由で外付けするときに使う電源を流用することにした。
こんなやつ、
電源単体でも売っているようです。
UD-ACDC100NS(ドライブ用補助電源)とか、直刺しAC2(CDIS-AC2)。
内部の電源コネクターをそのままにしておきたかったので、ちょっと工作。
千石電商にて材料購入。
JST XHコネクタ ポストトップ型 B8B-XH-A(LF)(SN) 30円
電源コネクタ4P 基板用 2000-04S 60円
AB基板 AB-J6-TH 70円
赤い線が+5V、オレンジの線が+12Vラインなので間違えないように接続。
下手な半田付けなのであまり見せたくないのですが、このように工作しました。
この程度の半田付けでも動作するものが作れましたw
こんな感じで電源復活!
ついでにHDDの容量UP。
備忘録代わりに手順を記述しておきます。
同じことにチャレンジする方はデータのバックアップを忘れずにやっておいてください。
ここに書いた手順には間違いがあるかもしれません。
また、パーティションを操作しますので間違えると二度と使用できなくなる可能性が大です。
自己責任でお願いします。
必要なもの、条件。
・新しいSATA接続の3.5inch HDD
・CDでブートでき、SATA接続の3.5inch HDDを接続できるPCがある。
・eSATAもしくはUSBで3.5inch HDDをHDL-GXに接続できるケーブル、電源がある。
・KNOPPIXのLiveCDを作れる。
・viを使える。(ネットでちょっと調べれば使い方はわかると思います。)
/dev/sdaって何?fdiskって何?という方には、以下の手順はつらいかもしれません。
そのような方にとっては以下の方法は暗闇で平均台を渡って、金○を思いっきり打ち付けるような事態になるかもしれませんのでおすすめしません。(失礼)
「やっている内容はわかっているよ。」という方はデバイス名の打ち間違えに注意してください。
以下のページを参考にさせて頂きました。
IO-DATA LANDISK HDL-GXR 内蔵HDD交換手順
と、
I・O DATA LANDISK HDL-GX300 内蔵HDD交換
と、
HDL-GXシリーズとtelnet
ありがとうございました。
まずHDL-GX250をTelnet可能とする。
元からあったHDDを外し、KNOPPIXで起動できるPCにつなぐ。
私はKNOPPIX6.4.4 CD日本語版を使用しました。
この場合、書き込むCD-Rは700MB版を用意して下さい。
元からあったHDDは/dev/sdaと認識されました。
元のHDDの第2パーティションを/mnt/sda2としてマウント。
$ sudo mount -t ext3 /dev/sda2 /mnt/sda2
viを使ってrc.localを編集。
$ sudo vi /mnt/sda2/etc/init.d/rc.local
ファイルの最後の方、#Endの前に
/usr/sbin/telnetd
の1行を入れる。
rootでのパスワード付きログインにしたいのでsecurettyを編集。
$ sudo vi /mnt/sda2/etc/securetty
最後に
pts/0
の1行を追加。
元のHDDをHDL-GX250に戻し、Telnetでログイン。
私はTeraTerm(version 4.69)を使いました。
LANDISK login:
とプロンプトが出るので
root
と打ってリターンを押すと今回だけはパスワードをきかれずにログインできます。
ルートディレクトリを書き込みできるようにリマウント。
# mount -o remount -w /
パスワードを設定。
# passwd
ログイン時に Using fallback suid method という警告を出さないようにするために、
# touch /etc/busybox.conf
としておく。
一旦電源を切り再起動。
「ピー」と鳴って正常起動したら、新しいHDDをeSATAにつないでSTATUSランプの点滅が止まるまで待つ。
Telnetでログイン。
LANDISK login:
のプロンプトが出るので root と打って、さきほど設定したパスワードでログイン。
今回はWestrn Digital製のWD20EARS(2TB)を使用。/dev/sdbと認識されている。
パーティションを確認するなら、
# cat /proc/partitions
fdiskを使って全領域を開放。
ここから先、主な操作ターゲットは/dev/sdbですので気をつけてください。
くれぐれも「sda」と「sdb」を間違えないように。
# fdisk /dev/sdb
パーティションの状態を確認。
Command (m for help): p
パーティションが2つ確保されている場合は以下のようにして領域解放。
その他の場合は状況に合わせて下さい。
Command (m for help): d
Partition number (1-4): 2
Command (m for help): d
Selected partition 1
Command (m for help): w
これで領域が開放されました。
システム領域を新しいHDDへコピー。(元のHDDの先頭2Gだけを転送する)
7分ぐらいかかりました
# dd if=/dev/sda of=/dev/sdb count=3906250
(3906250=2*1000^3/512)
if側は元のHDD、of側は新しいHDD
ifとofのパラメータは間違えないように。これを逆にするとシステム領域を破壊し元に戻れなくなります。
-----ここからちょっと余談-----
チキンな慎重な方は、USBメモリーをUSB1にさして、
# dd if=/dev/sda count=3906250 | gzip -c > /mnt/usb1/top2G.img.gz
として、先頭2Gのバックアップを取っておくのも良いかも。
私はチキンなので一応これをやっておきました。
30分ぐらいかかりました。
書き戻すときは、KNOPPIXで起動できるPCにつないで
# gzip -d -c /media/sdb1/top2G.img.gz | dd of=/dev/sda
とかですかね。
-----余談ここまで-----
新しいHDDの拡張パーティション(sdb4)を一旦削除。
# fdisk /dev/sdb
Command (m for help): d
Partition number (1-6): 4
新しいHDDの拡張パーティション(sdb4)を再作成。
開始シリンダーは145で決め打ち。
後でミラーリングを構築する際に不具合が起きないように、少しだけ小さめに領域確保。
Command (m for help): n
e
First cylinder (1-243201, default 1): 145
Last cylinder or +size or +sizeM or +sizeK (145-243201, default 243201): 243197
新しいHDDに設定保存用パーティション(sdb5)を作成。
開始シリンダーは145で、終了シリンダーは170で決め打ち。
Command (m for help): n
First cylinder (145-243197, default 145): 145
Last cylinder or +size or +sizeM or +sizeK (145-243197, default 243197): 170
新しいHDDにデータパーティション(sdb6)を作成。
Command (m for help): n
First cylinder (171-243197, default 171): 171
Last cylinder or +size or +sizeM or +sizeK (171-243197, default 243197): 243197
新しいHDDのパーティション更新状況を記録し終了。
Command (m for help): w
新しいHDDをフォーマット。
# mke2fs -j /dev/sdb5
# mke2fs -j /dev/sdb6
/dev/sdb6のフォーマットには30分ぐらいかかりました。
元のHDDの設定保存用パーティションの内容を新しいHDDにコピー。
# mount /dev/sdb5 /mnt/esata1
# cp -Rpfv /mnt/hda5/* /mnt/esata1
新しいHDDのデータパーティションに初期フォルダを作成。
# mount /dev/sdb6 /mnt/esata2
# cd /mnt/esata2
# mkdir -p share/disk
# mkdir -p spool/samba
# chmod 777 share/disk
電源断。
# shutdown -h now
元の内蔵HDDを外し、新しいHDDに入れ替えて再起動。
ステータスランプの緑点滅が止まらないが、ある程度時間がたったら(3分位)Telnetで接続。
RAIDの再構成を行う。
# mdadm -C -f /dev/md5 -l 1 -n 2 /dev/sda5 missing
# mdadm -C -f /dev/md6 -l 1 -n 2 /dev/sda6 missing
-----ここからまたもや余談-----
!!!1TBを超えるサイズのディスクでミラーリングをする予定の方だけ以下数行の作業をしてください!!!
ミラーリングをする際の下ごしらえ。
ルートディレクトリを書き込みできるようにリマウント。
# mount -o remount -w /
/usr/loca/binにあるHDLdrive.pmの一部を変更。
# vi /usr/local/bin/HDLdrive.pm
103行目
return $size += 0;
となっているところを、
return $size;
に変更。(文字列のまま返す)
HDLraid.pmの一部も変更。
# vi /usr/local/bin/HDLraid.pm
276行目
$ret{size} = 2*$1;
となっているところを、
$ret{size} = sprintf('%lu',2*$1);
に変更。(符号なしintとして文字列にする)
!!!1TBを超えるサイズのディスクでミラーリングをする方だけの作業終了!!!
-----余談ここまで-----
ステータスランプの緑点滅が止まらないが、
# shutdown -h now
として電源断。
再び電源を入れ、しばらくすると「ピー」と鳴って正常起動。
エクスプローラーでアクセスすると「disk」フォルダーが見えて共有OK。容量増加OK。
念のため、WEB管理画面からフォーマットをかけておく。
お疲れさまでした。
バックアップしたデータがあれば書き戻してください。
偉大な先人達に感謝!
参考にしたページがなければここまでたどり着けませんでした。
調べてみると内部に入っているスイッチング電源が壊れていた。
ネットで探し回ったが、代替電源は今は出回っていない模様。
捨ててしまうのはもったいないので、内蔵HDDをUSB経由で外付けするときに使う電源を流用することにした。
こんなやつ、
電源単体でも売っているようです。
UD-ACDC100NS(ドライブ用補助電源)とか、直刺しAC2(CDIS-AC2)。
内部の電源コネクターをそのままにしておきたかったので、ちょっと工作。
千石電商にて材料購入。
JST XHコネクタ ポストトップ型 B8B-XH-A(LF)(SN) 30円
電源コネクタ4P 基板用 2000-04S 60円
AB基板 AB-J6-TH 70円
赤い線が+5V、オレンジの線が+12Vラインなので間違えないように接続。
下手な半田付けなのであまり見せたくないのですが、このように工作しました。
この程度の半田付けでも動作するものが作れましたw
こんな感じで電源復活!
ついでにHDDの容量UP。
備忘録代わりに手順を記述しておきます。
同じことにチャレンジする方はデータのバックアップを忘れずにやっておいてください。
ここに書いた手順には間違いがあるかもしれません。
また、パーティションを操作しますので間違えると二度と使用できなくなる可能性が大です。
自己責任でお願いします。
必要なもの、条件。
・新しいSATA接続の3.5inch HDD
・CDでブートでき、SATA接続の3.5inch HDDを接続できるPCがある。
・eSATAもしくはUSBで3.5inch HDDをHDL-GXに接続できるケーブル、電源がある。
・KNOPPIXのLiveCDを作れる。
・viを使える。(ネットでちょっと調べれば使い方はわかると思います。)
/dev/sdaって何?fdiskって何?という方には、以下の手順はつらいかもしれません。
そのような方にとっては以下の方法は暗闇で平均台を渡って、金○を思いっきり打ち付けるような事態になるかもしれませんのでおすすめしません。(失礼)
「やっている内容はわかっているよ。」という方はデバイス名の打ち間違えに注意してください。
以下のページを参考にさせて頂きました。
IO-DATA LANDISK HDL-GXR 内蔵HDD交換手順
と、
I・O DATA LANDISK HDL-GX300 内蔵HDD交換
と、
HDL-GXシリーズとtelnet
ありがとうございました。
まずHDL-GX250をTelnet可能とする。
元からあったHDDを外し、KNOPPIXで起動できるPCにつなぐ。
私はKNOPPIX6.4.4 CD日本語版を使用しました。
この場合、書き込むCD-Rは700MB版を用意して下さい。
元からあったHDDは/dev/sdaと認識されました。
元のHDDの第2パーティションを/mnt/sda2としてマウント。
$ sudo mount -t ext3 /dev/sda2 /mnt/sda2
viを使ってrc.localを編集。
$ sudo vi /mnt/sda2/etc/init.d/rc.local
ファイルの最後の方、#Endの前に
/usr/sbin/telnetd
の1行を入れる。
rootでのパスワード付きログインにしたいのでsecurettyを編集。
$ sudo vi /mnt/sda2/etc/securetty
最後に
pts/0
の1行を追加。
元のHDDをHDL-GX250に戻し、Telnetでログイン。
私はTeraTerm(version 4.69)を使いました。
LANDISK login:
とプロンプトが出るので
root
と打ってリターンを押すと今回だけはパスワードをきかれずにログインできます。
ルートディレクトリを書き込みできるようにリマウント。
# mount -o remount -w /
パスワードを設定。
# passwd
ログイン時に Using fallback suid method という警告を出さないようにするために、
# touch /etc/busybox.conf
としておく。
一旦電源を切り再起動。
「ピー」と鳴って正常起動したら、新しいHDDをeSATAにつないでSTATUSランプの点滅が止まるまで待つ。
Telnetでログイン。
LANDISK login:
のプロンプトが出るので root と打って、さきほど設定したパスワードでログイン。
今回はWestrn Digital製のWD20EARS(2TB)を使用。/dev/sdbと認識されている。
パーティションを確認するなら、
# cat /proc/partitions
fdiskを使って全領域を開放。
ここから先、主な操作ターゲットは/dev/sdbですので気をつけてください。
くれぐれも「sda」と「sdb」を間違えないように。
# fdisk /dev/sdb
パーティションの状態を確認。
Command (m for help): p
パーティションが2つ確保されている場合は以下のようにして領域解放。
その他の場合は状況に合わせて下さい。
Command (m for help): d
Partition number (1-4): 2
Command (m for help): d
Selected partition 1
Command (m for help): w
これで領域が開放されました。
システム領域を新しいHDDへコピー。(元のHDDの先頭2Gだけを転送する)
7分ぐらいかかりました
# dd if=/dev/sda of=/dev/sdb count=3906250
(3906250=2*1000^3/512)
if側は元のHDD、of側は新しいHDD
ifとofのパラメータは間違えないように。これを逆にするとシステム領域を破壊し元に戻れなくなります。
-----ここからちょっと余談-----
# dd if=/dev/sda count=3906250 | gzip -c > /mnt/usb1/top2G.img.gz
として、先頭2Gのバックアップを取っておくのも良いかも。
私はチキンなので一応これをやっておきました。
30分ぐらいかかりました。
書き戻すときは、KNOPPIXで起動できるPCにつないで
# gzip -d -c /media/sdb1/top2G.img.gz | dd of=/dev/sda
とかですかね。
-----余談ここまで-----
新しいHDDの拡張パーティション(sdb4)を一旦削除。
# fdisk /dev/sdb
Command (m for help): d
Partition number (1-6): 4
新しいHDDの拡張パーティション(sdb4)を再作成。
開始シリンダーは145で決め打ち。
後でミラーリングを構築する際に不具合が起きないように、少しだけ小さめに領域確保。
Command (m for help): n
e
First cylinder (1-243201, default 1): 145
Last cylinder or +size or +sizeM or +sizeK (145-243201, default 243201): 243197
新しいHDDに設定保存用パーティション(sdb5)を作成。
開始シリンダーは145で、終了シリンダーは170で決め打ち。
Command (m for help): n
First cylinder (145-243197, default 145): 145
Last cylinder or +size or +sizeM or +sizeK (145-243197, default 243197): 170
新しいHDDにデータパーティション(sdb6)を作成。
Command (m for help): n
First cylinder (171-243197, default 171): 171
Last cylinder or +size or +sizeM or +sizeK (171-243197, default 243197): 243197
新しいHDDのパーティション更新状況を記録し終了。
Command (m for help): w
新しいHDDをフォーマット。
# mke2fs -j /dev/sdb5
# mke2fs -j /dev/sdb6
/dev/sdb6のフォーマットには30分ぐらいかかりました。
元のHDDの設定保存用パーティションの内容を新しいHDDにコピー。
# mount /dev/sdb5 /mnt/esata1
# cp -Rpfv /mnt/hda5/* /mnt/esata1
新しいHDDのデータパーティションに初期フォルダを作成。
# mount /dev/sdb6 /mnt/esata2
# cd /mnt/esata2
# mkdir -p share/disk
# mkdir -p spool/samba
# chmod 777 share/disk
電源断。
# shutdown -h now
元の内蔵HDDを外し、新しいHDDに入れ替えて再起動。
ステータスランプの緑点滅が止まらないが、ある程度時間がたったら(3分位)Telnetで接続。
RAIDの再構成を行う。
# mdadm -C -f /dev/md5 -l 1 -n 2 /dev/sda5 missing
# mdadm -C -f /dev/md6 -l 1 -n 2 /dev/sda6 missing
-----ここからまたもや余談-----
!!!1TBを超えるサイズのディスクでミラーリングをする予定の方だけ以下数行の作業をしてください!!!
ミラーリングをする際の下ごしらえ。
ルートディレクトリを書き込みできるようにリマウント。
# mount -o remount -w /
/usr/loca/binにあるHDLdrive.pmの一部を変更。
# vi /usr/local/bin/HDLdrive.pm
103行目
return $size += 0;
となっているところを、
return $size;
に変更。(文字列のまま返す)
HDLraid.pmの一部も変更。
# vi /usr/local/bin/HDLraid.pm
276行目
$ret{size} = 2*$1;
となっているところを、
$ret{size} = sprintf('%lu',2*$1);
に変更。(符号なしintとして文字列にする)
!!!1TBを超えるサイズのディスクでミラーリングをする方だけの作業終了!!!
-----余談ここまで-----
ステータスランプの緑点滅が止まらないが、
# shutdown -h now
として電源断。
再び電源を入れ、しばらくすると「ピー」と鳴って正常起動。
エクスプローラーでアクセスすると「disk」フォルダーが見えて共有OK。容量増加OK。
念のため、WEB管理画面からフォーマットをかけておく。
お疲れさまでした。
バックアップしたデータがあれば書き戻してください。
偉大な先人達に感謝!
参考にしたページがなければここまでたどり着けませんでした。
お役に立てて光栄です。
by mu (2012-03-15 15:09)
説明が分かりやすい
素晴らしい。
HDL-GX320Rを使ってUNIXの勉強が出来そうですね。
by NO NAME (2016-03-08 06:22)
分かりやすいこのページのおかげで2TBに交換成功しました。
HDLraid.pmのおまじないの時に、最後の「)」を入れ忘れたため設定画面のディスク関連の所にエラーが出て焦りましたが、何度も見直して気が付きました。
ありがとうございました
by ずぅか (2017-11-19 19:56)
ずぅかさん
最近はUNIX系のコマンドもイジっていないですが、過去の記事がお役に立ててうれしいです。
うちのHDL-GX250もバックアップ領域とプリントサーバーとして稼働しています。
by moto (2017-11-19 21:22)