Change Root File System to SD Card Directly | Forecr - Forecr.io

Change Root File System to SD Card Directly

Jetson AGX Xavier | Jetson Nano | Jetson TX2 NX | Jetson Xavier NX

16 June 2021
ENVIRONMENT

Hardware: DSBOX-NX2

OS: JetPack 4.6 (L4T-32.6.0)


How to format the SD card as ext4


In this blog post, we will explain how to move your root file system on EMMC flash to SD card storage directly. The previous version of this post is here:

https://www.forecr.io/blogs/bsp-development/changing-storage-of-the-root-file-system-emmc-to-sdmmc


The advantage of this version is the boot up speed. In the previous version, the file system into the SD card mounted with a service after the file system into the eMMC mounted. This process increases the boot up time. In this post, the file system into the SD card mounted directly without any service. On the other hand, the Jetson module won’t boot up without SD card until the extlinux.conf file changed. To avoid this problem, you can backup your Jetson module before changing the root file system.


First, connect your SD card to SD card slot and connect the basic interfaces (Ethernet, HDMI, keyboard, mouse) then power on.


Open a terminal and type these commands below:



sudo jetson_clocks
gnome-disks


The first command allows the Jetson module’s whole sources to use. The next command opens GNOME Disks application below.



Format the whole disk before creating the storage.



Then, create a new partition from SD card storage.



Format the disk as ext4 format (partition size is up to you but must be min current file system’s size).



After creating the partition, check it’s name (/dev/mmcblk1p1).


How to copy the root file system?


Download the script file from here and extract it. Then, run it with this command below:


sudo ./change_rootfs_storage_direct-emmc_to_sdmmc.sh {EXTERNAL_STORAGE}


In our setup, we typed this command below:


sudo ./change_rootfs_storage_direct-emmc_to_sdmmc.sh /dev/mmcblk1p1


A few times later, the whole file system copied and the root path changed. 



It’s time to reboot the Jetson module. Reboot it and check the Root File System copied successfully.


How to assign SD card as root file system?


Open a terminal and type this command to check the root mounted from SD card below:



df -h


After rebooting you can see that the new storage is assigned as root file system.

Thank you for reading our blog post. 


You can review the related product DSBOX-NX2.