将系统烧写到睿莓开发板 eMMC 上的方法
查看存储信息
lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT mmcblk0 179:0 0 14.8G 0 disk ├─mmcblk0p1 179:1 0 256M 0 part /boot └─mmcblk0p2 179:2 0 14.6G 0 part / mmcblk1 179:32 0 7.3G 0 disk └─mmcblk1p1 179:33 0 7.3G 0 part mmcblk1boot0 179:64 0 4M 0 disk mmcblk1boot1 179:96 0 4M 0 disk
SD 卡的分区名为 mmcblk0,可以看见 SD 卡有两个分区,一个是 mmcblk0p1,另一个是 mmcblk0p2 。 第二个为 eMMC 的分区,因为默认没有烧录系统所以只有一个分区。 如果第二个分区已经烧录系统,那么使用 lsblk 命令后会显示以下内容:
lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT mmcblk0 179:0 0 14.8G 0 disk ├─mmcblk0p1 179:1 0 256M 0 part /boot └─mmcblk0p2 179:2 0 14.6G 0 part / mmcblk1 179:32 0 7.3G 0 disk ├─mmcblk1p1 179:33 0 256M 0 part └─mmcblk1p2 179:34 0 5.9G 0 part mmcblk1boot0 179:64 0 4M 0 disk mmcblk1boot1 179:96 0 4M 0 disk
前期准备
eMMC 烧录只能通过 SD 卡写入,所以首先需要一张已经烧录好睿莓系统的 SD 卡,启动系统,将即将烧 录的系统放入 SD 卡中,示例中将镜像直接放在默认用户 phantom 的文件夹下,文件夹绝对路径为 /home/phantom。
烧录系统到 eMMC
sudo dd if=<镜像路径> of=/dev/mmcblk1 bs=4MiB #示例 sudo dd if=/home/phantom/phantom_2022-12-03.img of=/dev/mmcblk1 bs=4MiB sync
耐心等待命令执行完毕。
执行完毕后会显示以下内容:
1483+1 records in 1483+1 records out
使用 lsblk 可以看到 mmcblk1 拥有 p1,p2 两个分区。
lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT mmcblk0 179:0 0 14.8G 0 disk ├─mmcblk0p1 179:1 0 256M 0 part /boot └─mmcblk0p2 179:2 0 14.6G 0 part / mmcblk1 179:32 0 7.3G 0 disk ├─mmcblk1p1 179:33 0 256M 0 part └─mmcblk1p2 179:34 0 5.9G 0 part mmcblk1boot0 179:64 0 4M 0 disk mmcblk1boot1 179:96 0 4M 0 disk
启用 SSH
默认镜像没有使能SSH服务,如果希望开机即可使用SSH,则按照以下步骤操作
sudo mount /dev/mmcblk1p1 /mnt sudo touch /mnt/ssh sudo umount /mnt
从 eMMC 启动系统
关机后取下 SD 卡,重新上电,系统则会从 eMMC 启动,如果按照上一步添加了 SSH 空文件,则开机即可使用 SSH 服务。