树莓派学习(六)

sd卡布局与rootfs更新

Posted by 婷 on April 20, 2025 本文总阅读量

简介

主要讲讲树莓派的SD卡镜像分布,以及怎么更新rootfs

SD卡镜像分布

image-20250420214717493

其中mmcblk0p5是临时用来更新p3rootfs分区

image-20250506224903565

打包raspi_rootfs.ext4

脚本如下,最后获得raspi_rootfs.ext4文件

#!/bin/bash
pushd ./output/images
sudo rm -rf raspi_rootfs.ext4
sudo dd if=/dev/zero of=raspi_rootfs.ext4 bs=100M count=1
sudo mkfs.ext4 -O ^metadata_csum raspi_rootfs.ext4


sudo rm -rf temp_rootfs
sudo mkdir temp_rootfs
sudo mount -t ext4 raspi_rootfs.ext4 temp_rootfs

sudo tar -xf rootfs.tar -C temp_rootfs/

sync

sudo umount temp_rootfs

sudo cp raspi_rootfs.ext4 /d/ubuntu_swap/pi4b/

popd

更新rootfs

本来想直接uboot下载ext4文件,但是因为uboot下内存配置的问题(我还没搞清楚),所以选择在linux下去更新

首先先在uboot下修改bootarg,将root=/dev/mmcblk0p3改成root=/dev/mmcblk0p5记住不用saveenv

image-20250420221117780

setenv bootargs 'coherent_pool=1M 8250.nr_uarts=1 snd_bcm2835.enable_headphones=0 rootfstype=ext4 root=/dev/mmcblk0p5 rootwait rw'

获取上一步打包得到的raspi_rootfs.ext4文件,利用dd命令进行更新

image-20250420221211332

dd if=raspi_rootfs.ext4 of=/dev/mmcblk0p3 bs=1M count=100