zfs zpool的创建和删除(实验)
1.Create zpoolbash-3.00# format
Searching for disks...done
AVAILABLE DISK SELECTIONS:
0. c0d0
/pci@0,0/pci-ide@7,1/ide@0/cmdk@0,0
1. c2t0d0
/pci@0,0/pci1000,30@10/sd@0,0
2. c2t1d0
/pci@0,0/pci1000,30@10/sd@1,0
3. c2t2d0
/pci@0,0/pci1000,30@10/sd@2,0
4. c2t3d0
/pci@0,0/pci1000,30@10/sd@3,0
Specify disk (enter its number):
disk c2t0d0 c2t1d0 and c2t2d0 都只分两个区,s0 s1而且大小各为1G
Part Tag Flag Cylinders Size Blocks
0 unassigned wm 1 -512 1024.00MB (512/0/0)2097152
1 unassigned wm 513 - 1019 1014.00MB (507/0/0)2076672
2 backup wu 0 - 1019 1.99GB (1020/0/0) 4177920
bash-3.00# zpool create pool1 /dev/dsk/c2t0d0s2
无效的 vdev 说明
使用 '-f' 覆盖以下错误:
/dev/dsk/c2t0d0s2 overlaps with /dev/dsk/c2t0d0s0
bash-3.00# zpool create -f pool1 /dev/dsk/c2t0d0s2
bash-3.00# zpool list
NAME SIZE USED AVAIL CAPHEALTH ALTROOT
pool1 1.98G 51.5K 1.98G 0%联机 -
bash-3.00# zpool status
池:pool1
状态:ONLINE
清理:未请求
配置:
NAME STATE READ WRITE CKSUM
pool1 联机 0 0 0
c2t0d0s2联机 0 0 0
错误:无已知的数据错误
bash-3.00# zpool add pool1 /dev/dsk/c2t1d0s1
bash-3.00# zpool list
NAME SIZE USED AVAIL CAPHEALTH ALTROOT
pool1 2.97G 184K 2.97G 0%联机 -
bash-3.00# zpool status
池:pool1
状态:ONLINE
清理:未请求
配置:
NAME STATE READ WRITE CKSUM
pool1 联机 0 0 0
c2t0d0s2联机 0 0 0
c2t1d0s1联机 0 0 0
错误:无已知的数据错误
bash-3.00# zfs list
NAME USEDAVAILREFERMOUNTPOINT
pool1 80K3.90G24.5K/pool1
bash-3.00# zpool list
NAME SIZE USED AVAIL CAPHEALTH ALTROOT
pool1 3.96G 298K 3.96G 0%联机 -
bash-3.00# zpool status
池:pool1
状态:ONLINE
清理:未请求
配置:
NAME STATE READ WRITE CKSUM
pool1 联机 0 0 0
c2t0d0s2联机 0 0 0
c2t1d0s1联机 0 0 0
c2t1d0s0联机 0 0 0
错误:无已知的数据错误
bash-3.00# zpool create -f pool2 /dev/dsk/c2t2d0s2
bash-3.00# zpool status
池:pool1
状态:ONLINE
清理:未请求
配置:
NAME STATE READ WRITE CKSUM
pool1 联机 0 0 0
c2t0d0s2联机 0 0 0
c2t1d0s1联机 0 0 0
c2t1d0s0联机 0 0 0
错误:无已知的数据错误
池:pool2
状态:ONLINE
清理:未请求
配置:
NAME STATE READ WRITE CKSUM
pool2 联机 0 0 0
c2t2d0s2联机 0 0 0
错误:无已知的数据错误
bash-3.00# zpool list
NAME SIZE USED AVAIL CAPHEALTH ALTROOT
pool1 3.96G 298K 3.96G 0%联机 -
pool2 1.98G 51.5K 1.98G 0%联机 -
2.Create zfs
bash-3.00# zfs create pool1/zfs1
bash-3.00# zfs create pool1/zfs2
bash-3.00# zfs create pool1/zfs3
bash-3.00# zfs create pool1/zfs3/zfs33
bash-3.00# df -thk -F zfs
文件系统 大小 用了 可用 容量 挂接在
pool1 3.9G 28K 3.9G 1% /pool1
pool2 2.0G 24K 2.0G 1% /pool2
pool1/zfs1 3.9G 24K 3.9G 1% /pool1/zfs1
pool1/zfs2 3.9G 24K 3.9G 1% /pool1/zfs2
pool1/zfs3 3.9G 25K 3.9G 1% /pool1/zfs3
pool1/zfs3/zfs33 3.9G 24K 3.9G 1% /pool1/zfs3/zfs33
bash-3.00# zfs list
NAME USEDAVAILREFERMOUNTPOINT
pool1 204K3.90G28.5K/pool1
pool1/zfs1 24.5K3.90G24.5K/pool1/zfs1
pool1/zfs2 24.5K3.90G24.5K/pool1/zfs2
pool1/zfs3 50K3.90G25.5K/pool1/zfs3
pool1/zfs3/zfs33 24.5K3.90G24.5K/pool1/zfs3/zfs33
pool2 74.5K1.95G24.5K/pool2
3.ZFS set
bash-3.00# zfs list
NAME USEDAVAILREFERMOUNTPOINT
pool1 174K3.90G28.5K/pool1
pool1/zfs1 24.5K3.90G24.5K/pool1/zfs1
pool1/zfs2 24.5K3.90G24.5K/pool1/zfs2
pool1/zfs3 24.5K3.90G24.5K/pool1/zfs3
pool2 74.5K 984M24.5K/pool2
bash-3.00# zfs set quota=999m pool2 (999>984)
bash-3.00# zfs list
NAME USEDAVAILREFERMOUNTPOINT
pool1 174K3.90G28.5K/pool1
pool1/zfs1 24.5K3.90G24.5K/pool1/zfs1
pool1/zfs2 24.5K3.90G24.5K/pool1/zfs2
pool1/zfs3 24.5K3.90G24.5K/pool1/zfs3
pool2 74.5K 984M24.5K/pool2(AVAIL不变,如果quota设置大于pool2本身的值,系统不给出任何提示)
bash-3.00# zfs set quota=99m pool2
bash-3.00# zfs list
NAME USEDAVAILREFERMOUNTPOINT
pool1 174K3.90G28.5K/pool1
pool1/zfs1 24.5K3.90G24.5K/pool1/zfs1
pool1/zfs2 24.5K3.90G24.5K/pool1/zfs2
pool1/zfs3 24.5K3.90G24.5K/pool1/zfs3
pool2 74.5K98.9M24.5K/pool2
bash-3.00# zfs set quota=none pool2(取消限额)
bash-3.00# zfs list
NAME USEDAVAILREFERMOUNTPOINT
pool1 174K3.90G28.5K/pool1
pool1/zfs1 24.5K3.90G24.5K/pool1/zfs1
pool1/zfs2 24.5K3.90G24.5K/pool1/zfs2
pool1/zfs3 24.5K3.90G24.5K/pool1/zfs3
pool2 74.5K 984M24.5K/pool2
bash-3.00# zfs set quota=1g pool1/zfs1
bash-3.00# zfs list
NAME USEDAVAILREFERMOUNTPOINT
pool1 174K3.90G28.5K/pool1
pool1/zfs1 24.5K1024M24.5K/pool1/zfs1
pool1/zfs2 24.5K3.90G24.5K/pool1/zfs2
pool1/zfs3 24.5K3.90G24.5K/pool1/zfs3
pool2 74.5K 984M24.5K/pool2
bash-3.00# zfs set reservation=0.5g pool1/zfs2
bash-3.00# zfs list
NAME USEDAVAILREFERMOUNTPOINT
pool1 512M3.40G28.5K/pool1
pool1/zfs1 24.5K1024M24.5K/pool1/zfs1
pool1/zfs2 24.5K3.90G24.5K/pool1/zfs2
pool1/zfs3 24.5K3.40G24.5K/pool1/zfs3
pool2 74.5K 984M24.5K/pool2
bash-3.00# zfs set compression=on pool1/zfs3
bash-3.00# zfs list
NAME USEDAVAILREFERMOUNTPOINT
pool1 512M3.40G28.5K/pool1
pool1/zfs1 24.5K1024M24.5K/pool1/zfs1
pool1/zfs2 24.5K3.90G24.5K/pool1/zfs2
pool1/zfs3 24.5K3.40G24.5K/pool1/zfs3
pool2 74.5K 984M24.5K/pool2
4.ZFS rename
bash-3.00# zfs rename pool1/zfs1 pool1/zfs11
bash-3.00# zfs list
NAME USEDAVAILREFERMOUNTPOINT
pool1 200M3.70G28.5K/pool1
pool1/zfs11 24.5K 512M24.5K/pool1/zfs11
pool1/zfs2 24.5K3.90G24.5K/pool1/zfs2
pool1/zfs3 50K3.70G25.5K/pool1/zfs3
pool1/zfs3/zfs33 24.5K3.70G24.5K/pool1/zfs3/zfs33
pool2 74.5K1.95G24.5K/pool2
5.zfs destroy
1)-f 参数
bash-3.00# cd /
bash-3.00# cd pool1/zfs2
bash-3.00# pwd
/pool1/zfs2
bash-3.00# zfs destroy pool1/zfs2
cannot unmount '/pool1/zfs2': 设备忙
bash-3.00# zfs destroy -f pool1/zfs2
bash-3.00# zfs list
NAME USEDAVAILREFERMOUNTPOINT
pool1 174K3.90G27.5K/pool1
pool1/zfs11 24.5K 512M24.5K/pool1/zfs11
pool1/zfs3 50K3.90G25.5K/pool1/zfs3
pool1/zfs3/zfs33 24.5K3.90G24.5K/pool1/zfs3/zfs33
pool2 74.5K1.95G24.5K/pool2
或者用bash-3.00# df -hk -F zfs |grep zfs2 (返回为空,证明已经删除)
2)-r参数
bash-3.00# zfs destroy pool1/zfs3
无法销毁 'pool1/zfs3':filesystem 具有子项
使用 '-r' 销毁以下数据集:
pool1/zfs3/zfs33
bash-3.00# zfs destroy -rpool1/zfs3
bash-3.00# zfs list
NAME USEDAVAILREFERMOUNTPOINT
pool1 113K3.90G27.5K/pool1
pool1/zfs11 24.5K 512M24.5K/pool1/zfs11
pool2 74.5K1.95G24.5K/pool2
如果数据集存在快照,则不能销毁该数据集.如
# zfs destroy pool1/zfs1
无法销毁 'pool1/zfs1':filesystem 具有子项
使用 '-r' 销毁以下数据集:
pool1/zfs1@firstp?id=187500
可按提示用-r来销毁
3)-R参数 (还没明白,以后再补上)
6.Zpool destroy
bash-3.00# zpool destroy pool2
bash-3.00# zpool list
NAME SIZE USED AVAIL CAPHEALTH ALTROOT
pool1 3.96G 115K 3.96G 0%联机 -
bash-3.00# zpool status
池:pool1
状态:ONLINE
清理:未请求
配置:
NAME STATE READ WRITE CKSUM
pool1 联机 0 0 0
c2t0d0s2联机 0 0 0
c2t1d0s1联机 0 0 0
c2t1d0s0联机 0 0 0
错误:无已知的数据错误
bash-3.00# zpool destroy pool1
bash-3.00# zpool status
没有可用的池
bash-3.00# zpool list
没有可用的池
PS.第三步有关于zfs set 中的数据和其它的几个步骤中的数据有点出入,是因为是两次实验取的数据,但不影响。
本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u/26090/showart_325086.html
页:
[1]