Nano 4GB kit boot issues from SSD

I see. Please let me explain what causes your problem and attach the document to you.

Actually, what I was trying to say is this kind of method not really erase or cause any problem to your data on ssd. If you unplug the ssd from the jetson nano and plug it to some other host pc, I believe you shall still see the data on it.

The real problem of that method from jetsonhacks is: this method not really “boot from ssd” and it does not allow you to hotplug the usb ssd. It is easy to get confused here so let me share some detail…
The method from jetsonhacks is actually doing below steps:

Start the boot sequence → bootloader to check the “boot order” → the boot order says “sd > usb ssd” → Search the “extlinux.conf” and kernel from sd card (This is “boot from sd card”) → the “extlinux.conf” tells the kernel to use the file system on USB ssd.

Thus, when you remove the USB from your jetson nano, the last step here goes wrong. Kernel is not able to find your usb ssd as file system. Thus, it stuck in initrd.

The real key point here is to change the boot order and do not touch the extlinux.conf on your sdcard so that nano has a way to fallback when usb drive is gone.
Please refer to this document → Flashing to a USB Drive

https://docs.nvidia.com/jetson/l4t/index.html#page/Tegra%20Linux%20Driver%20Package%20Development%20Guide/flashing.html#wwpID0E0HM0HA

And you need to prepare the usb-ttl cable as below tutorial. You need have an interface to change the boot order when bootloader appears.

When you see “uboot” words appear in serial console, type anything on your keyboard to interrupt it and enter interactive mode.

Under such mode, use below command to change boot order.

printenv boot_targets
setenv boot_targets usb0 mmc1 mmc0 nvme0 pxe dhcp
saveenv
boot

#edit: add few statements inline