"No space left on device" error in several situations, but I have free space on all partitions

OS: Fedora 41 KDE Plasma
Kernel Version: 6.12.8-200

I think I updated my system last night, which is likely the start of these issues.
When I booted this morning, KWallet crashed, with the error “no space left on device”. I tried getting debug information using the KDE GUI. It gave an incomplete Backtrace, so I tried downloading debug symbols to make it more useful. But they failed to download, again with the no space on device error. The same thing happened with Discover.

The first thing I tried was running another update, which did upgrade a lot of packages, but didn’t fix anything.

I checked my disk usage, but none of my partitions are full.

df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/nvme0n1p2   60G   32G   27G  55% /
devtmpfs        4.0M     0  4.0M   0% /dev
tmpfs           3.8G   16K  3.8G   1% /dev/shm
efivarfs        374K  192K  178K  52% /sys/firmware/efi/efivars
tmpfs           1.6G  2.2M  1.6G   1% /run
tmpfs           1.0M     0  1.0M   0% /run/credentials/systemd-journald.service
tmpfs           1.0M     0  1.0M   0% /run/credentials/systemd-network-generator.service
tmpfs           1.0M     0  1.0M   0% /run/credentials/systemd-udev-load-credentials.service
tmpfs           1.0M     0  1.0M   0% /run/credentials/systemd-tmpfiles-setup-dev-early.service
tmpfs           1.0M     0  1.0M   0% /run/credentials/systemd-sysctl.service
tmpfs           1.0M     0  1.0M   0% /run/credentials/systemd-tmpfiles-setup-dev.service
tmpfs           3.8G   16K  3.8G   1% /tmp
/dev/nvme0n1p5   12G   27M   12G   1% /persist
/dev/nvme0n1p1  511M   41M  471M   8% /boot/efi
/dev/nvme0n1p3  159G  143G   17G  90% /home
tmpfs           1.0M     0  1.0M   0% /run/credentials/systemd-tmpfiles-setup.service
tmpfs           1.0M     0  1.0M   0% /run/credentials/systemd-resolved.service
tmpfs           1.0M     0  1.0M   0% /run/credentials/systemd-vconsole-setup.service
tmpfs           771M  204K  771M   1% /run/user/1000

Following an online solution, I checked inode usage

df -i -h
Filesystem     Inodes IUsed IFree IUse% Mounted on
/dev/nvme0n1p2      0     0     0     - /
devtmpfs         954K   846  953K    1% /dev
tmpfs            964K     6  964K    1% /dev/shm
efivarfs            0     0     0     - /sys/firmware/efi/efivars
tmpfs            800K  1.5K  799K    1% /run
tmpfs            1.0K     2  1022    1% /run/credentials/systemd-journald.service
tmpfs            1.0K     2  1022    1% /run/credentials/systemd-network-generator.service
tmpfs            1.0K     2  1022    1% /run/credentials/systemd-udev-load-credentials.service
tmpfs            1.0K     2  1022    1% /run/credentials/systemd-tmpfiles-setup-dev-early.service
tmpfs            1.0K     2  1022    1% /run/credentials/systemd-sysctl.service
tmpfs            1.0K     2  1022    1% /run/credentials/systemd-tmpfiles-setup-dev.service
tmpfs            1.0M    44  1.0M    1% /tmp
/dev/nvme0n1p5      0     0     0     - /persist
/dev/nvme0n1p1      0     0     0     - /boot/efi
/dev/nvme0n1p3      0     0     0     - /home
tmpfs            1.0K     2  1022    1% /run/credentials/systemd-tmpfiles-setup.service
tmpfs            1.0K     2  1022    1% /run/credentials/systemd-resolved.service
tmpfs            1.0K     2  1022    1% /run/credentials/systemd-vconsole-setup.service
tmpfs            193K   220  193K    1% /run/user/1000

I also ran btrfs balance, btrfs scrub and fsck to no effect.

Several other programs throw “no space left on device” errors when writing the filesystem.

These include:
Prism Launcher
Godot Engine

Notably I WAS able to:
Create and edit text files, including in directories associated with the above programs.
Change settings in discord.

Let me know if you need more info. Any suggestions are much appreciated!

This looks like a probable culprit. Try installing and running Bleachbit to clean up /home. Only run it as yourself, as you don’t need to clean up your system files. You may be very surprised at how much junk you can get rid of.

That did the trick. Thank you! But I didn’t expect that to work, just because it says I have 17 gigs free. I suppose I’ll take that error more so at face value if I see it again. Do you know why it might show so much free space but not be able to use it?

https://wiki.archlinux.org/title/Btrfs explains btrfs space management.

Disks that are 90% full cause many linux filesystems to switch to inefficient algorithms to conserve space, resulting in slow performance. Some of the systems I used at work were configured to prevent regular users from writing to disks when they hit 90%.

I note that your data does not show a /boot file system mounted.
Please run lsblk -f for us

1 Like

Thanks for the info George. I’ll check it out.

lsblk -f
NAME        FSTYPE FSVER LABEL    UUID                                 FSAVAIL FSUSE% MOUNTPOINTS
zram0                                                                                 [SWAP]
nvme0n1                                                                               
├─nvme0n1p1 vfat   FAT32 EFI BOOT 00A1-3AEE                             470.6M     8% /boot/efi
├─nvme0n1p2 btrfs        Root     4bb744ba-55e9-48d1-84ac-e7a2c8480c7e   26.9G    53% /
├─nvme0n1p3 btrfs        Home     8e3931a2-e189-44e7-a9f7-b7c955483c43     50G    68% /home
├─nvme0n1p4 swap   1     Swap     7d56b05b-0860-4a53-94bb-c9f8d72fc78e                [SWAP]
└─nvme0n1p5 btrfs        Persist  2d9bbbe1-8ace-48f3-b689-43803b20dc2b   11.1G     0% /persist

btrfs or zfs have snapshots, never use other software created for windows.
That means, standard df and du do not work as expected.
You should use commands like
btrfs filesystem df
btrfs filesystem show
and similar to verify the real status of the filesystem. Check out