ZFS: Grow/Shrink an existing zfs filesystem

ZFS: Grow/Shrink an existing zfs filesystem

# Tested on RHEL 6 & 7


# Choose the F.S. to resize and verify current size

zfs list
   NAME           USED  AVAIL  REFER  MOUNTPOINT
   c_pool         204K  19.6G    30K  /c_pool
   c_pool/zfs01    30K  1024M    30K  /zfs01
   c_pool/zfs02    30K  19.6G    30K  /filesystem02
   m_pool         100K  9.78G    30K  /m_pool


ZPOOL=c_pool
ZFS=zfs01


df -h /$ZFS
   Filesystem            Size  Used Avail Use% Mounted on
   c_pool/zfs01          1.0G  128K  1.0G   1% /zfs01



# Extend F.S. to 2GB

zfs set quota=2g $ZPOOL/$ZFS



# Check

zfs list
   NAME           USED  AVAIL  REFER  MOUNTPOINT
   c_pool         204K  19.6G    30K  /c_pool
   c_pool/zfs01    30K  2.00G    30K  /zfs01
   c_pool/zfs02    30K  19.6G    30K  /filesystem02
   m_pool         100K  9.78G    30K  /m_pool


df -h /$ZFS
   Filesystem            Size  Used Avail Use% Mounted on
   c_pool/zfs01          2.0G  128K  2.0G   1% /zfs01



# Reduce F.S. back to 1GB

zfs set quota=1g $ZPOOL/$ZFS



# Check

zfs list
   NAME           USED  AVAIL  REFER  MOUNTPOINT
   c_pool         204K  19.6G    30K  /c_pool
   c_pool/zfs01    30K  1024M    30K  /zfs01
   c_pool/zfs02    30K  19.6G    30K  /filesystem02
   m_pool         100K  9.78G    30K  /m_pool



df -h /$ZFS
   Filesystem            Size  Used Avail Use% Mounted on
   c_pool/zfs01          1.0G  128K  1.0G   1% /zfs01



# Here is what happens if we fill up a little bit our filesystem and then try to reduce it
# below the boundary of used space

df -h /$ZFS
   Filesystem            Size  Used Avail Use% Mounted on
   c_pool/zfs01          1.0G  350M  675M  35% /zfs01


zfs set quota=256m $ZPOOL/$ZFS
   cannot set property for 'c_pool/zfs01': size is less than current used or reserved space
0 (0)
Article Rating (No Votes)
Rate this article
Attachments
There are no attachments for this article.
Comments
There are no comments for this article. Be the first to post a comment.
Full Name
Email Address
Security Code Security Code
Related Articles RSS Feed
RHEL: Display swap/RAM size
Viewed 3137 times since Sat, Jun 2, 2018
How to configure an SSH proxy server with Squid
Viewed 2912 times since Sun, Dec 6, 2020
RHEL: Change system’s hostname
Viewed 3325 times since Sun, May 27, 2018
RHEL: How to rebuild and/or patch a RPM package
Viewed 8453 times since Sat, Jun 2, 2018
Linux Find Large Files
Viewed 2755 times since Mon, Oct 29, 2018
LVM: Mount LVM Partition(s) in Rescue Mode
Viewed 4647 times since Sat, Jun 2, 2018
SSH ProxyCommand example: Going through one host to reach another server
Viewed 13406 times since Tue, Aug 6, 2019
How To Use Systemctl to Manage Systemd Services and Units
Viewed 7294 times since Mon, Dec 7, 2020
How to use yum-cron to automatically update RHEL/CentOS Linux
Viewed 2550 times since Wed, Oct 17, 2018
logrotate How log rotation works with logrotate
Viewed 8853 times since Sun, Jan 12, 2020