How to upload rootfs

How to upload rootfs from running board?

Running systems don’t have the ability to install a new rootfs. This is intended to be installed using flash software from the host PC when the Nano is in recovery mode. However, if this is an SD card model, then you don’t really need to care about that so far as building an SD card goes. You do still need to flash an SD card model in order to have the correct QSPI memory set up for boot with that SD card, but the SD card is more or less able to be set up without being connected to a Jetson.

Hi, we upgrade rootfs from ubuntu18.04 to unbuntu20.04 by online mode, we want upload the rootfs from the device to make an image for production. Do you have some method to upload it, we used emmc module.

You can always take a clone of the rootfs while in recovery mode, which would produce both a “raw” and a “sparse” image of the rootfs (the “raw” image would have suffix “.img.raw”, the sparse image would just have suffix “.img”). Then, if you rename either one to “system.img”, and place it in the “Linux_for_Tegra/bootloader/” directory of the flash software, followed by manually flashing with the “-r” option to “reuse” the image instead of generating a new one, then this is what gets flashed (alone with non-rootfs components).

I am skeptical that an Ubuntu 20.04 image will function correctly unless you went to great pains to keep the original Xorg server release which matches the ABI needed to load the GPU driver. Making 20.04 boot is much more trivial than making it boot with hardware accelerated GPU display.

Note that I never recommend overwriting a rootfs which is the same one as is running, but technically if you were to attempt this, then the cloned image named above would be the image you’d want to write. A raw image is a bit-for-bit exact copy of the original partition (better have a lot of disk space on the host PC), and the sparse image is an image which is smaller by the amount of empty space in the partition (if the partition is full then the sparse image approaches the same size as the raw image). The flash software does not care which form you flash with, and thus the smaller sparse image is faster to flash, but only the raw image can be examined, edited, repaired, so on.

The mksparse application can create a sparse image from a raw image (just use the NULL '0x0` value for the filler).

A typical clone is with the Jetson in recovery mode and something like this from the host PC’s “Linux_for_Tegra/” directory (adjust the “jetson-nano” for your exact model as would be used to flash the Jetson):
sudo ./flash.sh -r -k APP -G my_backup.img jetson-nano mmcblk0p1
(I am assuming an eMMC model…there are important difference with an SD card model, so be sure to always mention your model)

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.