移出 Timeshift 后磁盘空间增加

移出 Timeshift 后磁盘空间增加

请让我明白一件事。我首先要说的是,我在我的电脑上运行的是 Ubuntu,它配备了120 GB SSD 驱动器。然后我决定使用时间移位(这是我最喜欢的工具)。因此,很长一段时间以来,我的磁盘一直处于问题状态,经常报告空间不足。有一次甚至严重损坏,但从快照恢复有所帮助。

所以终于到了买一个新的的时候了1TB 固态硬盘(Goodram 品牌)。我创建了 4 个分区,如下图所示:

Gparted 视图

正如你所看到的,/dev/sda2这是我的主系统(Ubuntu /)。 /dev/sda4是一个与我的快照

输出氟化氢命令:

 tmpfs           823M  2,3M  821M   1% /run
/dev/sda2       275G  171G   92G  66% /
tmpfs           4,2G  189M  4,0G   5% /dev/shm
tmpfs           5,3M  4,1k  5,3M   1% /run/lock
/dev/sda1       536M  5,5M  531M   2% /boot/efi
/dev/sda4       518G   71G  421G  15% /mnt/Timeshift
tmpfs           823M  267k  823M   1% /run/user/1000
/dev/sda3       218G  159M  218G   1% /media/zawier/Dokumenty Ubuntu

在旧的 ssd 上,快照大小约为 ~ 60GB,这让我们认为系统 + 所有应用程序 + 文档又是 60GB。将所有备份移至新分区/dev/sda4。目前我有 5 个:

sudo timeshift --list

/dev/sda4 is mounted at: /run/timeshift/backup, options: rw,relatime

Device : /dev/sda4
UUID   : 4bf343eb-b0d3-42c6-9a81-db7faa521367
Path   : /run/timeshift/backup
Mode   : RSYNC
Status : OK
5 snapshots, 447.3 GB free

Num     Name                 Tags  Description                  
------------------------------------------------------------------------------
0    >  2022-06-18_11-00-01  W M   20.04 Focal                  
1    >  2023-02-18_00-00-01  M                                  
2    >  2023-02-20_19-00-01  W     Przed wymianą dysku na 1TB  
3    >  2023-02-25_06-50-51  O     Po wymianie dysku            
4    >  2023-02-25_11-35-53  B     Nowy GRUB   

我知道 Timeshift 的快照包含符号和硬链接。因此,唯一可以正确复制它们的方法是:

sudo rsync -aHXAS --info=progress2 /timeshift /mnt/Timeshift/

为了保持一致性并避免多次复制同一个文件(在 Linux Garuda 上使用 Timeshift 时遇到了这个问题,其中简单的 rsync 从总共 490GB 的快照中尝试复制 2.9 TB:) 太疯狂了!)

让我们继续。所以我在新分区上复制的 Ubuntu 备份大约占用约 60GB:

Timeshit 文件夹属性

磁盘实用程序

这里输出mount |grep timeshift

/dev/sda4 on /run/timeshift/backup type ext4 (rw,relatime)

检查后ncdu /mnt/Timeshift/我们得到:

ncdu Timeshift 备份分区

为什么安装在 上时/dev/sda4指向?为什么它与 2 个目的地相连?有什么想法吗?为什么它不能只指向?/run/timeshift/bacups/mnt/Timeshift//mnt/Timeshift/

接下来是输出ncdu /全国民权委员会 /

如您所见,尺寸约为200GB而它几乎与之前 120GB SSD 上存储的系统相同!请记住,我也删除了这里的文件夹/timeshift。这就是为什么我预计总大小会减少到 60GB。最后系统空间增加了!为什么?有人能向我解释一下这里发生了什么吗?在我看来,这不合逻辑!:)

Ubuntu 如何计算已用空间?即使挂载的文件夹位于单独的分区上,它们是否也包含在总空间中?

答案1

我认为挂载点让您感到困惑。当您运行 timeshift 时,它会添加包含/run/timeshift/backup备份位置(无论该位置在何处)的所有快照的挂载点。您必须已将该位置挂载在/mnt/Timeshift。然后您使用 ncdu 询问“附加到 / 的已用空间有多少?”。答案是您为系统等启动的 60GB 加上第一次 TimeShift 挂载的约 60GB 和第二次 TimeShift 挂载的 60GB。

现在您已经复制了数据,实际上不需要挂载/mnt/Timeshift。删除它,ncdu 结果将减少 60GB。重新启动并重试,结果将减少另外 60GB,直到您打开 TimeShift 应用程序。

因此,Ubuntu(或任何 Linux)默认会计算连接到 ncdu 命令起始点的任何分区。但是,如果您使用ncdu -x /它,则不应跨越文件系统边界。

答案2

庞贾尔你完全正确!这让我很困惑,而从我的角度来看,这是不合逻辑的 :) 这就像当你检查你的银行账户余额时,你会得到所有银行客户的总和。

根据您的建议进行了额外检查。首先卸载以下内容:

mount | grep -i timeshift
/dev/sda4 on /mnt/Timeshift type ext4 (rw,nosuid,nodev,relatime,x-gvfs-show)
/dev/sda4 on /run/timeshift/backup type ext4 (rw,relatime)

并且尺寸下降到了我预期的某个程度。

ncdu 1.15.1 ~ Use the arrow keys to navigate, press ? for help                  
--- / --------------------------------------------------------------------------
   59,5 GiB [##########] /media                                                 
   26,1 GiB [####      ] /snap
   16,0 GiB [##        ] /var
   12,8 GiB [##        ] /usr
    7,2 GiB [#         ] /home
    2,0 GiB [          ]  swapfile
    1,8 GiB [          ] /opt
  266,4 MiB [          ] /boot
   36,7 MiB [          ] /etc
   29,8 MiB [          ] /root
.   2,3 MiB [          ] /run
  360,0 KiB [          ] /tmp
e  16,0 KiB [          ] /lost+found
    4,0 KiB [          ] /dev
e   4,0 KiB [          ] /srv
e   4,0 KiB [          ] /mytestsite
e   4,0 KiB [          ] /mnt
e   4,0 KiB [          ] /cdrom
.   0,0   B [          ] /proc
    0,0   B [          ] /sys
@   0,0   B [          ]  libx32
 Total disk usage: 125,7 GiB  Apparent size: 128,1 TiB  Items: 3642695    

另一个(或更详细的)解释是,默认情况下,我已经设置了/dev/sda4在系统启动时安装,这里真正有趣的是 - 文件夹类型是节点/目录,其中包括仅文件列表并且不包含文件数据!所以我们可以简化句子,认为那些只是链接 ;)

我想到的最后一个问题是:当总大小等于或大于主分区的大小时会发生什么?系统会报告未使用空间容量低还是会正常运行?在第二种情况下:您如何知道何时磁盘空间即将用完?

感谢您的帮助和解释!

相关内容