2012年7月25日水曜日

【.tested】Century製 eSATA/USB IF搭載 SATAディスクケース (裸族の集合住宅 USB3.0&eSATA CRSJ35EU3) [AX3][A6]


ma2shitaです
Century製 eSATA/USB IF搭載 SATAディスクケース「裸族の集合住宅 USB3.0&eSATA CRSJ35EU3」の動作検証を、OpenBlocks AX3および、OpenBlocks A6上で行いました。
Special Thanks @kno2502

概要

AX3では、eSATA/USBによる接続を検証しました。また、"Port Multiplier(ポート マルチプライヤ)"の対応状況も検証しました。
A6では、USBによる接続を検証しました。

結論

AX3 = eSATA/USBそれぞれ、問題無く動作します。USBは2.0認識、複数デバイス利用OK。eSATAもPort Multiplierによる複数デバイス利用OK。sdデバイスとして認識されます。
A6 = 問題無く動作します。USBは2.0認識、複数デバイス利用OK。sdデバイスとして認識されます。
OBDN技術ブログによる動作検証は、該当するハードウェア・ソフトウェアの動作を保証およびサポートを行うものではありません。詳しくは周辺機器動作検証に関してをご覧ください。
内容に関するご指摘などありましたら、ブログ記事の担当までご連絡下さい。

裸族の集合住宅 USB3.0&eSATA CRSJ35EU3について

SATA形式のHDDを四台まで搭載可能なコンシューマ向けHDDケース。USB 3.0やeSATAといった高速転送I/Fを搭載しているのがウリです。

[写真1: 本体]

検証環境

OpenBlocks AX3/4 (Debian 6.0.5 / kernel 3.0.6)
OpenBlocks A6 (Debian 6.0.5 / kernel 2.6.31)

使用方法

eSATAもしくはUSBのポートに挿すだけです。USBについては、AX3/A6共にUSB2.0認識となりました。

[写真2: OpenBlocks AX3とCRSJ35EU3をeSATAで接続しているところ]

AX3のeSATAによる認識

eSATAポートに接続すると、Port Multiplierによって各HDDが個別に認識することが可能となります。
# dmesg
~snip~
ata2: exception Emask 0x10 SAct 0x0 SErr 0x4190002 action 0xe frozen
ata2: edma_err_cause=00000010 pp_flags=00000000, dev connect
ata2: SError: { RecovComm PHYRdyChg 10B8B Dispar DevExch }
ata2: hard resetting link
ata2: link is slow to respond, please be patient (ready=0)
ata2: SRST failed (errno=-16)
ata2: hard resetting link
ata2: SATA link up 3.0 Gbps (SStatus 123 SControl F300)
ata2.15: Port Multiplier 1.2, 0x197b:0x0325 r0, 5 ports, feat 0x5/0xf
ata2.00: hard resetting link
ata2.01: hard resetting link
ata2.02: hard resetting link
ata2.03: hard resetting link
ata2.04: hard resetting link
ata2.04: failed to resume link (SControl 0)
ata2.00: ATA-8: WDC WD20EARS-00MVWB0, 51.0AB51, max UDMA/133
ata2.00: 3907029168 sectors, multi 0: LBA48 NCQ (depth 31/32)
ata2.00: configured for UDMA/133
ata2.01: ATA-8: WDC WD20EARS-00S8B1, 80.00A80, max UDMA/133
ata2.01: 3907029168 sectors, multi 0: LBA48 NCQ (depth 31/32)
ata2.01: configured for UDMA/133
ata2.02: ATA-8: WDC WD20EARS-00MVWB0, 51.0AB51, max UDMA/133
ata2.02: 3907029168 sectors, multi 0: LBA48 NCQ (depth 31/32)
ata2.02: configured for UDMA/133
ata2.03: ATA-8: WDC WD20EARS-00MVWB0, 51.0AB51, max UDMA/133
ata2.03: 3907029168 sectors, multi 0: LBA48 NCQ (depth 31/32)
ata2.03: configured for UDMA/133
ata2: EH complete
scsi 1:0:0:0: Direct-Access     ATA      WDC WD20EARS-00M 51.0 PQ: 0 ANSI: 5
sd 1:0:0:0: [sdb] 3907029168 512-byte logical blocks: (2.00 TB/1.81 TiB)
scsi 1:1:0:0: Direct-Access     ATA      WDC WD20EARS-00S 80.0 PQ: 0 ANSI: 5
sd 1:1:0:0: [sdc] 3907029168 512-byte logical blocks: (2.00 TB/1.81 TiB)
sd 1:1:0:0: [sdc] Write Protect is off
sd 1:1:0:0: [sdc] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA
scsi 1:2:0:0: Direct-Access     ATA      WDC WD20EARS-00M 51.0 PQ: 0 ANSI: 5
sd 1:2:0:0: [sdd] 3907029168 512-byte logical blocks: (2.00 TB/1.81 TiB)
sd 1:2:0:0: [sdd] Write Protect is off
sd 1:2:0:0: [sdd] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA
scsi 1:3:0:0: Direct-Access     ATA      WDC WD20EARS-00M 51.0 PQ: 0 ANSI: 5
sd 1:3:0:0: [sde] 3907029168 512-byte logical blocks: (2.00 TB/1.81 TiB)
sd 1:3:0:0: [sde] Write Protect is off
sd 1:3:0:0: [sde] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA
 sdc: unknown partition table
 sdd: unknown partition table
 sde: unknown partition table
sd 1:3:0:0: [sde] Attached SCSI disk
sd 1:1:0:0: [sdc] Attached SCSI disk
sd 1:2:0:0: [sdd] Attached SCSI disk
sd 1:0:0:0: [sdb] Write Protect is off
sd 1:0:0:0: [sdb] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA
 sdb: unknown partition table
sd 1:0:0:0: [sdb] Attached SCSI disk
※ 四台のHDDがそれぞれ /dev/sdb /dev/sdc /dev/sdd /dev/sde と認識されています。ちなみに /dev/sda は内蔵のSSDです。

AX3およびA6のUSBによる認識

USB接続したときのdmesgも記載しておきます。sdデバイスで認識されていますね。
# dmesg
~snip~
usb 1-1: new high speed USB device number 2 using ehci_marvell
usb 1-1: New USB device found, idVendor=152d, idProduct=0551
usb 1-1: New USB device strings: Mfr=1, Product=2, SerialNumber=5
usb 1-1: Product: USB to ATA/ATAPI Bridge
usb 1-1: Manufacturer: JMicron
usb 1-1: SerialNumber: DAA3751703FF
scsi2 : usb-storage 1-1:1.0
usbcore: registered new interface driver uas
scsi 2:0:0:0: Direct-Access     WDC WD20 EARS-00MVWB0          PQ: 0 ANSI: 2 CCS
scsi 2:0:0:1: Direct-Access     WDC WD20 EARS-00S8B1           PQ: 0 ANSI: 2 CCS
sd 2:0:0:0: [sdb] 3907029168 512-byte logical blocks: (2.00 TB/1.81 TiB)
sd 2:0:0:1: [sdc] 3907029168 512-byte logical blocks: (2.00 TB/1.81 TiB)
sd 2:0:0:1: [sdc] Write Protect is off
sd 2:0:0:1: [sdc] No Caching mode page present
sd 2:0:0:1: [sdc] Assuming drive cache: write through
sd 2:0:0:1: [sdc] No Caching mode page present
sd 2:0:0:1: [sdc] Assuming drive cache: write through
 sdc: unknown partition table
scsi 2:0:0:2: Direct-Access     WDC WD20 EARS-00MVWB0          PQ: 0 ANSI: 2 CCS
sd 2:0:0:0: [sdb] Write Protect is off
sd 2:0:0:2: [sdd] 3907029168 512-byte logical blocks: (2.00 TB/1.81 TiB)
sd 2:0:0:2: [sdd] Write Protect is off
sd 2:0:0:2: [sdd] No Caching mode page present
sd 2:0:0:2: [sdd] Assuming drive cache: write through
sd 2:0:0:1: [sdc] No Caching mode page present
sd 2:0:0:1: [sdc] Assuming drive cache: write through
sd 2:0:0:1: [sdc] Attached SCSI disk
sd 2:0:0:2: [sdd] No Caching mode page present
sd 2:0:0:2: [sdd] Assuming drive cache: write through
 sdd: unknown partition table
scsi 2:0:0:3: Direct-Access     WDC WD20 EARS-00MVWB0          PQ: 0 ANSI: 2 CCS
sd 2:0:0:0: [sdb] No Caching mode page present
sd 2:0:0:0: [sdb] Assuming drive cache: write through
sd 2:0:0:3: [sde] 3907029168 512-byte logical blocks: (2.00 TB/1.81 TiB)
sd 2:0:0:0: [sdb] No Caching mode page present
sd 2:0:0:3: [sde] Write Protect is off
sd 2:0:0:0: [sdb] Assuming drive cache: write through
sd 2:0:0:2: [sdd] No Caching mode page present
sd 2:0:0:2: [sdd] Assuming drive cache: write through
sd 2:0:0:2: [sdd] Attached SCSI disk
sd 2:0:0:3: [sde] No Caching mode page present
sd 2:0:0:3: [sde] Assuming drive cache: write through
 sdb: unknown partition table
sd 2:0:0:3: [sde] No Caching mode page present
sd 2:0:0:3: [sde] Assuming drive cache: write through
 sde: unknown partition table
sd 2:0:0:0: [sdb] No Caching mode page present
sd 2:0:0:0: [sdb] Assuming drive cache: write through
sd 2:0:0:0: [sdb] Attached SCSI disk
sd 2:0:0:3: [sde] No Caching mode page present
sd 2:0:0:3: [sde] Assuming drive cache: write through
sd 2:0:0:3: [sde] Attached SCSI disk

MDサブシステムによるソフトウェアRAID構成

複数デバイスが認識できるようになっているので、せっかくですからソフトウェアRAIDを構成してみることにしてみましょう。
注意: A6については、執筆時点のkernelにMDサブシステムが搭載されていないため、ソフトウェアRAID構築は不可です。

mdadmのインストール

# aptitude -R install mdadm
mdadmのインストール時にMD arrays needed for the root file system:と聞かれますが、デフォルトのallとしました。

RAID1化

/dev/sdb/dev/sdcの二台でRAID1(mirror)を構成してみます。
まずパーティションの準備から (ボールドは入力です)
# fdisk /dev/sdb
GNU Fdisk 1.2.4
Copyright (C) 1998 - 2006 Free Software Foundation, Inc.
This program is free software, covered by the GNU General Public License.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel
Building a new DOS disklabel. Changes will remain in memory only,
until you decide to write them. After that, of course, the previous
content won't be recoverable.

Using /dev/sdb
Command (m for help): p                                                  

Disk /dev/sdb: 2000 GB, 2000396321280 bytes
255 heads, 63 sectors/track, 243201 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

   Device Boot      Start         End      Blocks   Id  System 
Command (m for help): n                                                   
Partition type                                                            
   e   extended
   p   primary partition (1-4)
p
First cylinder  (default 0cyl): [enter]
Last cylinder or +size or +sizeMB or +sizeKB  (default 243200cyl): [enter]
Command (m for help): w                                                   
Information: Don't forget to update /etc/fstab, if necessary.             


Writing all changes to /dev/sdb.
# fdisk /dev/sdc
GNU Fdisk 1.2.4
Copyright (C) 1998 - 2006 Free Software Foundation, Inc.
This program is free software, covered by the GNU General Public License.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel
Building a new DOS disklabel. Changes will remain in memory only,
until you decide to write them. After that, of course, the previous
content won't be recoverable.

Using /dev/sdc
Command (m for help): p                                                  

Disk /dev/sdc: 2000 GB, 2000396321280 bytes
255 heads, 63 sectors/track, 243201 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

   Device Boot      Start         End      Blocks   Id  System 
Command (m for help): n                                                   
Partition type                                                            
   e   extended
   p   primary partition (1-4)
p
First cylinder  (default 0cyl): [enter]
Last cylinder or +size or +sizeMB or +sizeKB  (default 243200cyl): [enter]
Command (m for help): w                                                   
Information: Don't forget to update /etc/fstab, if necessary.             


Writing all changes to /dev/sdc.
次はミラーを組みます。
# mdadm --create /dev/md0 --level=1 --raid-devices=2 /dev/sdb1 /dev/sdc1
mdadm: Note: this array has metadata at the start and
    may not be suitable as a boot device.  If you plan to
    store '/boot' on this device please ensure that
    your boot-loader understands md/v1.x metadata, or use
    --metadata=0.90
Continue creating array? yes
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md0 started.
組めているか確認しましょう。
# mdadm --detail /dev/md0
/dev/md0:
        Version : 1.2
  Creation Time : Tue Jul 24 13:47:56 2012
     Raid Level : raid1
     Array Size : 1953510841 (1863.01 GiB 2000.40 GB)
  Used Dev Size : 1953510841 (1863.01 GiB 2000.40 GB)
   Raid Devices : 2
  Total Devices : 2
    Persistence : Superblock is persistent

    Update Time : Tue Jul 24 13:47:56 2012
          State : clean, resyncing
 Active Devices : 2
Working Devices : 2
 Failed Devices : 0
  Spare Devices : 0

 Rebuild Status : 0% complete

           Name : obsax3:0  (local to host obsax3)
           UUID : 3ed5f432:b3e058cf:8a9295f2:7fe30fc7
         Events : 0

    Number   Major   Minor   RaidDevice State
       0       8       17        0      active sync   /dev/sdb1
       1       8       33        1      active sync   /dev/sdc1
resync中であることが表示され、無事組めている事が確認できました。
あとは、mkfs等でファイルシステムを作ってマウントするだけです。
# mkfs.ext4 /dev/md0
mke2fs 1.41.12 (17-May-2010)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
122101760 inodes, 488377710 blocks
24418885 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=0
14905 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks: 
    32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208, 
    4096000, 7962624, 11239424, 20480000, 23887872, 71663616, 78675968, 
    102400000, 214990848

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

This filesystem will be automatically checked every 28 mounts or
180 days, whichever comes first.  Use tune2fs -c or -i to override.
# mount -t ext4 /dev/md0 /mnt
# ls -laF /mnt
total 21
drwxr-xr-x  3 root root  4096 Jul 24 14:08 ./
drwxr-xr-x 22 root root  1024 Jul 24 13:23 ../
drwx------  2 root root 16384 Jul 24 14:08 lost+found/

mdデバイスの停止方法

mdデバイスの停止方法をメモ程度に。
# umount /mnt
# mdadm --manage /dev/md0 --stop
mdadm: stopped /dev/md0
マウント中に--stopすると
# mdadm --manage /dev/md0 --stop
mdadm: failed to stop array /dev/md0: Device or resource busy
Perhaps a running process, mounted filesystem or active volume group?
以上のように失敗するので、安心(?)です。

パーティションテーブル削除

一度パーティションテーブルを作成すると、fdiskでは完全に削除することができませんので、パーティションテーブル自体の削除方法をメモ程度に。
/dev/sdbのパーティションテーブルを削除する
# dd if=/dev/zero of=/dev/sdb bs=512 count=1
1+0 records in
1+0 records out
512 bytes (512 B) copied, 0.00202288 s, 253 kB/s
  • 注意1: マウント中だろうが関係なく問答無用で削除されてしまいます。対象デバイスの確認をするようにしてください。
  • 注意2: ディスクの先頭512byteをつぶしただけです。データーは残っています。

あとがき

AX3にはeSATAが1ポートしかありませんが、Port Multiplierのおかげで用途に幅広さが出てきます。
こうなると「ZFSが使えたらなぁ」と個人的に思うのですが…この辺はbtrfs待ちってことになるのでしょうか。
速度面や安定性については未検証です。コンシューマー向けですから電源とか不安かもしれません。実戦投入には、詳細な検証が必要でしょう。

[PR]

0 件のコメント:

コメントを投稿