Linux-Kernel

刷 SD 卡前的嵌入式 linux 分區

  • June 28, 2017

我正在嘗試通過使用建構 rootfs、配置核心 4.11來建構一個karo imx6 8033 som帶有 4GB SD 卡的嵌入式 Linux 系統。buildroot我正在使用mfg工具在模組上編寫系統。刷完 SD 卡後,我看到 rootfs 分區只有 300MB。

# df -h
Filesystem                Size      Used Available Use% Mounted on
/dev/root               282.5M    136.7M    130.8M  51% /
devtmpfs                342.1M         0    342.1M   0% /dev

uboot

TX6DL U-Boot > mmc part

Partition Map for MMC device 0  --   Partition Type: DOS

Part    Start Sector    Num Sectors     UUID            Type
 1     2048            30720           0cc66cc0-01     0c
 2     32768           614400          0cc66cc0-02     83
 3     647168          7086080         0cc66cc0-03     83

每個塊為 512B,因此 614400*512=300MB。這對我的工作來說是不夠的。

我想了解在配置 rootfs、核心或 u-boot 時設置分區的哪個步驟?MFG 工具也有配置文件。如果在發送 rootfs、核心和 U-boot 時設置了這個分區,我應該更改 MFG 工具的哪個參數來增強 rootfs 分區?

刷完 SD 卡後,此連結有一種方法 。但在閃爍之前我需要一個解決方案。

我找到了解決方案。就我而言,我在 MFG 工具文件的 Profiles/TX6/OS FIRMWARE 中偶然發現了名為 ucl2.xml 文件的腳本。karo TX6 板子有 4 GB MMC,所以我在“LINUX-MMC”下做了修改,在第 104 行

   <CMD state="Updater" type="push" body="$ [ -b /dev/emmc ] && (echo label-id:0x0cc66cc0; echo size=30720,type=c; echo size=614400,type=83; echo type=83) | sfdisk /dev/emmc"> Partitioning...</CMD> 

第一個“迴聲大小”代表上面的第一個分區。second 代表第二個分區。只需將第二個分區“Num Sectors”添加到第三個分區“Num Sectors”,然後將 614400 更改為 7700480

引用自:https://unix.stackexchange.com/questions/372001