Read-only filesystem error when running sudo timeshift --check

Hello.

Post your terminal/konsole in- and output as text (no pictures) from:

inxi -Faz

System:    Kernel: 5.14.3-zen1-1-zen x86_64 bits: 64 compiler: gcc v: 11.1.0 
parameters: BOOT_IMAGE=/@/boot/vmlinuz-linux-zen root=UUID=a6eae74a-2326-42b3-af7d-a0ea0be07a31 rw 
rootflags=subvol=@ quiet splash rd.udev.log_priority=3 vt.global_cursor_default=0 
systemd.unified_cgroup_hierarchy=1 loglevel=3 
Desktop: KDE Plasma 5.22.5 tk: Qt 5.15.2 info: latte-dock wm: kwin_x11 vt: 1 dm: SDDM Distro: Garuda Linux 
base: Arch Linux 
Machine:   Type: Desktop System: Gigabyte product: X570 AORUS ELITE v: -CF serial: <filter> 
Mobo: Gigabyte model: X570 AORUS ELITE v: x.x serial: <filter> UEFI: American Megatrends LLC. v: F33h 
date: 04/23/2021 
CPU:       Info: 8-Core model: AMD Ryzen 7 3700X bits: 64 type: MT MCP arch: Zen 2 family: 17 (23) model-id: 71 (113) 
stepping: 0 microcode: 8701021 cache: L2: 4 MiB 
flags: avx avx2 lm nx pae sse sse2 sse3 sse4_1 sse4_2 sse4a ssse3 svm bogomips: 114989 
Speed: 3593 MHz min/max: 2200/3600 MHz boost: enabled Core speeds (MHz): 1: 3593 2: 3591 3: 3598 4: 3569 5: 3595 
6: 3587 7: 3575 8: 3593 9: 3597 10: 3604 11: 3592 12: 3592 13: 3594 14: 4130 15: 3840 16: 3592 
Vulnerabilities: Type: itlb_multihit status: Not affected 
Type: l1tf status: Not affected 
Type: mds status: Not affected 
Type: meltdown status: Not affected 
Type: spec_store_bypass mitigation: Speculative Store Bypass disabled via prctl and seccomp
Type: spectre_v1 mitigation: usercopy/swapgs barriers and __user pointer sanitization
Type: spectre_v2 mitigation: Full AMD retpoline, IBPB: conditional, STIBP: conditional, RSB filling
Type: srbds status: Not affected
Type: tsx_async_abort status: Not affected
Graphics:  Device-1: NVIDIA GP104 [GeForce GTX 1070 Ti] vendor: Gigabyte driver: nvidia v: 470.63.01
alternate: nouveau,nvidia_drm bus-ID: 05:00.0 chip-ID: 10de:1b82 class-ID: 0300
Device-2: Chicony USB2.0 FHD UVC WebCam type: USB driver: uvcvideo bus-ID: 5-4.4:22 chip-ID: 04f2:b612
class-ID: 0e02 serial: <filter>
Display: x11 server: X.Org 1.20.13 compositor: kwin_x11 driver: loaded: nvidia display-ID: :0 screens: 1
Screen-1: 0 s-res: 5120x1440 s-dpi: 80 s-size: 1626x457mm (64.0x18.0") s-diag: 1689mm (66.5")
Monitor-1: DP-2 res: 5120x1440 dpi: 109 size: 1190x340mm (46.9x13.4") diag: 1238mm (48.7")
OpenGL: renderer: NVIDIA GeForce GTX 1070 Ti/PCIe/SSE2 v: 4.6.0 NVIDIA 470.63.01 direct render: Yes
Audio:     Device-1: NVIDIA GP104 High Definition Audio vendor: Gigabyte driver: snd_hda_intel v: kernel bus-ID: 05:00.1
chip-ID: 10de:10f0 class-ID: 0403
Device-2: Creative Labs Sound Core3D [Sound Blaster Recon3D / Z-Series] driver: snd_hda_intel v: kernel
bus-ID: 07:00.0 chip-ID: 1102:0012 class-ID: 0403
Device-3: Advanced Micro Devices [AMD] Starship/Matisse HD Audio vendor: Gigabyte driver: snd_hda_intel v: kernel
bus-ID: 0c:00.4 chip-ID: 1022:1487 class-ID: 0403
Device-4: Oculus VR Rift S type: USB driver: cdc_acm,hid-generic,snd-usb-audio,usbhid bus-ID: 5-1.2:4
chip-ID: 2833:0051 class-ID: 0300 serial: <filter>
Device-5: Logitech PRO type: USB driver: hid-generic,snd-usb-audio,usbhid bus-ID: 5-4.1.3:21 chip-ID: 046d:0aa7
class-ID: 0300 serial: <filter>
Device-6: Realtek USB Audio type: USB driver: snd-usb-audio bus-ID: 5-4.3:19 chip-ID: 0bda:48a5 class-ID: 0102
serial: <filter>
Sound Server-1: ALSA v: k5.14.3-zen1-1-zen running: yes
Sound Server-2: JACK v: 1.9.19 running: no
Sound Server-3: PulseAudio v: 15.0 running: yes
Sound Server-4: PipeWire v: 0.3.35 running: yes
Network:   Device-1: Intel I211 Gigabit Network vendor: Gigabyte driver: igb v: kernel port: e000 bus-ID: 06:00.0
chip-ID: 8086:1539 class-ID: 0200
IF: enp6s0 state: up speed: 1000 Mbps duplex: full mac: <filter>
Device-2: Microsoft Wireless XBox Controller Dongle type: USB driver: mt76x2u bus-ID: 1-3.4:4 chip-ID: 045e:02e6
class-ID: 0000 serial: <filter>
IF: wlp8s0f1u3u4 state: down mac: <filter>
Device-3: Realtek RTL8153 Gigabit Ethernet Adapter type: USB driver: r8152 bus-ID: 6-4.1.2:13 chip-ID: 0bda:8153
class-ID: 0000 serial: <filter>
IF: enp12s0f3u4u1u2 state: down mac: <filter>
IF-ID-1: anbox0 state: down mac: <filter>
Bluetooth: Device-1: Cambridge Silicon Radio Bluetooth Dongle (HCI mode) type: USB driver: btusb v: 0.8 bus-ID: 3-6.2:4
chip-ID: 0a12:0001 class-ID: e001
Report: bt-adapter ID: hci0 rfk-id: 0 state: down bt-service: enabled,running rfk-block: hardware: no software: yes
address: <filter>
Drives:    Local Storage: total: 5.25 TiB used: 1.26 TiB (23.9%)
SMART Message: Unable to run smartctl. Root privileges required.
ID-1: /dev/nvme0n1 maj-min: 259:0 vendor: Samsung model: SSD 960 EVO 1TB size: 931.51 GiB block-size:
physical: 512 B logical: 512 B speed: 31.6 Gb/s lanes: 4 type: SSD serial: <filter> rev: 3B7QCXE7 temp: 34.9 C
scheme: GPT
ID-2: /dev/nvme1n1 maj-min: 259:1 vendor: Samsung model: SSD 970 EVO 500GB size: 465.76 GiB block-size:
physical: 512 B logical: 512 B speed: 31.6 Gb/s lanes: 4 type: SSD serial: <filter> rev: 2B2QEXE7 temp: 33.9 C
scheme: GPT
ID-3: /dev/sda maj-min: 8:0 vendor: Kingston model: SUV400S37240G size: 223.57 GiB block-size: physical: 4096 B
logical: 512 B speed: 6.0 Gb/s type: SSD serial: <filter> rev: 96R9 scheme: GPT
ID-4: /dev/sdb maj-min: 8:16 vendor: Western Digital model: WD4002FYYZ-01B7CB1 size: 3.64 TiB block-size:
physical: 512 B logical: 512 B speed: 6.0 Gb/s type: HDD rpm: 7200 serial: <filter> rev: 1M03 scheme: GPT
ID-5: /dev/sdc maj-min: 8:32 type: USB vendor: Toshiba model: TransMemory size: 28.85 GiB block-size:
physical: 512 B logical: 512 B type: N/A serial: <filter> rev: PMAP scheme: MBR
SMART Message: Unknown USB bridge. Flash drive/Unsupported enclosure?
Partition: ID-1: / raw-size: 923.58 GiB size: 923.58 GiB (100.00%) used: 120.98 GiB (13.1%) fs: btrfs dev: /dev/nvme0n1p3
maj-min: 259:4
ID-2: /boot/efi raw-size: 489 MiB size: 488 MiB (99.80%) used: 65.3 MiB (13.4%) fs: vfat dev: /dev/nvme0n1p1
maj-min: 259:2
ID-3: /home raw-size: 923.58 GiB size: 923.58 GiB (100.00%) used: 120.98 GiB (13.1%) fs: btrfs dev: /dev/nvme0n1p3
maj-min: 259:4
ID-4: /var/log raw-size: 923.58 GiB size: 923.58 GiB (100.00%) used: 120.98 GiB (13.1%) fs: btrfs
dev: /dev/nvme0n1p3 maj-min: 259:4
ID-5: /var/tmp raw-size: 923.58 GiB size: 923.58 GiB (100.00%) used: 120.98 GiB (13.1%) fs: btrfs
dev: /dev/nvme0n1p3 maj-min: 259:4
Swap:      Kernel: swappiness: 133 (default 60) cache-pressure: 100 (default)
ID-1: swap-1 type: partition size: 7.45 GiB used: 0 KiB (0.0%) priority: -2 dev: /dev/nvme0n1p2 maj-min: 259:3
ID-2: swap-2 type: zram size: 31.29 GiB used: 84 MiB (0.3%) priority: 100 dev: /dev/zram0
Sensors:   System Temperatures: cpu: 44.4 C mobo: 32.0 C gpu: nvidia temp: 56 C
Fan Speeds (RPM): N/A gpu: nvidia fan: 0%
Info:      Processes: 397 Uptime: 9h 10m wakeups: 0 Memory: 31.35 GiB used: 10.49 GiB (33.5%) Init: systemd v: 249
tool: systemctl Compilers: gcc: 11.1.0 Packages: 1903 pacman: 1895 lib: 508 flatpak: 8 Shell: fish v: 3.3.1
default: Bash v: 5.1.8 running-in: konsole inxi: 3.3.06

Report everything you have already attempted to solve your problem.
I have tried rebalanceing the volume, but that's it. I am very new to btrfs, so I am trying to be careful.

This is my fstab:

╭─kekkon@tuxgamer in ~ took 1s
╰─λ cat /etc/fstab
File: /etc/fstab
# /etc/fstab: static file system information.
#
# Use 'blkid' to print the universally unique identifier for a device; this may
# be used with UUID= as a more robust way to name devices that works even if
# disks are added and removed. See fstab(5).
#
# <file system>             <mount point>  <type>  <options>  <dump>  <pass>
UUID=4BB6-B024                              /boot/efi    vfat    umask=0077                                                    0 2
UUID=a6eae74a-2326-42b3-af7d-a0ea0be07a31   /            btrfs   subvol=/@,noatime,space_cache,autodefrag,compress=zstd        0 0
UUID=a6eae74a-2326-42b3-af7d-a0ea0be07a31   /home        btrfs   subvol=/@home,noatime,space_cache,autodefrag,compress=zstd    0 0
UUID=a6eae74a-2326-42b3-af7d-a0ea0be07a31   /root        btrfs   subvol=/@root,noatime,space_cache,autodefrag,compress=zstd    0 0
UUID=a6eae74a-2326-42b3-af7d-a0ea0be07a31   /srv         btrfs   subvol=/@srv,noatime,space_cache,autodefrag,compress=zstd     0 0
UUID=a6eae74a-2326-42b3-af7d-a0ea0be07a31   /var/cache   btrfs   subvol=/@cache,noatime,space_cache,autodefrag,compress=zstd   0 0
UUID=a6eae74a-2326-42b3-af7d-a0ea0be07a31   /var/log     btrfs   subvol=/@log,noatime,space_cache,autodefrag,compress=zstd     0 0
UUID=a6eae74a-2326-42b3-af7d-a0ea0be07a31   /var/tmp     btrfs   subvol=/@tmp,noatime,space_cache,autodefrag,compress=zstd     0 0
/dev/sdb2                                   /mnt/data    ntfs    defaults                                                      0 0

Since a day or two I get errors when updating packages or running sudo timeshift --check about not being able to remove files because it is a read-only filesystem. I don't think I changed anything, but I do regularly install the available updates.

I would try to look at it from a different angle.
Maybe it's a problem with btrfs?
Could you try a sudo btrfs check /dev/nvme0n1 ?
Additionally, of course, I'd search for error messages in dmesg.

1 Like

Any hints on what to look for in dmesg? Or how to filter out the errors from the noise?

The check reported

╰─λ sudo btrfs check /dev/nvme0n1
Opening filesystem to check...
No valid Btrfs found on /dev/nvme0n1
ERROR: cannot open file system

I am not sure why you'd want me to check that device though, since that's the SSD itself, not a specific partition.

EDIT: this is what dmesg had to say about btrfs:

[✔️] ╰─λ  sudo dmesg | grep -i btrfs
[    3.745425] Btrfs loaded, crc32c=crc32c-intel, zoned=yes
[    3.745847] BTRFS: device fsid a6eae74a-2326-42b3-af7d-a0ea0be07a31 devid 1 transid 8312 /dev/nvme0n1p3 scanned by systemd-udevd (271)
[    4.000588] BTRFS info (device nvme0n1p3): disk space caching is enabled
[    4.000591] BTRFS info (device nvme0n1p3): has skinny extents
[    4.024458] BTRFS info (device nvme0n1p3): enabling ssd optimizations
[    6.461024] BTRFS info (device nvme0n1p3): enabling auto defrag
[    6.461028] BTRFS info (device nvme0n1p3): use zstd compression, level 3
[    6.461029] BTRFS info (device nvme0n1p3): disk space caching is enabled
[  269.291091] audit: type=1130 audit(1631957262.086:135): pid=1 uid=0 auid=4294967295 ses=4294967295 msg='unit=grub-btrfs comm="systemd" exe="/usr/lib/systemd/systemd" hostname=? addr=? terminal=? res=success'
[  269.291096] audit: type=1131 audit(1631957262.086:136): pid=1 uid=0 auid=4294967295 ses=4294967295 msg='unit=grub-btrfs comm="systemd" exe="/usr/lib/systemd/systemd" hostname=? addr=? terminal=? res=success'
[  608.376346] audit: type=1130 audit(1631957601.171:197): pid=1 uid=0 auid=4294967295 ses=4294967295 msg='unit=grub-btrfs comm="systemd" exe="/usr/lib/systemd/systemd" hostname=? addr=? terminal=? res=success'
[  608.376351] audit: type=1131 audit(1631957601.171:198): pid=1 uid=0 auid=4294967295 ses=4294967295 msg='unit=grub-btrfs comm="systemd" exe="/usr/lib/systemd/systemd" hostname=? addr=? terminal=? res=success'

Btrfs check must be launched from a live USB, with target unmounted.
The dmesg seems ok. Please check
sudo btrfs check /dev/nvme0n1p3

2 Likes

This is what I got back after the check:

╰─λ sudo btrfs check /dev/nvme0n1p3
Opening filesystem to check...
Checking filesystem on /dev/nvme0n1p3
UUID: a6eae74a-2326-42b3-af7d-a0ea0be07a31
[1/7] checking root items
[2/7] checking extents
[3/7] checking free space cache
[4/7] checking fs roots
[5/7] checking only csums items (without verifying data)
[6/7] checking root refs
[7/7] checking quota groups
Counts for qgroup id: 0/465 are different
our:            referenced 93389197312 referenced compressed 93389197312
disk:           referenced 93389197312 referenced compressed 93389197312
our:            exclusive 325410816 exclusive compressed 325410816
disk:           exclusive 325349376 exclusive compressed 325349376
diff:           exclusive 61440 exclusive compressed 61440
found 134934302720 bytes used, error(s) found
total csum bytes: 128034596
total tree bytes: 1554268160
total fs tree bytes: 1293139968
total extent tree bytes: 105922560
btree space waste bytes: 273923387
file data blocks allocated: 178626359296
referenced 234386849792

Might be worth deleting all your snapshots, then do a btrfs balance.

After completion create a new snapshot, then reboot.

Then check to see if the same errors are still present.

2 Likes

I have done that, but sudo timeshift --check still keeps throwing errors about not being able to remove the files in the snapshots. The rest of the system works fine, so I think this is specifically something with timeshift.

sudo timeshift --list-devices gives me

/dev/nvme0n1p3 is mounted at: /run/timeshift/backup, options: rw,relatime,compress=zstd:3,ssd,space_cache,autodefrag,subvolid=5,subvol=/

but that is also my root partition. Can it be mounted twice?

EDIT: my mtab

proc /proc proc rw,nosuid,nodev,noexec,relatime 0 0
sys /sys sysfs rw,nosuid,nodev,noexec,relatime 0 0
dev /dev devtmpfs rw,nosuid,relatime,size=16373272k,nr_inodes=4093318,mode=755,inode64 0 0
run /run tmpfs rw,nosuid,nodev,relatime,mode=755,inode64 0 0
efivarfs /sys/firmware/efi/efivars efivarfs rw,nosuid,nodev,noexec,relatime 0 0
devpts /dev/pts devpts rw,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=000 0 0
/dev/nvme0n1p3 / btrfs rw,noatime,compress=zstd:3,ssd,space_cache,autodefrag,subvolid=256,subvol=/@ 0 0
securityfs /sys/kernel/security securityfs rw,nosuid,nodev,noexec,relatime 0 0
tmpfs /dev/shm tmpfs rw,nosuid,nodev,inode64 0 0
cgroup2 /sys/fs/cgroup cgroup2 rw,nosuid,nodev,noexec,relatime,nsdelegate,memory_recursiveprot 0 0
pstore /sys/fs/pstore pstore rw,nosuid,nodev,noexec,relatime 0 0
none /sys/fs/bpf bpf rw,nosuid,nodev,noexec,relatime,mode=700 0 0
systemd-1 /proc/sys/fs/binfmt_misc autofs rw,relatime,fd=29,pgrp=1,timeout=0,minproto=5,maxproto=5,direct,pipe_ino=16535 0 0
mqueue /dev/mqueue mqueue rw,nosuid,nodev,noexec,relatime 0 0
binder /dev/binderfs binder rw,relatime,max=1048576 0 0
hugetlbfs /dev/hugepages hugetlbfs rw,relatime,pagesize=2M 0 0
tracefs /sys/kernel/tracing tracefs rw,nosuid,nodev,noexec,relatime 0 0
debugfs /sys/kernel/debug debugfs rw,nosuid,nodev,noexec,relatime 0 0
binfmt_misc /proc/sys/fs/binfmt_misc binfmt_misc rw,nosuid,nodev,noexec,relatime 0 0
fusectl /sys/fs/fuse/connections fusectl rw,nosuid,nodev,noexec,relatime 0 0
configfs /sys/kernel/config configfs rw,nosuid,nodev,noexec,relatime 0 0
/dev/nvme0n1p3 /root btrfs rw,noatime,compress=zstd:3,ssd,space_cache,autodefrag,subvolid=258,subvol=/@root 0 0
/dev/nvme0n1p3 /home btrfs rw,noatime,compress=zstd:3,ssd,space_cache,autodefrag,subvolid=257,subvol=/@home 0 0
/dev/nvme0n1p3 /srv btrfs rw,noatime,compress=zstd:3,ssd,space_cache,autodefrag,subvolid=259,subvol=/@srv 0 0
/dev/nvme0n1p3 /var/cache btrfs rw,noatime,compress=zstd:3,ssd,space_cache,autodefrag,subvolid=260,subvol=/@cache 0 0
/dev/nvme0n1p3 /var/log btrfs rw,noatime,compress=zstd:3,ssd,space_cache,autodefrag,subvolid=261,subvol=/@log 0 0
/dev/nvme0n1p3 /var/tmp btrfs rw,noatime,compress=zstd:3,ssd,space_cache,autodefrag,subvolid=262,subvol=/@tmp 0 0
tmpfs /home/guest tmpfs rw,nosuid,nodev,mode=750,uid=1001,gid=984,inode64 0 0
tmpfs /tmp tmpfs rw,nosuid,nodev,size=16405996k,nr_inodes=409600,inode64 0 0
/dev/nvme0n1p1 /boot/efi vfat rw,relatime,fmask=0077,dmask=0077,codepage=437,iocharset=ascii,shortname=mixed,utf8,errors=remount-ro 0 0
/dev/sdb2 /mnt/data fuseblk rw,nosuid,nodev,relatime,user_id=0,group_id=0,allow_other,blksize=4096 0 0
/dev/loop0 /var/lib/anbox/rootfs squashfs ro,relatime,errors=continue 0 0
/dev/nvme0n1p3 /var/lib/anbox/rootfs/cache btrfs rw,noatime,compress=zstd:3,ssd,space_cache,autodefrag,subvolid=256,subvol=/@ 0 0
/dev/nvme0n1p3 /var/lib/anbox/rootfs/data btrfs rw,noatime,compress=zstd:3,ssd,space_cache,autodefrag,subvolid=256,subvol=/@ 0 0
tmpfs /run/user/1000 tmpfs rw,nosuid,nodev,relatime,size=3281196k,nr_inodes=820299,mode=700,uid=1000,gid=1000,inode64 0 0
/dev/nvme0n1p3 /run/timeshift/backup btrfs rw,relatime,compress=zstd:3,ssd,space_cache,autodefrag,subvolid=5,subvol=/ 0 0

I think
/dev/nvme0n1p3 is mounted at: /run/timeshift/backup
is normal when timeshift is working or the gui open.
Just a dumb idea: if you're dualbooting with Windows, could you please check that fast boot is disabled (sometimes Windows updates turn it on automatically)?

It was turned on, but the problem persists even after disabling fastboot.

The timeshift package was recently patched to create read-only snapshots. Has anyone else tested this on a snapshot taken with the latest version of timeshift to see if this is a side-effect of that patch?

2 Likes

That would explain it. Seems like it's doing that by default and doesn't know how to delete them again.

Any idea on how to fix this? I'm willing to be a test person for a fix. I just tried going to the directory and doing sudo rm -rf ./* but ofcourse I still get the same error.

In mtab the timeshift directory is mounted as rw, so I don't understand why it's saying that it's mounted as read only, but I am very new to BTRFS.

I haven't done anything like this before, but it is easily rollable back.
I see in fstab all the file systems are mount as read only (isn't this the final 0 on each line?)
Maybe you could fix that from a live USB and reboot.
I think 1 for / and 2 for the others.

No, the last two numbers are dump and pass parameters (from Wikipedia):

  • dump – A number indicating whether and how often the file system should be backed up by the dump program; a zero indicates the file system will never be automatically backed up.
  • pass – A number indicating the order in which the fsck program will check the devices for errors at boot time:

read-write or read-only should be ro, or rw in the options line. But neither are specified. Also, the rest of the file system is read-write. Just the snapshots directory from timeshift isn't.

1 Like

Yes i was just posting the same after reading the man page, sorry...
Although I don't know the reason for those 0's.

That's how Garuda set them up on install. I just followed the installer.

I have 1 for / and 2 for the others, and the same I saw checking a few fstab in other posts. Although I see now in the Arch wiki that for btrfs they should be 0. :flushed:
Never mind, I tried, let's wait for a dev...

Mind you, the read only part is not in fstab, it is only in mtab, so that directory is mounted AFTER boot and is probably part of the BTRFS metadata somehow, it's a separate subvolume.

When I run sudo btrfs subvolume list -r / I get the following output:

ID 372 gen 1731 top level 5 path timeshift-btrfs/snapshots/2021-09-13_08-14-13/@
ID 373 gen 1733 top level 5 path timeshift-btrfs/snapshots/2021-09-13_08-14-13/@home
ID 399 gen 8530 top level 5 path timeshift-btrfs/snapshots/2021-09-14_08-00-01/@
ID 400 gen 8530 top level 5 path timeshift-btrfs/snapshots/2021-09-14_08-00-01/@home
ID 401 gen 8530 top level 5 path timeshift-btrfs/snapshots/2021-09-14_08-01-02/@
ID 402 gen 8530 top level 5 path timeshift-btrfs/snapshots/2021-09-14_08-01-02/@home
ID 446 gen 8530 top level 5 path timeshift-btrfs/snapshots/2021-09-14_17-42-34/@
ID 447 gen 8530 top level 5 path timeshift-btrfs/snapshots/2021-09-14_17-42-34/@home
ID 448 gen 8530 top level 5 path timeshift-btrfs/snapshots/2021-09-14_17-50-17/@
ID 449 gen 8530 top level 5 path timeshift-btrfs/snapshots/2021-09-14_17-50-17/@home
ID 450 gen 8530 top level 5 path timeshift-btrfs/snapshots/2021-09-14_18-09-17/@
ID 451 gen 8530 top level 5 path timeshift-btrfs/snapshots/2021-09-14_18-09-17/@home
ID 452 gen 8530 top level 5 path timeshift-btrfs/snapshots/2021-09-14_18-10-56/@
ID 453 gen 8530 top level 5 path timeshift-btrfs/snapshots/2021-09-14_18-10-56/@home
ID 454 gen 8530 top level 5 path timeshift-btrfs/snapshots/2021-09-14_20-00-19/@
ID 455 gen 8530 top level 5 path timeshift-btrfs/snapshots/2021-09-14_20-00-19/@home
ID 456 gen 8530 top level 5 path timeshift-btrfs/snapshots/2021-09-14_23-06-17/@
ID 457 gen 8530 top level 5 path timeshift-btrfs/snapshots/2021-09-14_23-06-17/@home
ID 458 gen 8530 top level 5 path timeshift-btrfs/snapshots/2021-09-15_18-25-16/@
ID 459 gen 8530 top level 5 path timeshift-btrfs/snapshots/2021-09-15_18-25-16/@home
ID 460 gen 8530 top level 5 path timeshift-btrfs/snapshots/2021-09-15_18-34-38/@
ID 461 gen 8530 top level 5 path timeshift-btrfs/snapshots/2021-09-15_18-34-38/@home
ID 494 gen 8535 top level 5 path timeshift-btrfs/snapshots/2021-09-18_12-36-40/@
ID 495 gen 8537 top level 5 path timeshift-btrfs/snapshots/2021-09-18_12-36-40/@home
ID 496 gen 8558 top level 5 path timeshift-btrfs/snapshots/2021-09-18_12-47-59/@
ID 497 gen 8560 top level 5 path timeshift-btrfs/snapshots/2021-09-18_12-47-59/@home
ID 500 gen 8747 top level 5 path timeshift-btrfs/snapshots/2021-09-18_14-07-31/@
ID 501 gen 8749 top level 5 path timeshift-btrfs/snapshots/2021-09-18_14-07-31/@home
ID 502 gen 8771 top level 5 path timeshift-btrfs/snapshots/2021-09-18_14-16-57/@
ID 503 gen 8773 top level 5 path timeshift-btrfs/snapshots/2021-09-18_14-16-57/@home
ID 505 gen 8899 top level 5 path timeshift-btrfs/snapshots/2021-09-18_17-32-25/@
ID 506 gen 8901 top level 5 path timeshift-btrfs/snapshots/2021-09-18_17-32-25/@home
ID 508 gen 9042 top level 5 path timeshift-btrfs/snapshots/2021-09-18_18-32-24/@
ID 509 gen 9044 top level 5 path timeshift-btrfs/snapshots/2021-09-18_18-32-24/@home
ID 513 gen 9560 top level 5 path timeshift-btrfs/snapshots/2021-09-19_09-28-37/@
ID 514 gen 9562 top level 5 path timeshift-btrfs/snapshots/2021-09-19_09-28-37/@home
ID 515 gen 9573 top level 5 path timeshift-btrfs/snapshots/2021-09-19_09-32-34/@
ID 516 gen 9575 top level 5 path timeshift-btrfs/snapshots/2021-09-19_09-32-34/@home

Those are the snapshots that timeshift can't delete. So the question really is: how do I file a bug for Timeshift and how do I deleade read only btrfs snapshots?

EDIT: I ended up deleting all the read only snapshots with the following command:

for id in (sudo btrfs subvolume list -r /run/timeshift/backup/ | awk '{ print $2 }'); sudo btrfs subvolume delete -i $id /run/timeshift/backup; end

After that I ran sudo timeshift --check and it ran normally.

2 Likes

You deleted all the read-only snapshots but won't the future snapshots also be read-only as well?

I am testing that right now. Maybe it was a temporary issue. Even if it's not, I could add my delete script to the pacman hook for timeshift and cobble together a temporary fix that way.