我有一张 16 GB 的微型 SD 卡,带有扩展的文件系统(因此整个空间都被占用了)。这张微型 SD 卡里面装着我的 Raspberry Pi 的 Raspbian 操作系统,还有许多未使用的可用空间。我通常使用 Windows,因此我使用 Win32diskimager 复制了我的 SDCard 以用于备份。然后我尝试将此备份写入另一张 16 GB 的微型 SD 卡,但无法写入,因为第二张卡稍小一些。因此我决定需要稍微缩小我的微型 SD 卡分区(那里有很多可用空间),以便在使用 Win32diskimager 保存后,它可以放入较小的 16 GB 微型 SD 卡中。
为此,我检查了几种解决方案,并找到了这个优秀的教程使用 Ubuntu 轻松调整和备份 Raspberry Pi SD 卡我决定照做。本教程唯一的问题是我必须使用 Ubuntu,而我对它一无所知。
尽管如此,我还是安装了 WMware 12.0.0 并决定运行 Ubuntu 虚拟机。我能找到的 Ubuntu 映像是 ubuntu-14.04.3-desktop-amd64,我还可以将存储库的副本复制到外部硬盘驱动器中(因为我的互联网连接非常慢,因为我仍在使用拨号调制解调器)。成功配置存储库以在本地运行并按照本教程操作后如何在 VM 中使用 SD 卡读卡器...为了让我的 Ubuntu VM 将微型 SD 卡视为硬盘驱动器,当我输入时,fdisk -l
我看到微型 SD 卡已被识别,但它显示为两个不同的设备:
Disk /dev/sda: 15.7 GB, 15716057088 bytes
4 heads, 16 sectors/track, 479616 cylinders, total 30695424 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
Disk identifier: 0x000cbe05
Device Boot Start End Blocks Id System
/dev/sda1 8192 2291015 1141412 e W95 FAT16 (LBA)
/dev/sda2 2291016 30695423 14202204 5 Extended
/dev/sda5 2293760 2359293 32767 83 Linux
/dev/sda6 2359296 2488319 64512 c W95 FAT32 (LBA)
/dev/sda7 2490368 30695423 14102528 83 Linux
Disk /dev/sda1: 3898 MB, 3898605568 bytes
4 heads, 16 sectors/track, 118976 cylinders, total 7614464 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
Disk identifier: 0x000cbe05
Device Boot Start End Blocks Id System
/dev/sda1p1 8192 2291015 1141412 e W95 FAT16 (LBA)
/dev/sda1p2 2291016 30695423 14202204 5 Extended
/dev/sda1p5 2293760 2359293 32767 83 Linux
/dev/sda1p6 2359296 2488319 64512 c W95 FAT32 (LBA)
/dev/sda1p7 2490368 30695423 14102528 83 Linux
在这里,您可以看到 micro SD 卡划分的所有分区。尽管我输入了
sudo mount /dev/sda /media/usb -t auto
但后来我分析了一下,我实际上并不需要安装这些,我只需要调整它们的大小,所以我安装了 Gparted 工具来执行此操作,这是我所看到的:
fat32、fat16 和 ext4 分区出现红色图标,表示存在某种问题。当我右键单击 ext4 分区的信息时,它显示:
e2label: No such file or directory while trying to open /dev/sda7
Couldn't find valid filesystem superblock.
tune2fs 1.42.9 (4-Feb-2014)
tune2fs: No such file or directory while trying to open /dev/sda7
Couldn't find valid filesystem superblock.
Couldn't find valid filesystem superblock.
dumpe2fs 1.42.9 (4-Feb-2014)
dumpe2fs: No such file or directory while trying to open /dev/sda7
Unable to read the contents of this file system!
Because of this some operations may be unavailable.
The cause might be a missing software package.
The following list of software packages is required for ext4 file system support: e2fsprogs v1.41+.
我在 Windows 中使用 chkdsk 工具检查了我的 SD 卡(如Gparted 中的警告图像),没有发现任何问题。我还检查了一下,没有缺少任何软件包
我不知道哪里出了问题,但是我无法安装该设备并且 gparted 给出如此多的错误,这告诉我出了问题。
我的问题是:
- 还有其他安全的方法来缩小 Pi SD 卡映像而不丢失数据吗?
- 是否有其他正确的方法将微型 SD 卡加载到 Ubuntu VM 中(将其作为 USB 设备连接也不起作用)?
- 为什么我看到 2 个设备而不是 1 个
fdisk -l
? - 我如何让 gparted 工作?