LinkStation 大容量/小容量 HDD/ハードディスク への 交換/換装

LS-AVL/A LS-CHL LS-VL LS-XHL

わけわからんタイトルだが、 こう書いておくと検索にヒットするでしょう(笑
相変わらず大容量 HDD に交換したい人は多いようで(あたりまえ)
その手順の一つをまとめておく。

この方法は、Linux マシンを使う方法。
LS-XHL、LS-CHL、LS-AVL、LS-VL の3.5インチHDD1台モデルなら 同じように HDD 交換ができるはず。

必要なもの

交換するHDD

いわずもがな。
今回は、(大容量ではなく)小容量の(笑) SP2504C を用意した。
あらかじめパーティションは全て削除しておく。

GPT が認識できる Linux マシン

交換前/交換後の HDD が2台同時に SATA や USB で接続できること。
ここでは、ハックキットで Debian 化した LinkStation LS-QL を使う。

Linux マシンに HDD をつなぐケーブルなど

ここでは、2台の HDD を USB で接続するための ケーブル類があるものとして説明する。

LinkStation から標準ファームの HDD を取り出す

私のサイトから、機種名と「分解」で検索すると手順が出てくるはず
Google
  Web www.yamasita.jp   

Linux マシンに(USB で)標準ファームの HDD を接続する

あらかじめ Linux マシンで root になり、 /var/log/message を監視しておくと良い。
qube:~# tail -f /var/log/messages
	:
	:
USB で HDD を接続すると、、、
Dec  7 21:50:50 qube kernel: usb 2-1: new high speed USB device using ehci_marvell and address 3
Dec  7 21:50:50 qube kernel: usb 2-1: configuration #1 chosen from 1 choice
Dec  7 21:50:50 qube kernel: scsi3 : SCSI emulation for USB Mass Storage devices
Dec  7 21:50:55 qube kernel: scsi 3:0:0:0: Direct-Access     ViPowER  VP-89118(SD1)    2.10 PQ: 0 ANSI: 4
Dec  7 21:50:55 qube kernel: sd 3:0:0:0: [sdb] 976773168 512-byte hardware sectors (500108 MB)
Dec  7 21:50:55 qube kernel: sd 3:0:0:0: [sdb] Write Protect is off
Dec  7 21:50:55 qube kernel: sd 3:0:0:0: [sdb] 976773168 512-byte hardware sectors (500108 MB)
Dec  7 21:50:55 qube kernel: sd 3:0:0:0: [sdb] Write Protect is off
Dec  7 21:50:55 qube kernel: sdb: sdb1 sdb2 sdb3 sdb4 sdb5 sdb6
Dec  7 21:50:55 qube kernel: sd 3:0:0:0: [sdb] Attached SCSI disk
Dec  7 21:50:55 qube kernel: sd 3:0:0:0: Attached scsi generic sg1 type 0
sdb と認識された。
tail -f は CTRL-C で終了

パーティションの確認

qube:~# parted -s /dev/sdb print
Model: ViPowER VP-89118(SD1) (scsi)
Disk /dev/sdb: 500GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt

Number  Start   End     Size    File system  Name     Flags
 1      1049kB  1026MB  1024MB  ext3         primary
 2      1026MB  6146MB  5120MB  xfs          primary
 3      6146MB  6147MB  1049kB               primary
 4      6147MB  6148MB  1049kB               primary
 5      6148MB  7172MB  1024MB  linux-swap   primary
 6      7172MB  492GB   485GB   xfs          primary

qube:~#

交換先の HDD を USB で接続する

qube:~# tail -f /var/log/messages
	:
	:
Dec  7 21:57:49 qube kernel: usb 1-1: new high speed USB device using ehci_marvell and address 3
Dec  7 21:57:49 qube kernel: usb 1-1: configuration #1 chosen from 1 choice
Dec  7 21:57:49 qube kernel: scsi5 : SCSI emulation for USB Mass Storage devices
Dec  7 21:57:54 qube kernel: scsi 5:0:0:0: Direct-Access     SAMSUNG  J1OL928088       0-33 PQ: 0 ANSI: 2 CCS
Dec  7 21:57:54 qube kernel: sd 5:0:0:0: [sdc] 488283264 512-byte hardware sectors (250001 MB)
Dec  7 21:57:54 qube kernel: sd 5:0:0:0: [sdc] Write Protect is off
Dec  7 21:57:54 qube kernel: sd 5:0:0:0: [sdc] 488283264 512-byte hardware sectors (250001 MB)
Dec  7 21:57:54 qube kernel: sd 5:0:0:0: [sdc] Write Protect is off
Dec  7 21:57:54 qube kernel: sdc: unknown partition table
Dec  7 21:57:54 qube kernel: sd 5:0:0:0: [sdc] Attached SCSI disk
Dec  7 21:57:54 qube kernel: sd 5:0:0:0: Attached scsi generic sg2 type 0
ここでは、sdc と認識された。

sdc にパーティションが無いことを確認

qube:~# parted -s /dev/sdc print
Error: /dev/sdc: unrecognised disk label
qube:~# fdisk -l /dev/sdc

Disk /dev/sdc: 250.0 GB, 250001031168 bytes
255 heads, 63 sectors/track, 30394 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x00000000

Disk /dev/sdc doesn't contain a valid partition table
qube:~#

disklabel の設定

qube:~# parted -s /dev/sdc mklabel gpt
qube:~#

パーティションを切る

sdc に6つのパーティションを切る。
一つ目は、ext3 で 1024MB = 1GB
qube:~# parted -s /dev/sdc mkpart primary ext3 0 1024M
qube:~# parted -s /dev/sdc print
Model: SAMSUNG J1OL928088 (scsi)
Disk /dev/sdc: 250GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt

Number  Start   End     Size    File system  Name     Flags
 1      17.4kB  1024MB  1024MB               primary

qube:~# 
続いて、xfs で 6GB
qube:~# parted -s /dev/sdc mkpart primary xfs 1024MB 6146MB
qube:~# parted -s /dev/sdc print
Model: SAMSUNG J1OL928088 (scsi)
Disk /dev/sdc: 250GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt

Number  Start   End     Size    File system  Name     Flags
 1      17.4kB  1024MB  1024MB               primary
 2      1024MB  6146MB  5122MB               primary

qube:~# 
続いてダミーで2つパーティションを作る
qube:~# parted -s /dev/sdc mkpart primary xfs 6146MB 6146MB
qube:~# parted -s /dev/sdc mkpart primary xfs 6146MB 6146MB
qube:~# parted -s /dev/sdc print
Model: SAMSUNG J1OL928088 (scsi)
Disk /dev/sdc: 250GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt

Number  Start   End     Size    File system  Name     Flags
 1      17.4kB  1024MB  1024MB               primary
 2      1024MB  6146MB  5122MB               primary
 3      6146MB  6146MB  512B                 primary
 4      6146MB  6146MB  512B                 primary

qube:~# 
続いて swap 1GB
qube:~# parted -s /dev/sdc mkpart primary linux-swap 6146MB  7170MB
qube:~# parted -s /dev/sdc print
Model: SAMSUNG J1OL928088 (scsi)
Disk /dev/sdc: 250GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt

Number  Start   End     Size    File system  Name     Flags
 1      17.4kB  1024MB  1024MB               primary
 2      1024MB  6146MB  5122MB               primary
 3      6146MB  6146MB  512B                 primary
 4      6146MB  6146MB  512B                 primary
 5      6146MB  7170MB  1024MB               primary

qube:~# 
続いて残り全部
qube:~# parted -s /dev/sdc mkpart primary xfs 7170MB 250GB
qube:~# parted -s /dev/sdc print
Model: SAMSUNG J1OL928088 (scsi)
Disk /dev/sdc: 250GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt

Number  Start   End     Size    File system  Name     Flags
 1      17.4kB  1024MB  1024MB               primary
 2      1024MB  6146MB  5122MB               primary
 3      6146MB  6146MB  512B                 primary
 4      6146MB  6146MB  512B                 primary
 5      6146MB  7170MB  1024MB               primary
 6      7170MB  250GB   243GB                primary

qube:~#

比べてみる
qube:~# parted -s /dev/sdb print
Model: ViPowER VP-89118(SD1) (scsi)
Disk /dev/sdb: 500GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt

Number  Start   End     Size    File system  Name     Flags
 1      1049kB  1026MB  1024MB  ext3         primary
 2      1026MB  6146MB  5120MB  xfs          primary
 3      6146MB  6147MB  1049kB               primary
 4      6147MB  6148MB  1049kB               primary
 5      6148MB  7172MB  1024MB  linux-swap   primary
 6      7172MB  492GB   485GB   xfs          primary

qube:~# parted -s /dev/sdc print
Model: SAMSUNG J1OL928088 (scsi)
Disk /dev/sdc: 250GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt

Number  Start   End     Size    File system  Name     Flags
 1      17.4kB  1024MB  1024MB               primary
 2      1024MB  6146MB  5122MB               primary
 3      6146MB  6146MB  512B                 primary
 4      6146MB  6146MB  512B                 primary
 5      6146MB  7170MB  1024MB               primary
 6      7170MB  250GB   243GB                primary

qube:~#
若干違うが、気にしなくても良い(藁

フォーマット

sdc1 は ext3 で i-node サイズ 128 でフォーマットする。
qube:~#  mke2fs -j -I 128 /dev/sdc1
mke2fs 1.41.3 (12-Oct-2008)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
62720 inodes, 249995 blocks
12499 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=260046848
8 block groups
32768 blocks per group, 32768 fragments per group
7840 inodes per group
Superblock backups stored on blocks:
        32768, 98304, 163840, 229376

Writing inode tables: done
Creating journal (4096 blocks): done
Writing superblocks and filesystem accounting information: done

This filesystem will be automatically checked every 26 mounts or
180 days, whichever comes first.  Use tune2fs -c or -i to override.
qube:~#
sdc2 は xfs
qube:~# mkfs.xfs -f /dev/sdc2
meta-data=/dev/sdc2              isize=256    agcount=4, agsize=312622 blks
         =                       sectsz=512   attr=2
data     =                       bsize=4096   blocks=1250488, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096
log      =internal log           bsize=4096   blocks=2560, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=0
realtime =none                   extsz=4096   blocks=0, rtextents=0
qube:~#
sdc3, sdc4 はダミーなのでフォーマット不要

sdc5 は swap

qube:~# mkswap /dev/sdc5
Setting up swapspace version 1, size = 1023991 kB
no label, UUID=7e45c4c1-3a75-4674-bd41-24eedd5134b0
qube:~#
sdc6 は xfs
qube:~# mkfs.xfs -f /dev/sdc6
meta-data=/dev/sdc6              isize=256    agcount=4, agsize=14821229 blks
         =                       sectsz=512   attr=2
data     =                       bsize=4096   blocks=59284915, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096
log      =internal log           bsize=4096   blocks=28947, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=0
realtime =none                   extsz=4096   blocks=0, rtextents=0
qube:~#
パーティションを見る
qube:~# parted -s /dev/sdc print
Model: SAMSUNG J1OL928088 (scsi)
Disk /dev/sdc: 250GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt

Number  Start   End     Size    File system  Name     Flags
 1      17.4kB  1024MB  1024MB  ext3         primary
 2      1024MB  6146MB  5122MB  xfs          primary
 3      6146MB  6146MB  512B                 primary
 4      6146MB  6146MB  512B                 primary
 5      6146MB  7170MB  1024MB  linux-swap   primary
 6      7170MB  250GB   243GB   xfs          primary

qube:~#

sdb1 を sdc1 にコピー

まずはマウントポイントを作成
qube:~# mkdir /tmp/sdb1 /tmp/sdc1
qube:~#
マウント
qube:~# mount /dev/sdb1 /tmp/sdb1/
qube:~# mount /dev/sdc1 /tmp/sdc1/
qube:~# ls /tmp/sdb1 /tmp/sdc1/
/tmp/sdb1:
builddate.txt  hddrootfs.buffalo.updated.done  log.tgz          uImage.buffalo
conf_save.tgz  initrd.buffalo                  u-boot_lsvl.bin  uImage.buffalo.org

/tmp/sdc1/:
lost+found
qube:~#
コピー
qube:~# (cd /tmp/sdb1/; tar cf - .)|(cd /tmp/sdc1/ ; tar xvf -)
./
./builddate.txt
./u-boot_lsvl.bin
./log.tgz
./hddrootfs.buffalo.updated.done
./conf_save.tgz
./uImage.buffalo
./initrd.buffalo
./uImage.buffalo.org
qube:~#
アンマウント
qube:~# umount /tmp/sdb1 /tmp/sdc1
qube:~#

sdb2 を sdc2 にコピー

同様に
qube:~# mkdir /tmp/sdb2 /tmp/sdc2
qube:~# mount /dev/sdb2 /tmp/sdb2/
qube:~# mount /dev/sdc2 /tmp/sdc2/
qube:~# ls /tmp/sdb2 /tmp/sdc2/
/tmp/sdb2:
bin  boot  dev  etc  home  initrd  lib  mnt  proc  root  sbin  sys  tmp  usr  var  www

/tmp/sdc2/:
qube:~# (cd /tmp/sdb2/; tar cf - .)|(cd /tmp/sdc2/; tar xvf -)
	:
	:
./www/manual/
./www/manual/de
./www/manual/ja
./www/manual/en
./tmp
qube:~# !ls
ls /tmp/sdb2 /tmp/sdc2/
/tmp/sdb2:
bin  boot  dev  etc  home  initrd  lib  mnt  proc  root  sbin  sys  tmp  usr  var  www

/tmp/sdc2/:
bin  boot  dev  etc  home  initrd  lib  mnt  proc  root  sbin  sys  tmp  usr  var  www
qube:~#
アンマウント
qube:~# umount /tmp/sdb2/ /tmp/sdc2/
qube:~#

sdb6 を sdc6 にコピー

sdb3 ~ sdb5 はコピーしなくて良い。
sdb6 は同様にコピーする。
qube:~# mkdir /tmp/sdb6 /tmp/sdc6
qube:~# mount /dev/sdb6 /tmp/sdb6
qube:~# mount /dev/sdc6 /tmp/sdc6/
qube:~# ls /tmp/sdb6/ /tmp/sdc6/
/tmp/sdb6/:
mt-daapd  share  spool  tmp

/tmp/sdc6/:
qube:~# (cd /tmp/sdb6/; tar cf - .)|(cd /tmp/sdc6/; tar xvf -)
	:
	:
qube:~# !ls
ls /tmp/sdb6/ /tmp/sdc6/
/tmp/sdb6/:
mt-daapd  share  spool  tmp

/tmp/sdc6/:
mt-daapd  share  spool  tmp
qube:~#
アンマウント
ube:~# umount /tmp/sdb6/ /tmp/sdc6/
qube:~#
コピー完了。

HDD の取り外し

2つの HDD を取り外し。アンマウントしてあるので、抜くだけで良い

コピーした HDD を LinkStation に接続

電源 ON

無事立ち上がってくるはず。

ディスク1が、226 GB なのが見える。LS-V250L のできあがり

でも、失敗していたら、、、レンガに(泣

不安な方はやめた方がいいでしょう。
代りにやってあげましょうか(嘘



LS-CHL
バッファローダイレクト
楽天市場
Amazon
LS-XHL
バッファローダイレクト
楽天市場
amazon
ValuMore

LS-AVL/A
楽天市場
Amazon
uWorks
ValuMore
Yahoo!ショッピング
LS-VL

楽天市場
Amazon


初期化
ハックの記録
LinkStation/玄箱 をハックしよう

LS-AVL/A, LS-WVL, LS-WXL 値下げ

Copyright (C) 2003-2010 Yasunari Yamashita. All Rights Reserved.
yasunari @ yamasita.jp 山下康成@京都府向日市