This can happen if you are using btrfs, and in that case, these remedies will not work.
After following a lot of false trails I finally got on the right track after I started the search with
btrfs no space left on device
as the first completion. That led to the BTRFS problem wiki. It's apparently a common problem.
But even from there it was not that easy to solve my problem. I was able to run the right utilities by booting into recovery mode, taking the selection that mounts my file systems, and then dropping to root.
The wiki article said run btrfs balance, but that would not run for all file systems, and eventually I found my way here (which is also the second search result.)
If your file system is really full, then even balance will not run. Or it will run only for small values of -dusage.
The recipe in this case it at the bottom of the post. I found it confusing and rejected it as a solution at first because the poster removes snapshots, which I assumed was essential, and since I was not taking snapshots, I thought it did not apply. But it did. The snapshot step may be important for some, but it was not for me.
The remedy, in overview is:
- Create a big file
- Make it a loop device
- Attach the device to the fs that can't balance
- Run balance
- Detach the device
- Nuke the file to get that space back
The referenced post gives the command line steps.