Backup Jetson Nano (Simple)

Hi, I only got my Jetson nano yesterday so please excuse my complete naivety with this platform.
And I am barely literate with Linux although I have been playing with Raspberry Pi for a year or so.
The Jetson will be a hobby AI/deep learning exploration machine. As such I expect to stuff it up a lot.
I just want to be able to backup the machine so that when I stuff it up I can fall back and try something else - this means the set of software I need cannot be determined in advance

For the Pi I could take out the sd-card and use my windows machine with Win32DiskImager to read the image to the local hard disk.
That way you end up with a series of fall back points any of which can be written back to the card if needed (also using Win32DiskImager).

So


  • I only have one linux based machine - the Jetson
  • it only has one sd-card slot
    I have searched these forums and there appear to be several themes
  1. use ‘dd’. In the end I dont think this is relevant as it is the active file system that I am trying to backup. And even if it could backup it up how could it restore it?
  2. Use ‘disks’. This just refuses to work on the active system as it cant unmount it - fair enough.
  3. Use Etcher (windows). This might work except it can only clone an SD drive to another SD drive so I will end up having to buy and manage a series of tiny cards.
  4. spend a whole lot of effort to learn how to create custom images - this kind of defeats the fallback backup idea.
    I also tried Win32DiskImager but it cant understand the card format.

Am I just asking the wrong question or are there really no system backup tools ?

Thanks
JC

You can backup and restore whole SD card of Jetson Nano.

Yes it is ‘Win32DiskImager’ but that cant read the format the Jetson card uses

Do you have another Linux computer? If so, then you can just create an image with dd while the SD card is plugged in to the Linux computer. If for example the SD card shows up on your host PC as “/dev/sdb” (you’d have to change that if it differs), then you’d be able to:
sudo dd if=/dev/sdb of=my_backup.img

Another SD card could be created via this (assumes the empty SD card is “/dev/sdb”):
sudo dd if=my_backup.img of=/dev/sdb

linuxdev, no I did not have another Linux computer but it was becoming apparent that that was the only way out of my dilemma. I installed a Ubuntu 18.4 virtual on my main windows box (oracle VM). It took a little timing with plugging things in to make sure it recognised the sd-card reader (in the Linux guest OS rather than the Windows host OS). I then used ‘disks’ to ‘create a disk image’ to a plugin USB drive. Tonight I have restored this image, again using Disks, to a new sd-card and that boots perfectly when installed to the Jetson. In hindsight I think I could have used whatever the latest Ubuntu version is, 20 something I think, rather than hunting down the 18.4 to match the Jetson. My learning is to be careful reading other peoples posts and look for the unstated assumptions – in this case you can’t backup a whole linux machine from itself. Whereas my home windows machine is happy to create disk images whilst it is in use.
Thanks for the advice.
JC

1 Like

The reason for Ubuntu 18.04 is that this is what the flash tools work with when running through JetPack/SDKM. There are many parts of this which won’t care about which “flavor” of Linux is used, but those tools for flashing expect Ubuntu 18.04. I don’t know when, but at some point in the future when kernels can be migrated I would bet Ubuntu 20.04 becomes the “go to” distribution for those tools. So having 18.04 will save you a lot of effort if you use the flash tools. Do beware though that during a flash the Jetson will repeatedly disconnect and reconnect, and unless your VM is set to always pick up the recovery mode Jetson, then flash will fail in the middle as USB is lost.

thanks for the background :)