2017年8月7日 星期一

ZFS 一些筆記

有很大多指令 zpool 跟 zfs 很像, 這裡只記幾個我常用的...

建立:
zpool create poolname /dev/sdv2 -m /opt/mount2
-m 指掛載點,而有幾個選擇, none 表不指定掛載點, legacy 表需被動指定掛載點. 如果想要跟過去 ext4fs 掛載方法那樣的話要選 legacy.

設定壓縮為 lz4 (基本上要求速度就是 lz4)
zfs set compression=lz4 poolname

查看壓縮比
zfs get compressratio poolname

導入 (在這之前要先行掛載所有 zfs kernel module)
zpool import poolname
如果找不到:
zpool import -d /dev
如果 /dev 底下的全抓進來:
zpool import -d /dev -a

列出目前有哪些 zfs pool 可用:
zfs list
zpool list

排除某一個 pool
zpool export poolname
#但請注意 export 後 zfs 依舊鎖定這整個 block device.

刪除特定 pool (要先 import )
zpool destroy poolname
#雖然刪除但 block device 依舊被鎖定.

如果要在一個 block device 上讓 zfs 與其它 file system 如 ext4 共存的話, 就必需特別注意 zfs 鎖定 block device 的特性這點, 基本上只要建立過 zfs pool, 所有在其它同一個 block device 上的 partition file system 建立或刪除的動作都會被擋掉, 所以如果要共存, 必需把其它分割區先行建立好, 再建 zfs...

以 /dev/sdv 為例:
fdisk /dev/sdv 先產生 /dev/sdv1, /dev/sdv2 兩個分割區, 先 mke2fs /dev/sdv1 再 zpool create poolname /dev/sdv2

至於 zfs 掛到根目錄, 再說吧...
update 17/08/30 ZFS boot 參考這篇.. http://yoko-hama.blogspot.tw/2017/08/zfs-boot.html

沒有留言: