我的 RaspberryPi 从 32 Gb SD 卡启动。我将其从 RPi 上取下来进行备份,但该卡32 Mb
在我插入的任何地方都显示为单个分区。
在我的另一个 Raspberry 上,parted 和 fdisk 中都将其列为 32 Mb
$ sudo parted
GNU Parted 3.2
Using /dev/sda
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) print
Error: /dev/sda: unrecognised disk label
Model: Lexar LRWM04U (scsi)
Disk /dev/sda: 32.1MB
Sector size (logical/physical): 512B/512B
Partition Table: unknown
Disk Flags:
(parted) quit
$ sudo fdisk -l
Disk /dev/sda: 30.6 MiB, 32096256 bytes, 62688 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
我的 Mac 也将其视为 32 Mb。事实上,我尝试过克隆 SD 卡,sudo dd if=/dev/rdisk4 of=~/pi20211210.img bs=1m
并且得到了 32 Mb 的文件!
如果我把这张卡放在RaspberryPi上,它就可以正常工作,但是如果其他计算机无法正确识别它,我该如何备份它呢?
请注意,我已经尝试使用不同的 SD-USB 适配器和两台不同的计算机(Mac 和另一台 Pi)...
这是评论者要求的输出
$ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 1 30.6M 0 disk
$ lsblk -m
NAME SIZE OWNER GROUP MODE
sda 30.6M root disk brw-rw----
lsblk -f
NAME FSTYPE LABEL UUID MOUNTPOINT
sda
答案1
如果卡上有有价值的数据,但没有在其他地方备份,则您需要采取救援措施。但这会很困难,除非你能让一些阅读器+计算机看到整个设备,而不仅仅是 32 MB。
也许
ddrescue
会起作用,当存在坏扇区时,它相当宽容,并且可以克隆任何可以读取的内容。在克隆副本上,您可以尝试不同的修复工具,例如 TestDisk 和 PhotoRechttps://www.cgsecurity.org/
但也有可能 SD 卡的内部系统已损坏,超出了您我可用的工具所能修复的范围。存储卡和 USB 闪存盘可能会在没有警告的情况下发生故障。我们希望您能够使用 克隆整个驱动器或至少其中大部分
ddrescue
。
请参阅以下链接。
-
- 向下滚动到“分区表、文件系统和/或文件恢复的高级修复”
无法格式化我的 USB 驱动器。我已经尝试过 mkdosfs 和 gparted
- 问题分析
答案2
当我读到你的问题和评论时,听起来你的 SD 卡很 FUBAR。如果是这样,我知道没有办法进行备份 - 备份程序需要安装并读取 SD 卡。唯一潜在的救赎可能是fsck
;这可能是一个不太可能的事情,但只需要几分钟就能找到答案。 FWIW,我发布了fsck
在SD卡上运行的程序一会儿回来。
关于你的lsblk
输出,我觉得这lsblk --fs
是最有信息性的,也是最容易阅读的——至少这是我的经验。
在不久的将来的某个时候,您要么足够幸运地恢复部分或全部 SD 卡,要么 - 您将获得一张新的 SD 卡并在其上重新安装。当你到达那个点时,你应该考虑使用它image-utils
来备份您的 RPi。