<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>UI 網站 &#187; zfs</title>
	<atom:link href="http://ui.idv.tw/wordpress/?feed=rss2&#038;tag=zfs" rel="self" type="application/rss+xml" />
	<link>https://ui.idv.tw/wordpress</link>
	<description>個人雜亂筆記用</description>
	<lastBuildDate>Wed, 15 Oct 2025 10:08:33 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.5</generator>
		<item>
		<title>zfs send &#124;zfs rcecive</title>
		<link>https://ui.idv.tw/wordpress/?p=764</link>
		<comments>https://ui.idv.tw/wordpress/?p=764#comments</comments>
		<pubDate>Wed, 19 Jan 2022 13:49:28 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[未分類]]></category>
		<category><![CDATA[zfs]]></category>

		<guid isPermaLink="false">http://ui.idv.tw/wordpress/?p=764</guid>
		<description><![CDATA[zfs send -v /zsysvol/vm-100-disk-0 &#124;zfs recv zbackup/vmbak/vm-100-disk-0 zfs send -v 詳細傳輸內容 zfs send -i 增量 但遠端目的dataset文件系統若已經存在，為避免將遠端覆蓋zfs會自動停止傳送，可加上 -F 參數強制 覆蓋 zfs receive -u 用-u选项表示zfs receive完成后不挂载恢复的文件 &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;- 保存 ZFS 快照 zfs send tank/dana@040706 > /dev/rmt/0 或 zfs send pool/fs@snap &#124; gzip > &#8230; <a href="https://ui.idv.tw/wordpress/?p=764">繼續閱讀 <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>zfs send -v /zsysvol/vm-100-disk-0 |zfs recv zbackup/vmbak/vm-100-disk-0<br />
zfs send -v 詳細傳輸內容<br />
zfs send -i 增量<br />
但遠端目的dataset文件系統若已經存在，為避免將遠端覆蓋zfs會自動停止傳送，可加上 -F 參數強制 覆蓋</p>
<p>zfs receive -u 用-u选项表示zfs receive完成后不挂载恢复的文件<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
保存 ZFS 快照<br />
zfs send tank/dana@040706 > /dev/rmt/0<br />
或<br />
 zfs send pool/fs@snap | gzip > backupfile.gz<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
恢復 ZFS 快照<br />
 zfs send tank/gozer@040706 > /dev/rmt/0<br />
### zfs receive tank/gozer2@today < /dev/rmt/0<br />
_ zfs rename tank/gozer tank/gozer.old<br />
_zfs rename tank/gozer2 tank/gozer<br />
您可以使用zfs recv作為zfs receive命令的別名。<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;<br />
還原增量文件系統快照時，必須首先回滾最近的快照。此外，目標文件系統必須存在。在以下示例中，將tank/dana恢復之前的增量保存副本。</p>
<p>#zfs rollback tank/dana@040706<br />
無法回滾到 &#8216;tank/ dana@040706 &#8216;: 存在更多最近的快照<br />
使用“-r”強制刪除以下快照：<br />
tank/ dana@now<br />
# zfs rollback -r tank/dana@040706/<br />
#zfs recv tank/dana < /dev/rmt/0<br />
在增量恢復過程中，文件系統被卸載並且無法訪問。<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
ZFS 數據的遠程複製<br />
您可以使用zfs send和zfs recv命令將快照流表示從一個系統遠程複製到另一個系統。例如：<br />
# zfs send tank/cindy@today | ssh newsys zfs recv sandbox/restfs@today</p>
]]></content:encoded>
			<wfw:commentRss>https://ui.idv.tw/wordpress/?feed=rss2&#038;p=764</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>options zfs zfs_arc</title>
		<link>https://ui.idv.tw/wordpress/?p=753</link>
		<comments>https://ui.idv.tw/wordpress/?p=753#comments</comments>
		<pubDate>Thu, 13 Jan 2022 17:01:25 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[未分類]]></category>
		<category><![CDATA[zfs]]></category>

		<guid isPermaLink="false">http://ui.idv.tw/wordpress/?p=753</guid>
		<description><![CDATA[#!/bin/bash MEM=$(free -b&#124;grep Mem&#124;awk -F" " &#8216;{print $2}&#8217;) MEM_2=$(($MEM/2)) #MEM_MAX=$(free -b&#124;grep Mem&#124;awk -F" " &#8216;{print $2}&#8217;) MEM_MAX=$MEM_2 echo "MEM_MAX"=$MEM_MAX MEM_MIN=$(($MEM_MAX &#8211; 1)) echo "MEM_MIN"=$MEM_MIN echo "options zfs zfs_arc_max=$MEM_MAX">/etc/modprobe.d/zfs.conf echo "options zfs zfs_arc_mix=$MEM_MIN">>/etc/modprobe.d/zfs.conf echo "$MEM_MAX" >/sys/module/zfs/parameters/zfs_arc_max echo "$MEM_MIN" >/sys/module/zfs/parameters/zfs_arc_min]]></description>
			<content:encoded><![CDATA[<p>  #!/bin/bash<br />
   MEM=$(free -b|grep Mem|awk -F" " &#8216;{print $2}&#8217;)<br />
   MEM_2=$(($MEM/2))</p>
<p>   #MEM_MAX=$(free -b|grep Mem|awk -F" " &#8216;{print $2}&#8217;)<br />
   MEM_MAX=$MEM_2<br />
   echo "MEM_MAX"=$MEM_MAX<br />
   MEM_MIN=$(($MEM_MAX &#8211; 1))<br />
  echo "MEM_MIN"=$MEM_MIN</p>
<p>  echo "options zfs zfs_arc_max=$MEM_MAX">/etc/modprobe.d/zfs.conf<br />
  echo "options zfs zfs_arc_mix=$MEM_MIN">>/etc/modprobe.d/zfs.conf<br />
  echo "$MEM_MAX" >/sys/module/zfs/parameters/zfs_arc_max<br />
  echo "$MEM_MIN" >/sys/module/zfs/parameters/zfs_arc_min</p>
]]></content:encoded>
			<wfw:commentRss>https://ui.idv.tw/wordpress/?feed=rss2&#038;p=753</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>rockey linux install openzfs</title>
		<link>https://ui.idv.tw/wordpress/?p=746</link>
		<comments>https://ui.idv.tw/wordpress/?p=746#comments</comments>
		<pubDate>Sun, 09 Jan 2022 04:52:09 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[未分類]]></category>
		<category><![CDATA[zfs]]></category>

		<guid isPermaLink="false">http://ui.idv.tw/wordpress/?p=746</guid>
		<description><![CDATA[https://gnulinux.ro/blog-page-8441-install-zfs-in-rhel-centos-alma-linux-rocky-linux 1. dnf install https://zfsonlinux.org/epel/zfs-release.el8_4.noarch.rpm 2. dnf install epel-release dnf install kernel-devel zfs 3. sh -c "echo zfs> /etc/modules-load.d/zfs.conf"]]></description>
			<content:encoded><![CDATA[<p>https://gnulinux.ro/blog-page-8441-install-zfs-in-rhel-centos-alma-linux-rocky-linux</p>
<p>1.<br />
dnf install https://zfsonlinux.org/epel/zfs-release.el8_4.noarch.rpm</p>
<p>2.<br />
dnf install epel-release<br />
dnf install kernel-devel zfs</p>
<p>3.<br />
sh -c "echo zfs> /etc/modules-load.d/zfs.conf"</p>
]]></content:encoded>
			<wfw:commentRss>https://ui.idv.tw/wordpress/?feed=rss2&#038;p=746</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>zfs mount</title>
		<link>https://ui.idv.tw/wordpress/?p=733</link>
		<comments>https://ui.idv.tw/wordpress/?p=733#comments</comments>
		<pubDate>Fri, 12 Nov 2021 13:40:04 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[未分類]]></category>
		<category><![CDATA[zfs]]></category>

		<guid isPermaLink="false">http://ui.idv.tw/wordpress/?p=733</guid>
		<description><![CDATA[自動掛載 zfs get mountpoint pool/filesystem 檢查 zfs get mountpoint pool/filesystem 或 zfs get mountpoint=/mnt p;ool/filesystem 傳統掛載 zfs set mountpoint=legacy pool/filesystem mount -F zfs pool /mnt]]></description>
			<content:encoded><![CDATA[<p>自動掛載<br />
zfs get mountpoint pool/filesystem<br />
檢查<br />
zfs get mountpoint pool/filesystem<br />
或<br />
zfs get mountpoint=/mnt p;ool/filesystem</p>
<p>傳統掛載<br />
zfs set mountpoint=legacy pool/filesystem<br />
mount -F zfs pool /mnt</p>
]]></content:encoded>
			<wfw:commentRss>https://ui.idv.tw/wordpress/?feed=rss2&#038;p=733</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>zfs 快速查詢</title>
		<link>https://ui.idv.tw/wordpress/?p=497</link>
		<comments>https://ui.idv.tw/wordpress/?p=497#comments</comments>
		<pubDate>Fri, 23 Apr 2021 02:00:40 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[未分類]]></category>
		<category><![CDATA[zfs]]></category>

		<guid isPermaLink="false">http://ui.idv.tw/wordpress/?p=497</guid>
		<description><![CDATA[自建 samba + ZFS (snhpshot快照/任意還原點)檔案伺服器 5-3 認識 zfs格式化 指令 ZFS 建路陣列指令 ZFS 指令 啟用壓縮指令 (proxmox ve主機) 單一硬碟建立 ZFS檔案系統儲存池 zpool create -f -o ashift=12 zfs set compression=lz4 建立 Raid 0 最少1顆以上硬碟 zpool create -f -o ashift=12 &#8230; 資料會平均分配寫入各顆硬碟，若其中一顆硬碟毀損，全部的資料也將會一起毀損。 優點是寫入速度快 zfs set &#8230; <a href="https://ui.idv.tw/wordpress/?p=497">繼續閱讀 <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>自建 samba + ZFS (snhpshot快照/任意還原點)檔案伺服器<br />
5-3 認識 zfs格式化 指令<br />
ZFS 建路陣列指令<br />
ZFS 指令	啟用壓縮指令<br />
(proxmox ve主機)<br />
單一硬碟建立<br />
ZFS檔案系統儲存池	zpool create -f -o ashift=12
<pool-name> <device>	zfs set compression=lz4
<pool-name>
建立 Raid 0<br />
最少1顆以上硬碟	zpool create -f -o ashift=12
<pool-name> <device1> <device2> &#8230;</p>
<p>資料會平均分配寫入各顆硬碟，若其中一顆硬碟毀損，全部的資料也將會一起毀損。<br />
優點是寫入速度快	zfs set compression=lz4
<pool-name>
建立 Raid 1<br />
最少2顆以上硬碟	zpool create -f -o ashift=12
<pool-name> mirror <device1> <device2></p>
<p>建立 Raid1(1+1=1) Mirror 格式，資料會同時寫入兩棵 HD。 (這是最佳建議方式，安全性也較高)	zfs set compression=lz4
<pool-name>
建立 Raid 10<br />
最少4顆以上硬碟	zpool create -f -o ashift=12
<pool-name> mirror <device1> <device2> mirror <device3> <device4>	zfs set compression=lz4
<pool-name>
建立 Raid Z-1<br />
最少3顆以上硬碟	zpool create -f -o ashift=12
<pool-name> raidz1 <device1> <device2> <device3><br />
建立 Raid Z-2<br />
最少4顆以上硬碟	zpool create -f -o ashift=12
<pool-name> raidz2 <device1> <device2> <device3> <device4>	</p>
<p>zfs 的即時壓縮功能(預設是關閉)<br />
主機的 CPU Loading 若效能還有剩餘，可以啟用 zfs compression 功能，<br />
但若效能剛好或不足，則建議使用較低的壓縮效率或關閉即時壓縮功能<br />
debian 主機<br />
compression YES YES on | off | lzjb | gzip | gzip-[1-9] | zle<br />
查看 storage/compressed 檔案目錄屬性<br />
zfs get all storage/compressed</p>
<p>常用指令<br />
ZFS 的 zpool 指令<br />
# 建立 Raid1(1+1=1) Mirror 格式，資料會同時寫入兩棵 HD。<br />
# zpool create storagename mirror /dev/sdb /dev/sdc</p>
<p># df -h # 查看 storage pool 是有已經建立<br />
Filesystem Size Used Avail Capacity Mounted on<br />
pool1            16G  112K   16G    1% /pool1</p>
<p># zpool status<br />
# 查看本機 ZFS 的狀態，這個系統中有一個 pool 名稱為 pool1 是由兩棵代號 sdb 及 sdc 的實體硬碟 mirror 而成<br />
root@debian8:~# zpool status<br />
  pool: pool1<br />
 state: ONLINE<br />
 scrub: none requested<br />
config:</p>
<p>    NAME        STATE     READ WRITE CKSUM<br />
    pool1       ONLINE       0     0     0<br />
      mirror-0  ONLINE       0     0     0<br />
        sdb     ONLINE       0     0     0<br />
        sdc     ONLINE       0     0     0</p>
<p>errors: No known data errors</p>
<p># zpool list<br />
# 查看 pool 的空間使用狀態<br />
root@debian8:~# zpool list<br />
NAME    SIZE  ALLOC   FREE    CAP  DEDUP  HEALTH  ALTROOT<br />
pool1  7.94G   388K  7.94G     0%  1.00x  ONLINE  -</p>
<p># zpool offline pool1 /dev/sdb<br />
# 讓 storage 這個 pool 的 ad2 硬碟暫時離線<br />
root@debian8:~# zpool offline pool1 /dev/sdb</p>
<p># zpool status pool1<br />
# 查看狀態會有 DEGRADED 警告<br />
root@debian8:~# zpool status pool1<br />
  pool: pool1<br />
 state: DEGRADED<br />
status: One or more devices has been taken offline by the administrator.<br />
    Sufficient replicas exist for the pool to continue functioning in a<br />
    degraded state.<br />
action: Online the device using &#8216;zpool online&#8217; or replace the device with<br />
    &#8216;zpool replace&#8217;.<br />
 scrub: none requested<br />
config:</p>
<p>    NAME        STATE     READ WRITE CKSUM<br />
    pool1       DEGRADED     0     0     0<br />
      mirror-0  DEGRADED     0     0     0<br />
        sdb     OFFLINE      0     0     0<br />
        sdc     ONLINE       0     0     0</p>
<p>errors: No known data errors</p>
<p># zpool online pool1 /dev/sdb<br />
# 讓 pool1 這個 pool 的 /dev/sdb 硬碟重新上線<br />
root@debian8:~# zpool online pool1 /dev/sdb</p>
<p># zpool status pool1<br />
# 查看狀態 DEGRADED 警告已解除<br />
root@debian8:~# zpool status pool1<br />
  pool: pool1<br />
 state: ONLINE<br />
 scrub: resilver completed after 0h0m with 0 errors on Sat Jul  1 11:24:41 2017<br />
config:</p>
<p>    NAME        STATE     READ WRITE CKSUM<br />
    pool1       ONLINE       0     0     0<br />
      mirror-0  ONLINE       0     0     0<br />
        sdb     ONLINE       0     0     0  12K resilvered<br />
        sdc     ONLINE       0     0     0</p>
<p>errors: No known data errors</p>
<p># zpool export -f pool1<br />
# 卸除(umount) pool1 這個 pool 參數 -f (Force) 為強制卸除<br />
root@debian8:~# zpool export pool1 -f</p>
<p># df -h<br />
# 查看是否 umount，已無 pool1 這個 pool<br />
root@debian8:~# df -h<br />
檔案系統        容量  已用  可用 已用% 掛載點<br />
/dev/sda1       1.9G 1004M  733M   58% /<br />
udev             10M     0   10M    0% /dev<br />
tmpfs           150M  4.6M  145M    4% /run<br />
tmpfs           374M     0  374M    0% /dev/shm<br />
tmpfs           5.0M     0  5.0M    0% /run/lock<br />
tmpfs           374M     0  374M    0% /sys/fs/cgroup</p>
<p># zpool import<br />
# 列出目錄系統上存在但尚未掛載的 pool storage<br />
root@debian8:~# zpool import<br />
  pool: pool1<br />
    id: 244594555867708236<br />
 state: ONLINE<br />
action: The pool can be imported using its name or numeric identifier.<br />
config:</p>
<p>    pool1                                                 ONLINE<br />
      mirror-0                                            ONLINE<br />
        disk/by-id/ata-VBOX_HARDDISK_VB5260512b-73cfc5a7  ONLINE<br />
        disk/by-id/ata-VBOX_HARDDISK_VBff905153-79c3b58a  ONLIN</p>
<p># zpool import -f<br />
# 強制掛載目前系統上所有存在且未掛載(mount) 的 pool storage<br />
# zpool import pool1 # 掛載(mount) storage 這個 pool<br />
root@debian8:~# zpool import pool1</p>
<p># df -h # 查看是否 mount，已重新掛載 storage pool<br />
root@debian8:~# df -h<br />
檔案系統        容量  已用  可用 已用% 掛載點<br />
/dev/sda1       1.9G 1004M  733M   58% /<br />
udev             10M     0   10M    0% /dev<br />
tmpfs           150M  4.6M  145M    4% /run<br />
tmpfs           374M     0  374M    0% /dev/shm<br />
tmpfs           5.0M     0  5.0M    0% /run/lock<br />
tmpfs           374M     0  374M    0% /sys/fs/cgroup<br />
pool1           7.9G  112K  7.9G    1% /pool1</p>
<p># zpool scrub storage<br />
# 手動驗證 storage 這個 pool 中所有資料的完整性<br />
# 部份版本的 zfs 不提供</p>
<p># zpool replace pool1 /dev/sdd /dev/sde<br />
# 在 storage pool1 中用新的 /dev/sdd /dev/sde 取代原本的 /dev/sdb /dev/sdc 兩棵 HD</p>
<p>ZFS 的 zfs 指令</p>
<p># zfs create pool1/compressed<br />
# 在 pool1 這個 pool 中建立一個檔案目錄叫 compressed<br />
# zfs list # 查看 ZFS 檔案狀態<br />
root@debian8:~# zfs list<br />
NAME               USED  AVAIL  REFER  MOUNTPOINT<br />
pool1              524K  7.81G   112K  /pool1<br />
pool1/compressed   112K  7.81G   112K  /pool1/compressed</p>
<p>#以df -h 查看<br />
root@debian8:~# df -h<br />
檔案系統          容量  已用  可用 已用% 掛載點<br />
/dev/sda1         1.9G 1004M  733M   58% /<br />
udev               10M     0   10M    0% /dev<br />
tmpfs             150M  4.6M  145M    4% /run<br />
tmpfs             374M     0  374M    0% /dev/shm<br />
tmpfs             5.0M     0  5.0M    0% /run/lock<br />
tmpfs             374M     0  374M    0% /sys/fs/cgroup<br />
pool1             7.9G  120K  7.9G    1% /pool1<br />
pool1/compressed  7.9G  112K  7.9G    1% /pool1/compressed</p>
<p># zfs set compression=gzip pool1/compressed # 將 compressed 目錄設定成 gzip 壓縮格式<br />
# zfs set compression=off pool1/compressed # 解除 compressed 目錄設的壓縮格式</p>
<p># zfs mount # 查看所有 ZFS 掛載的磁區<br />
root@debian8:~# zfs mount<br />
pool1                           /pool1<br />
pool1/compressed                /pool1/compressed</p>
<p># zfs get all pool1/compressed # 查看 pool1/compressed 檔案目錄屬性<br />
root@debian8:~# zfs get all pool1/compressed<br />
NAME              PROPERTY              VALUE                    SOURCE<br />
pool1/compressed  type                  filesystem               -<br />
pool1/compressed  creation              六  7月  1 11:53 2017  -<br />
pool1/compressed  used                  112K                     -<br />
pool1/compressed  available             7.81G                    -<br />
pool1/compressed  referenced            112K                     -<br />
pool1/compressed  compressratio         1.00x                    -<br />
pool1/compressed  mounted               yes                      -<br />
pool1/compressed  quota                 none                     default<br />
pool1/compressed  reservation           none                     default<br />
pool1/compressed  recordsize            128K                     default<br />
pool1/compressed  mountpoint            /pool1/compressed        default<br />
pool1/compressed  sharenfs              off                      default<br />
pool1/compressed  checksum              on                       default<br />
pool1/compressed  compression           off                      default<br />
pool1/compressed  atime                 on                       default<br />
pool1/compressed  devices               on                       default<br />
pool1/compressed  exec                  on                       default<br />
pool1/compressed  setuid                on                       default<br />
pool1/compressed  readonly              off                      default<br />
pool1/compressed  zoned                 off                      default<br />
pool1/compressed  snapdir               hidden                   default<br />
pool1/compressed  aclmode               groupmask                default<br />
pool1/compressed  aclinherit            restricted               default<br />
pool1/compressed  canmount              on                       default<br />
pool1/compressed  xattr                 on                       default<br />
pool1/compressed  copies                1                        default<br />
pool1/compressed  version               4                        -<br />
pool1/compressed  utf8only              off                      -<br />
pool1/compressed  normalization         none                     -<br />
pool1/compressed  casesensitivity       sensitive                -<br />
pool1/compressed  vscan                 off                      default<br />
pool1/compressed  nbmand                off                      default<br />
pool1/compressed  sharesmb              off                      default<br />
pool1/compressed  refquota              none                     default<br />
pool1/compressed  refreservation        none                     default<br />
pool1/compressed  primarycache          all                      default<br />
pool1/compressed  secondarycache        all                      default<br />
pool1/compressed  usedbysnapshots       0                        -<br />
pool1/compressed  usedbydataset         112K                     -<br />
pool1/compressed  usedbychildren        0                        -<br />
pool1/compressed  usedbyrefreservation  0                        -<br />
pool1/compressed  logbias               latency                  default<br />
pool1/compressed  dedup                 off                      default<br />
pool1/compressed  mlslabel              off                      -</p>
<p># 只查看 pool1/compressed 目錄中 compression 屬性<br />
root@debian8:~# zfs get compression pool1/compressed<br />
NAME              PROPERTY     VALUE     SOURCE<br />
pool1/compressed  compression  off       default</p>
<p># zfs set quota=3G pool1/compressed # 可設定檔案空間大小為 3G 但 storage 這個 pool 總大小為 7.9G 如果 3G 滿了而 7.9G 還未用完會 share 給 /pool1/compressed 繼續使用<br />
# df -h # 查看 storage/compressed 的 Avail 變成 3G<br />
檔案系統          容量  已用  可用 已用% 掛載點<br />
pool1             7.9G  120K  7.9G    1% /pool1<br />
pool1/compressed  3.0G  112K  3.0G    1% /pool1/compressed</p>
<p># zfs set reservation=3g pool1/compressed<br />
# 設定保留了 3G 給 /pool1/compressed<br />
# df -h # 查看 pool1 的 Size 變成 4.9G，這是因為保留了 3G 給 /pool1/compressed，代表 /pool1/compressed 真正擁有 3G 別的 filesystem 是不能跟它 share 的<br />
root@debian8:~# zfs set reservation=3G pool1/compressed<br />
root@debian8:~# df -h<br />
檔案系統          容量  已用  可用 已用% 掛載點<br />
pool1             4.9G  120K  4.9G    1% /pool1<br />
pool1/compressed  3.0G  112K  3.0G    1% /pool1/compressed</p>
<p># zfs create pool1/data # 於 storage pool 中再建立一個 data 檔案目錄<br />
# zfs set mountpoint=/data pool1/data # 設定真實掛載點原本 Mounted on 會由 /pool1/data 變成到 /data<br />
# df<br />
檔案系統          容量  已用  可用 已用% 掛載點<br />
pool1/compressed  3.0G  112K  3.0G    1% /pool1/compressed<br />
pool1/data        4.9G  112K  4.9G    1% /data</p>
<p># zfs set sharenfs=rw pool1/data # 設定分享權限可讀及寫，通常用在 NFS 分享上root@debian8:~# zfs set sharenfs=rw pool1/data<br />
cannot share &#8216;pool1/data&#8217;:  exportfs failed<br />
property may be set but unable to reshare filesystem<br />
# zfs snapshot pool1/compressed@2017-07-05<br />
# touch /pool1/compressed/1234 # 建一個檔案到 compressed 目錄下<br />
# zfs snapshot pool1/compressed@2017-07-051<br />
# zfs snapshot pool1/compressed@2017-07-052<br />
# snapshot compressed 目錄，取個隨便名稱就用今天日期<br />
zfs list -t snapshot<br />
# 列出所有的snapshot(快照)<br />
root@debian8:~# zfs list -t snapshot<br />
NAME                           USED  AVAIL  REFER  MOUNTPOINT<br />
pool1/compressed@2017-07-05       0      &#8211;   112K  -<br />
pool1/compressed@2017-07-051      0      &#8211;   112K  -<br />
pool1/compressed@2017-07-052      0      &#8211;   112K  -<br />
zfs list -t all<br />
# 列出所有的zfs檔案系統<br />
root@debian8:~# zfs list -t all<br />
NAME                           USED  AVAIL  REFER  MOUNTPOINT<br />
pool1                         3.00G  4.81G   120K  /pool1<br />
pool1/compressed               112K  3.00G   112K  /pool1/compressed<br />
pool1/compressed@2017-07-05       0      &#8211;   112K  -<br />
pool1/compressed@2017-07-051      0      &#8211;   112K  -<br />
pool1/compressed@2017-07-052      0      &#8211;   112K  -<br />
pool1/data                     112K  4.81G   112K  /data</p>
<p># pool1/compressed@2017-07-051<br />
# 刪除 pool1/compressed@2017-07-051 這個 snapshot<br />
root@debian8:~# zfs list -t snapshot<br />
NAME                           USED  AVAIL  REFER  MOUNTPOINT<br />
pool1/compressed@2017-07-05       0      &#8211;   112K  -<br />
pool1/compressed@2017-07-052      0      &#8211;   112K  -</p>
<p># 回復到某一個快照點<br />
# 先刪除剛剛產生的檔案<br />
root@debian8:~# rm /pool1/compressed/1234<br />
root@debian8:~# ll /pool1/compressed/<br />
總計 17<br />
drwxr-xr-x 2 root root 2  7月  1 12:24 ./<br />
drwxr-xr-x 3 root root 3  7月  1 12:04 ../<br />
再將zfs檔案系統還原到刪除前的snapshot<br />
root@debian8:~# zfs rollback pool1/compressed@2017-07-052<br />
root@debian8:~# ls -alF /pool1/compressed/<br />
總計 18<br />
drwxr-xr-x 2 root root 3  7月  1 12:23 ./<br />
drwxr-xr-x 3 root root 3  7月  1 12:04 ../<br />
-rw-r&#8211;r&#8211; 1 root root 0  7月  1 12:23 1234<br />
# zfs destroy pool1/compressed # 可刪除 pool1/compressed 檔案目錄</p>
<p>root@debian8:~# zfs list -t all<br />
NAME                           USED  AVAIL  REFER  MOUNTPOINT<br />
pool1                         3.00G  4.81G   120K  /pool1<br />
pool1/compressed               280K  3.00G   112K  /pool1/compressed<br />
pool1/compressed@2017-07-05     88K      &#8211;   112K  -<br />
pool1/compressed@2017-07-052    80K      &#8211;   112K  -<br />
pool1/data                     112K  4.81G   112K  /data<br />
# 在 pool1/compressed 檔案系統裡還有兩個快照存在<br />
# 直接刪除檔案系統<br />
root@debian8:~# zfs destroy pool1/compressed<br />
cannot destroy &#8216;pool1/compressed&#8217;: filesystem has children<br />
use &#8216;-r&#8217; to destroy the following datasets:<br />
pool1/compressed@2017-07-05<br />
pool1/compressed@2017-07-052</p>
]]></content:encoded>
			<wfw:commentRss>https://ui.idv.tw/wordpress/?feed=rss2&#038;p=497</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
