Mac OS X 資料一覧

ZFSストレージプール作成(単一パーティション)

2008/4/22更新

対応バージョン: 111

単一パーティションを使ってZFSストレージプールを作成する手順を示す。

ここでは以前Linux用に使用していた以下のディスクを使用する。

% diskutil list
:
/dev/disk3
   #:                   TYPE NAME         SIZE       IDENTIFIER
   0: FDisk_partition_scheme             *38.2 Gi    disk3
   1:                  Linux              1.9 Gi     disk3s1
   2:                  Linux              36.3 Gi    disk3s2

パーティショニング

パーティションテーブルはGPT(GUID Partition Table)とし、ディスク全体をZFS用に使用する。

% sudo diskutil partitiondisk /dev/disk3 GPTFormat ZFS %noformat% 100%

Started partitioning on disk disk3
Creating partition map
[ + 0%..10%..20%..30%..40%..50%..60%..70%..80%..90%..100% ]
Finished partitioning on disk disk3
/dev/disk3
   #:                   TYPE NAME         SIZE       IDENTIFIER
   0:  GUID_partition_scheme             *38.2 Gi    disk3
   1:                    EFI              200.0 Mi   disk3s1
   2:                    ZFS              37.9 Gi    disk3s2

ストレージプール作成

ZFS用パーティションにストレージプールを作成する。

% sudo zpool create foo disk3s2 

% zpool list 
NAME      SIZE  USED  AVAIL  CAP  HEALTH  ALTROOT
foo      37.8G  360K  37.7G   0%  ONLINE  -

% zpool status foo
  pool: foo
 state: ONLINE
status: The pool is formatted using an older on-disk format. The pool can
        still be used, but some features are unavailable.
action: Upgrade the pool using 'zpool upgrade'.  Once this is done, the
        pool will no longer be accessible on older software versions.
 scrub: none requested
config:

        NAME        STATE     READ WRITE CKSUM
        foo         ONLINE       0     0     0
          disk3s2   ONLINE       0     0     0

errors: No known data errors

これでストレージプールが/Volumes/fooにマウントされファイルシステムとして使用可能になる。

% df -h /Volumes/foo
Filesystem   Size   Used  Avail Capacity  Mounted on
foo          37Gi  269Ki   37Gi     1%    /Volumes/foo

アンマウントする時は以下のようにする。

% sudo zfs unmount [-f] foo

さらに上記プールから別のプールを切り出すこともできる。

% sudo zfs create foo/bar
% df -h -t zfs
Filesystem   Size   Used  Avail Capacity  Mounted on
foo          37Gi  269Ki   37Gi     1%    /Volumes/foo
foo/bar      37Gi   19Ki   37Gi     1%    /Volumes/foo/bar

こうすることで同じストレージプール内に独立したファイルシステムを生成することができる。

また、マウントポイントをデフォルト以外の場所にしたい場合は以下のようにする。

% sudo mkdir /Users/bar
% sudo zfs set mountpoint=/Users/bar foo/bar
% sudo zfs mount foo/bar
% df -h -t zfs
Filesystem   Size   Used  Avail Capacity  Mounted on
foo          37Gi  578Ki   37Gi     1%    /Volumes/foo
foo/bar      37Gi   22Ki   37Gi     1%    /Users/bar

関連資料・記事