今天想要将现有树莓派上的系统镜像copy到另外一张TF卡上,使用树莓派上自带的sd card copier工具一直报错can not mount partition.
一开始以为是TF卡有问题,尝试通过fdisk命令进行格式化,但是仍然失败。因为sd card copier工具会重新进行分区,将TF卡分成boot区和rootfs区。分区名分别为/dev/sda1、/dev/sda2。其中boot分区可以mount,rootfs分区一直mount失败。以下为报错信息:
mount: wrong fs type, bad option, bad superblock on /dev/sda2, missing codepage or helper program, or other error
网上查了很多资料,尝试了fsck命令,mkfs.ext4命令,操作都提示成功,但是还是mount失败,最后使用mke2fs命令进行修复,终于能够成功mount。操作命令如下:
mke2fs -t ext4 -O ^has_journal /dev/sda2
到这里其实TF卡已经可以正常使用了。但是如果使用sd card copier还是不行,因为其又会重新进行分区,分区后的/dev/sda2又会mount失败。
既然如此就不能使用sd card copier来复制镜像了。考虑直接使用dd命令来复制镜像。首先通过mke2fs命令恢复/dev/sda2分区。然后直接用如下命令将树莓派镜像完整复制到TF卡
dd if=/dev/mmcblk0 of=/dev/sda //可以通过sudo fdisk -l命令来查看分区名
这一步骤需要花费的时间比较久,耐心等待完成就可以了。不过会发现经过这种方式复制镜像后,TF卡的容量大小会缩水,分区会跟被复制的镜像分区一样大。可以使用parted和rezse2fs命令来恢复TF卡的大小。有可能提示成功以后显示的还是原来的大小,重启几次就可以了
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)