Custom Jetson Image

I need to create a jetson linux image which is bundled with jetpack (5.1.2)components and deepstream components(6.3) as well.
Can anyone help me. I’m new to this filed as well.

You could set up the way you like, and then clone the rootfs/APP. A clone produces both a raw clone (a bit-for-bit exact image) and a sparse clone (basically the size of the content; as content fills the filesystem the sparse size approaches the raw size). The raw clone can be loopback mounted, examined, copied, modified, so on. One nice trick is to loopback mount the cloned raw image to β€œLinux_for_Tegra/rootfs/” before a normal flash. Be warned though that (A) this does modify the clone by copy of a kernel and some boot items, but otherwise is an exact copy of the rootfs, and (B) you cannot loopback mount the sparse image.

Let’s say you clone and have raw image β€œmy_backup.img.raw”. Then if you are in the β€œLinux_for_Tegra/” directory, you could:
sudo mount -o loop ./my_backup.img.raw ./rootfs/
(then flash; best this is a copy since it overwrites kernel and some boot files)

A typical clone, with the Jetson attached to the host PC in recovery mode:
sudo ./flash.sh -r -k APP -G my_backup.img jetson-agx-orin-devkit mmcblk0p1

The above clone produces a very large raw file, my_backup.img.raw, and a smaller (but still huge) sparse file, my_backup.img. I tend to throw away the sparse images, but they are faster to flash from. What this is doing though is replacing the β€œrootfs/” content with the clone, and then during a normal flash it will produce β€œLinux_for_Tegra/bootloader/system.img” based on that clone instead of being based on the sample rootfs. If you have deepstream on it, or ssh keys, or account logins, then this is all copied 100%.

1 Like

what are the steps to create a cloned image ?

Place the Jetson in recovery mode. Connect the correct USB cable (in this case one of the type-C ports, next to the 40-pin header; the same one you flash with). Then run the command line on the host PC I gave above. Basically, a recovery mode Jetson does not alter content on the Jetson, but it does turn it into a custom USB device understood by the custom USB driver. It just happens that the command line tool flash.sh is an interface to the custom USB driver (both for flashing and for clone). Just be sure you have a lot of spare disk space before you start.

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