rock3a更新sd卡uboot跟kernel

Posted by 婷 on March 3, 2024 本文总阅读量

简介

简单的记录下rock3a在linux下怎么更新ubootkernel

先上一张分区表

image-20240303203557002

dd命令参数

  • skip=xxx是在备份时对if 后面的部分也就是原文件跳过多少bs的大小再开始备份
  • seek=xxx则是在备份时对of 后面的部分也就是目标文件跳过多少bs的大小再开始写
  • dd命令默认的bs=512K

更新uboot

sync命令非常非常重要!!!

sudo dd if=idbloader.img of=/dev/mmcblk1 seek=64   conv=notrunc 
sudo dd if=u-boot.itb of=/dev/mmcblk1 seek=16384  conv=notrunc

sync
sync
sync

image-20240303203827776

更新kernel

sync命令非常非常重要!!!

dd if=boot.img of=/dev/mmcblk1 seek=32768  conv=notrunc 

sync
sync
sync

image-20240303200029500

image-20240303200043507

如果觉得太慢了,可以设置bs=1Mseek为16

dd if=boot.img of=/dev/mmcblk1 seek=16  conv=notrunc bs=1M

sync
sync
sync

image-20240303202310284

image-20240303200043507

参考链接

其他

不知道为什么同样的sd卡,在wsl下将同样的文件dd写进去,wsl下总是会把一些字节给篡改了,难道是因为dd命令对于/dev/sdx/dev/mmcblkx有不一样的地方???