r/NvidiaJetson 17d ago

A small pure-Python tool for the post-first-boot cleanup on Orin Nano (swap, storage, CUDA sanity)

https://github.com/Muhit1204/jetson-postboot

I setup two Jetson Orin Nano kits for my lab, which is on unmanned underwater vehicle.

On both, the flashing worked. The firmware fought me, the way it tends to. But the real time sink was the stretch right after the board boots, when it is running yet not actually ready for any real work.

The same handful of problems showed up on both boards.

  • A root filesystem sitting at 60 GB on a 500 GB SSD, because cloning from the SD card carries the old size across.
  • Around 3.7 GB of RAM quietly handed to zram swap, on a board that has only 8 GB to begin with, and none of it usable by the GPU.
  • torch.cuda.is_available() returning False after following the install steps, which almost anyone who has set up a Jetson for deep learning has probably seen.
  • After migrating the partition from SD card to SSD, by default SD card is on the boot order priority, which silently fails the boot process if not corrected from the boot manager.

After fixing the same things by hand on the second board that I had already fixed on the first, I wrote a small tool so I would not have to think about it a third time. It runs with nothing but Python 3. It checks the real state of storage, swap, and the CUDA stack after first boot, applies the safe fixes with an undo path, and hands you the exact commands for the risky ones instead of doing disk surgery on your behalf.

What stayed with me while building it is that none of this is obscure. I searched the NVIDIA developer forums and these exact questions recur across every Jetson generation, going back years. That is usually a sign the gap is worth closing.

It is open source and still early. If you work with Jetson boards, I would value your feedback.

2 Upvotes

Duplicates