ZFSのLinux実装には、FUSE版もありますが、今使用するならやっぱりカーネルモジュール版でしょう。
ということで、ZFS on Linuxから最新版のspl-0.6.0-rc8とzfs-0.6.0.rc8を使用しました。
インストールは、SPLとZFSに書かれているとおりで問題なしです。
インストール後は、こんな感じになります。
1 2 3 4 5 6 7 8 9 10 | $ grep zfs /proc/filesystems nodev zfs $ lsmod |grep -E '(zfs|spl)' zfs 1075574 3 zcommon 42648 1 zfs znvpair 47487 2 zfs,zcommon zavl 6925 1 zfs zunicode 323120 1 zfs spl 256427 5 zfs,zcommon,znvpair,zavl,zunicode zlib_deflate 21629 1 spl |
パーティション情報を確認すると、こんな感じになります。
1 2 3 4 5 6 7 8 9 10 | # parted -l Error: /dev/sda: unrecognised disk label Error: /dev/sdb: unrecognised disk label Model: ATA VB0250EAVER (scsi) Disk /dev/sdc: 250GB Sector size (logical/physical): 512B/512B Partition Table: msdos ~ 略 ~ |
/dev/sdaと/dev/sdbをZFSで使用するため、次のようにGNU partedでディスクラベルとパーティションを設定します。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 | # parted /dev/sda GNU Parted 2.1 Using /dev/sda Welcome to GNU Parted! Type 'help' to view a list of commands. (parted) mklabel gpt (pqrted) print Model: ATA ST3000DM001-9YN1 (scsi) Disk /dev/sda: 3001GB Sector size (logical/physical): 512B/4096B Partition Table: gpt Number Start End Size File system Name Flags (parted) mkpart primary 1M 3000GB (parted) print Model: ATA ST3000DM001-9YN1 (scsi) Disk /dev/sda: 3001GB Sector size (logical/physical): 512B/4096B Partition Table: gpt Number Start End Size File system Name Flags 1 1049kB 3000GB 3000GB primary (parted) quit Information: You may need to update /etc/fstab. # |
さて、いよいよZFSの設定です。まずは、ストレージプールを作成します。
まずは、/dev/disk/by-id配下を参照して、/dev/sda1にリンクされている名前を調べます。
1 2 3 4 5 | $ cd /dev/disk/by-id $ ls -l scsi*part1 ~ scsi-SATA_ST3000DM001-9YN_ABCD1234-part1 -> ../../sda1 ~ scsi-SATA_ST3000DM001-9YN_EFGH5678-part1 -> ../../sdb1 ~ scsi-SATA_VB0250EAVER_IJKL9012-part1 -> ../../sdc1 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | # zpool create dtpool scsi-SATA_ST3000DM001-9YN_ABCD1234-part1 # zpool list NAME SIZE ALLOC FREE CAP DEDUP HEALTH ALTROOT dtpool 2.72T 79K 2.72T 0% 1.00x ONLINE - # zpool status pool: dtpool state: ONLINE scan: none requested config: NAME STATE READ WRITE CKSUM dtpool ONLINE 0 0 0 scsi-SATA_ST3000DM001-9YN_ABCD1234-part1 ONLINE 0 0 0 errors: No known data errors |
ストレージプールには、tankという名前がよく使われるようです。
次に、mirrorで使用するため、次のように/dev/sdb1をストレージプールのsda1にアタッチします。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | # zpool attach dtpool scsi-SATA_ST3000DM001-9YN_ABCD1234-part1 scsi-SATA_ST3000DM001-9YN_EFGH5678-part1 # zpool list NAME SIZE ALLOC FREE CAP DEDUP HEALTH ALTROOT dtpool 2.72T 136K 2.72T 0% 1.00x ONLINE - # zpool status pool: dtpool state: ONLINE scan: resilvered 85.5K in 0h0m with 0 errors on Sat May 12 00:11:40 2012 config: NAME STATE READ WRITE CKSUM dtpool ONLINE 0 0 0 mirror-0 ONLINE 0 0 0 scsi-SATA_ST3000DM001-9YN_ABCD1234-part1 ONLINE 0 0 0 scsi-SATA_ST3000DM001-9YN_EFGH5678-part1 ONLINE 0 0 0 errors: No known data errors |
ストレージプールがマウントされていることを確認できます。
1 2 3 | # df -h : dtpool 2.7T 0 2.7T 0% /dtpool |
今回は、ワンセグ野郎のTSデータ格納用の領域を作成することにします。
1 | # zfs create dtpool/ts |
1 2 3 4 5 6 7 8 9 10 11 | # mkdir /data # zfs set mountpoint=/data/ts dtpool/ts # df -h : dtpool 2.7T 128K 2.7T 1% /dtpool # # zfs mount -a # df -h : dtpool 2.7T 128K 2.7T 1% /dtpool dtpool/ts 2.7T 128K 2.7T 1% /data/ts |
zpool、zfsコマンドは長くても数十秒でプロンプトが返ってくるし、mkfsする必要もないので楽々です。
初めて使うファイルシステムなので、少し実験してからデータ移行しようと思います。
0 件のコメント:
コメントを投稿