给Jetson Nano更换eMMC闪存【下篇 - 一些问题的解释和探讨】

本文详细探讨了在使用Jetson Nano时遇到的16GB存储空间不足的问题,以及如何通过修改BSP配置文件解决。作者通过分析配置文件和刷机过程,发现只需修改ROOTFSSIZE即可改变根分区大小,从而适应更大容量的eMMC。文中还讨论了不修改配置文件直接刷机可能导致的问题,并分享了整个研究和解决过程。
摘要由CSDN通过智能技术生成

7月8日更新:添加了硬件部分的视频链接:b站BV11w411R77n

空间不足?给Jetson Nano更换emmc硬盘(扩容)_哔哩哔哩_bilibili


【声明】我还只是个Linux小白,写的东西并不一定对,仅提供一种参考思路,请各路大神莫喷,有想法可以相互交流。

【邮箱】188283942@qq.com

1  前言

        在使用Jetson Nano的过程中,遇到了16GB板载存储空间不足的情况,于是我选择了更换板载emmc闪存,方法参见我上一篇文章:

        给Jetson Nano更换eMMC闪存(扩容

        具体的步骤这里就不在详述,上一篇文章已经写了,大家可以回顾一下上一篇文章。这里主要探讨那些“为什么要这么做”、“为什么改这里就行”的问题。

        这篇文章写的可能比较乱,因为好多问题我暂时也没搞清楚,都是随性地写。如果你也遇到了类似的问题,不妨仔细读一下,也许对你有一定的参考意义。   

2  问题的探讨

2.1 内容回顾

        上一篇文章已经提到,要更换emmc,就需要修改BSP(board support package)支持包中的一些配置文件,这些配置文件会被拷贝到Linux_for_Tegra(可以理解为刷机工具)目录下,在运行刷机工具(即flash.sh)时,会根据这些配置文件生成nano的分区表,然后才将系统镜像刷入。

        这里需要探讨的就是:如果从硬件上更换emmc,而刷机时不修改相应分区表配置,会出现什么问题?为什么要这样(按上一篇文章的方法)修改配置文件?

2.2 不修改配置文件直接刷机,会遇到的问题

        一开始,我将emmc更换后,抱着侥幸心理直接刷的机(没有修改配置文件,觉得它能够自动适应不同size的emmc),结果就是无法进入系统,具体就是:

A start job is running for end-user configuration after initial OEM installation

        一直没能进入系统,百度了下,有说是swap的问题,也有说是硬盘的uuid和fstab(分区表)中的uuid不一致造成的。

        因此我就怀疑是分区表的问题,如果不修改分区表相应配置,就不能适应新更换的emmc闪存。后续解决问题的步骤其实都是围绕着分区表来进行的。

2.3 尝试从系统镜像入手,修改分区配置

        通过刷机过程(包括初次刷机、镜像恢复)可以了解到,刷机环境准备好后,会在Linux_for_Tegra/bootloader目录下生成system.img(我这里是4.8G),刷机应该就是将这个镜像刷写到emmc中(或者sd卡、nvme硬盘)。其实就有点类似树莓派给sd卡烧写系统一样。

        生成的img镜像应该是包含了分区信息的,但是我弄的时候遇到些错误,我就没接着弄下去,如果你有兴趣的话可以试试这种方法(直接通过img修改各分区的大小)。

2.4 修改分区表相关配置参数

        我没有直接对system.img文件下手,而是直接通过修改生成分区表所依赖的配置文件,来修改所生成的分区表(有一点点绕哈)。

        在官方的手册《NVIDIA Jetson Linux Developer Guide》-> Bootloader -> Partition Configureation 章节中,详细叙述了nano刷机过程中有关分区表的相关事项,包括分区表的生成方式,分区表相关配置文件的解析(释义)等内容。

        该章节中有一段话说明了分区表是如何生成的:

        During the flashing procedure, flash.sh reads in the partition configuration file, translates keywords into values specified in <device>.

评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值