记录一次没有@子卷的timeshift系统恢复

问题

在使用timeshift恢复系统时,不知道什么操作多次点击恢复导致了整个系统盘下只有一个timeshift-btrfs文件夹,并且重启了系统(如不重启应该也能在原系统还在的情况下操作,未实验),不出意外的挂了。

解决

  • 手边需要一个带有timeshift的启动盘(我是用的mintlinux)
  • 进入启动系统后,首先找到挂了的系统分区 lsblk -f,例如/dev/nvme0n1p6,进行挂载
  • 查看里面的结构,ls /mnt 不出意外的话只有一个timeshift-btrfs文件夹,但里面的的snapshots保存有完成的系统子卷(有这个就还能救)
  • 打开终端,进入到snapshots目录(刚才挂载的系统分区)SNAP=/mnt/timeshift-btrfs/snapshots/2025-11-30_10-24-02.
  • 确定里面有@子卷 sudo btrfs subvolume list "@SNAP" 输出结果中应包含*@*
  • 恢复子卷 sudo btrfs subvolume snapshot "$SNAP/@/" /mnt/@(如果有其他的分区,例如home,操作同上)
  • 卸载 sudo mount /mnt
  • 重启reboot
1 Like