4TB HDDでzfsを使う

4TB HDDを初めて使用するメモ。

  1. デバイス名を確認する
    # camcontrol devlist
  2. GPTテーブル作成
    # gpart create -s GPT /dev/ada2
    # gpart show /dev/ada2
    =>        34 7814037101 ada2 GPT (3.6T)
              34 7814037101 - free - (3.6T)
  3. パーティション作成
    # gpart add -a 4k -t freebsd-zfs /dev/ada2
    # gpart show /dev/ada2
    =>        34  7814037101  ada2  GPT  (3.6T)
              34           6        - free -  (3.0K)
              40  7814037088     1  freebsd-zfs  (3.6T)
      7814037128           7        - free -  (3.5K)

    freebsd-zfs の開始位置が 40 から始まっていれば 4K のアライメントが取れている

  4. gnopで4KB透過デバイスを作成
    # gnop create -S 4096 /dev/ada2p1
    # gnop status
          Name  Status  Components
    ada2p1.nop     N/A  ada2p1
    # gnop list ada2p1.nop
    Geom name: ada2p1.nop
    WroteBytes: 0
    ReadBytes: 135168
    Writes: 0
    Reads: 22
    Error: 5
    WriteFailProb: 0
    ReadFailProb: 0
    Offset: 0
    Providers:
    1. Name: ada2p1.nop
       Mediasize: 4000786989056 (3.6T)
       Sectorsize: 4096
       Mode: r0w0e0
    Consumers:
    1. Name: ada2p1
       Mediasize: 4000786989056 (3.6T)
       Sectorsize: 512
       Stripesize: 4096
       Stripeoffset: 0
       Mode: r0w0e0
  5. ada3, ada4, ada5 についても同様にする
  6. zfs のpool作成
    # zpool create zpool6 raidz ada2p1.nop ada3p1.nop ada4p1.nop ada5p1.nop
    # zdb -C zpool6 | grep ashift
                    ashift: 12
  7. gnopデバイスを削除
    # zpool export zpool6
    # gnop destroy ada2p1.nop ada3p1.nop ada4p1.nop ada5p1.nop
    # zpool import zpool6
    # zdb -C zpool6 | grep ashift
                    ashift: 12
カテゴリー: FreeBSD パーマリンク

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です