ZFS: 创建池

前两天刚把 FreeBSD 安装好,接下来准备学习 ZFS 的使用, zfs 文件系统特性网上内容很多,这里不介绍了,这里仅记录 zfs 的简单使用,做个笔记。

实验环境为 FreeBSD 10.0 虚拟机,先创建一块 30 G 的虚拟盘,步骤略。

1 创建 zpool

1
2
3
4
5
6
root@francs:~  # zpool create zp1 /dev/da0  

root@francs:~ # zpool list
NAME SIZE ALLOC FREE CAP DEDUP HEALTH ALTROOT
zp1 29.8G 134K 29.7G 0% 1.00xONLINE -
zroot 17.9G 5.17G 12.7G 28% 1.00xONLINE -

2 查看池状态

1
2
3
4
5
6
7
8
9
root@francs:/zp1/database # zpool status zp1  
pool: zp1
state: ONLINE
scan: none requested
config:

NAME STATE READ WRITE CKSUM
zp1 ONLINE 0 0 0
da0 ONLINE 0 0 0

3 查看池属性

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
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
root@francs:/zp1/database # zfs get all zp1  
NAME PROPERTY VALUE SOURCE
zp1 type filesystem -
zp1 creation 日 7 6 12:57 2014 -
zp1 used 151M -
zp1 available 29.1G -
zp1 referenced 32.5K -
zp1 compressratio 1.01x -
zp1 mounted yes -
zp1 quota none default
zp1 reservation none default
zp1 recordsize 128K default
zp1 mountpoint /zp1 default
zp1 sharenfs off default
zp1 checksum on default
zp1 compression off default
zp1 atime on default
zp1 devices on default
zp1 execon default
zp1 setuid on default
zp1 readonlyoff default
zp1 jailed off default
zp1 snapdir hidden default
zp1 aclmode discard default
zp1 aclinherit restricted default
zp1 canmount on default
zp1 xattr off temporary
zp1 copies 1 default
zp1 version 5 -
zp1 utf8only off -
zp1 normalization none -
zp1 casesensitivity sensitive -
zp1 vscan off default
zp1 nbmand off default
zp1 sharesmb off default
zp1 refquota none default
zp1 refreservation none default
zp1 primarycache all default
zp1 secondarycache all default
zp1 usedbysnapshots 0 -
zp1 usedbydataset 32.5K -
zp1 usedbychildren 151M -
zp1 usedbyrefreservation 0 -
zp1 logbias latency default
zp1 dedup off default
zp1 mlslabel -
zp1 sync standard default
zp1 refcompressratio 1.00x -
zp1 written 32.5K -
zp1 logicalused 152M -
zp1 logicalreferenced 16.5K -

4 创建具有压缩功能的 zfs 文件系统

1
2
root@francs:~  # zfs create zp1/database  
root@francs:/zp1/database # zfs set compression=gzip zp1/database

5 查看属性

1
2
3
4
root@francs:~  # zfs get -r compression zp1  
NAME PROPERTY VALUE SOURCE
zp1 compression off default
zp1/database compression lz4 local

6 传一个文件,验证是否压缩

1
2
3
4
5
6
7
8
root@francs:/zp1/database # du -k /root/db_francs库恢复日志.sql   
1545 /root/db_francs库恢复日志.sql

root@francs:/zp1/database # cp /root/db_francs库恢复日志.sql .

root@francs:/zp1/database # du -k db_francs库恢复日志.sql
84 db_francs库恢复日志.sql
备注:这里设置了 gzip 压缩方法,还支持 LZJB, ZLE等压缩方法,这里不测试了。

7 写入 /etc/fstab

1
2
3
# Device Mountpoint FStype Options Dump Pass#  
/dev/gpt/swap0 none swap sw 0 0
zp1/database /zp1/database zfs rw,noatime 0 0

备注:这步可选,之前 reboot 后,发现新建的 /zp1 目录会自动 mount。

8 参考

原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/238629.html

(0)
上一篇 2022年2月6日
下一篇 2022年2月6日

相关推荐

发表回复

登录后才能评论