September 22, 20223 yr Please tell me what is wrong here. I have an nvme (Samsung 970 EVO Plus 500G) in the "cache_nvme" pool which hosts only the "domains" share. My 5 VMS occupy about 353G based on their vdisk size (somewhat lower is the allocated space). The nvme drive has another 73G free space. The maths: 353+73 = 426G*, which is 74G less than the capacity of the drive. What am I missing here? Any ideas? * There are no hidden files in the nvme, only the .qcow2 files of the VMS. Edited September 22, 20223 yr by Kydonakis
September 22, 20223 yr Solution Vdisks can grow with time if not trimmed, e.g. for Windows VMs see here.
September 22, 20223 yr Author Thanks for the reply. I went through the article yesterday and this is when I started checking things. Let me ask you this. For example, my win10 VM runs over a year and occupies 233G (according to "ls" command and the unraid VM tab in the GUI). It's allocated space now reads 221G. What you explain here is that it can occupy in reality, on the disk, let's say size equal to 300G due to the non-trimming over time? And the remaining 67G are unmapped and reported nowhere? Thanks. Edited September 22, 20223 yr by Kydonakis
September 22, 20223 yr Yes, not sure exactly why it happens, and possibly more with btrfs image type files can grow with time and report less space than they are actually using, this does not happen, or at least, it's much less obvious, if the images are regularly trimmed/unmapped. One way to confirm would be to move the images outside the pool, then move them back using cp --sparse=always, there are also reports that defragging the filesystem helps, as long as you don't use snapshots, in that case defragging would be a bad idea.
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.