我跟着这将我的树莓派变成我的备份服务器的指南。它有一个 16 GB SD 卡,并安装了 Raspbian(基于 Debian buster)。当我尝试使用 更新时sudo apt upgrade
,它返回错误:
Error writing to output file - write (28: No space left on device) [IP: 93.93.135.141 80]
W: Some index files failed to download. They have been ignored, or old ones used instead.
这对我来说表明 SD 卡已满,即使它几乎只有系统。
这是输出sudo du -hs /*
:
646G /backupdrive
9.3M /bin
52M /boot
0 /dev
3.4M /etc
780K /home
348M /lib
16K /lost+found
4.0K /media
4.0K /mnt
41M /opt
du: cannot access '/proc/5385/task/5385/fd/3': No such file or directory
du: cannot access '/proc/5385/task/5385/fdinfo/3': No such file or directory
du: cannot access '/proc/5385/fd/3': No such file or directory
du: cannot access '/proc/5385/fdinfo/3': No such file or directory
0 /proc
24K /root
6.2M /run
8.8M /sbin
4.0K /srv
0 /sys
32K /tmp
625M /usr
167M /var
这是输出lsblk
:
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 931.5G 0 disk
|-sda1 8:1 0 931.5G 0 part /backupdrive
`-sda2 8:2 0 512B 0 part
mmcblk0 179:0 0 14.9G 0 disk
|-mmcblk0p1 179:1 0 256M 0 part /boot
`-mmcblk0p2 179:2 0 14.6G 0 part /
在我看来,外部硬盘 ( sda
) 已安装在 上/
,但部分数据仍存储在普通 SD 卡上。有谁知道这是为什么吗?
**编辑: **
输出:df /
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/root 15023184 14381088 0 100% /
答案1
@PhilipCouling,这正是问题所在,出于某种原因,它使用 SD 卡作为 /backudrive。这就是为什么它是满的。您可以在
sudo du -hs /*
上面问题的输出中看到
如果确实如此,那么您应该unmount /backupdrive
清除卸载后留在其中的所有文件。 /backupdrive 有 646GiB,所以很明显有些东西留在了你的大硬盘上而不是 SD 卡上。
您可能不想在此过程中破坏备份,因此/backupdrive
在未先将其复制到大硬盘驱动器之前,请勿删除存储在 SD 上的所有内容。您可以将大备份硬盘安装到/mnt
然后使用这个答案从您的 SD 卡(仍在 )复制合并/backupdrive
到您的备份 HDD(现在/mnt
)。
完成后,只需umount /mnt
将硬盘安装回/backupdrive
.
显然会有一个后续问题:这是怎么发生的?备份作业很可能在卸载硬盘时以某种方式运行。
如果这种情况再次发生,并且您确定备份驱动器始终正确安装,请检查此问题,以不同的方式引用:
此错误已修复(看这里),但由于它发生过一次,所以值得一提,因为我遇到了这个错误,其症状与您问题中的症状类似。