No Disk Space Available (Very Confused)

ITCowboy

New Member
Jun 17, 2025
15
1
3
I am currently running PBS on a server with a 8tb Datastore and with 6 Vms and I am already out of disk space and I am not sure why or where the usage is.

Can someone explain?

See Enclosed Images
 

Attachments

  • BRIXBackup.png
    BRIXBackup.png
    21.4 KB · Views: 28
  • BRIXBackup Content.png
    BRIXBackup Content.png
    52 KB · Views: 28
Looks like you never ran a prune/GC job (based on deduplication factor) . Your backups don't seem to be the issue here though so give this a try
Bash:
du -shc /* | sort -h
# Go deeper
du -shc /bigdirectory/* | sort -h
# And so on...
du -shc /bigdirectory/.../* | sort -h
Or if you have enough space on the root path
Bash:
apt -yU install gdu
gdu /
This would also be of interest
Bash:
lsblk -o+FSTYPE,LABEL,MODEL
df -hT
zfs list -tall -ospace,refreservation
 
Last edited:
du -shc /* | sort -h
1790107213470.png
du -shc /mnt/* | sort -
1790107313875.png

du -shc /mnt/datastore/* | sort -h
1790108624231.png

du -shc /mnt/datastore/BRIXBackup/* | sort -h
1790108908728.png

du -shc /mnt/datastore/BRIXBackup/ct/* | sort -h
1790109060171.png

so Where is the 7Tb coming from ??????
this shows me nothing that would explain

GDU shows me and in the .chunks there are a gazillion files (exagerated)

1790109239989.png
1790109336013.png

lsblk -o+FSTYPE,LABEL,MODEL
1790109425904.png

df -hT
1790109461653.png
 

Attachments

  • 1790109317985.png
    1790109317985.png
    2.6 KB · Views: 5
GDU shows me and in the .chunks there are a gazillion files (exagerated)
Can you show that? I tried to keep it simple but forgot about hidden paths. Try this
Bash:
find /mnt/datastore/BRIXBackup/* -maxdepth 1 -mindepth 1 -exec du -shc {} + 2>/dev/null | sort -h
If all the space is taken up by .chunks then, as mentioned earlier, you probably didn't run a GC so make sure you have a job for it and run/schedule that.
 
Last edited:
  • Like
Reactions: news
How do I fix the chunks issue....right now the system wont let me run a GC because I have no disk spave available
 
so update.....wiped the datastore for backup (essentially started over again) and it ran great for about 2 weeks and now I am at the point again that the drive is full and I am unable to perform a garbage collection WTF am I doing wrong.

I have been checking this everyday (except for the weekend and it has been pruning and GC
 
ok maybe not after digging I see that it has not been pruning I dont understand why it fills the drive up so quickly
 
ok this makes it even more bizarre!!! I have a remote offsite backup server (that is pulling the same backup jobs)
1791208059274.png

and I have no storage issues whatsoever

1791208083680.png
 
Post a screenshot of the "Prune & GC Jobs" tab so we can see proof those jobs are set up and running correctly and removing data.

It's doubtful your sync pull job is working if it only takes 1 second.
 
How do I fix the chunks issue....right now the system wont let me run a GC because I have no disk spave available
I am unable to perform a garbage collection WTF am I doing wrong.
Relax. Take a deep breath. I just recently had this issue. It is easy to fix. But you need a clear mind to not destroy anything.

Like you said, you are not able to run GC, because you have no disk space left. Let us change that.
Get another disk. Does not matter if USB or SATA. Probably even a usb stick would work. Move some chunks off the pool, run Garbage Collect, move them back onto the pool. Easy.

- replace poolBackup with your pool name
- replace /mnt/datastore/poolBackup/.chunks/aaa* with the path to your chunk files
- replace /tmp with the path to your external disk or wherever you move your files.

This is how it is done:

- move some chunk file folders (names starting with aaa) off the pool, onto your external disk. This should only take a few seconds, since it is only a few hundred MB.
mv /mnt/datastore/poolBackup/.chunks/aaa* /tmp/
- run the Garbage Collect Job. Don't worry about the errors, it will detect that you moved some files.
- move the folders back onto the pool
mv /tmp/aaa* /mnt/datastore/poolBackup/.chunks/
- run Garbage Collect again. This time there should not be any errors
- create a yearly verify job that does not skip already verfied chunks
- run that verfy job
- delete that job
- set a zfs quota by
zfs set quota=1.8T poolBackup
 
Last edited: