Should I still be using the flash.sh method to clone the EMMC, and clone the USB separately? If using the flash.sh, I am unclear how that is executed, do I simply go to the correct folder on the HOST machine and run sudo ./flash.sh -r -k APP -G mmcblk0p1 from there?
Is there a method to take an un-configured Xavier and modify the EMMC to use the external USB without having to use an Ubuntu 18 machine?
Cloning from eMMC gives you a copy of the partition on the eMMC, but your command is missing the “name” of the clone file. It’d be more like this: sudo ./flash.sh -r -k APP -G my_backup.img mmcblk0p1
This would produce both a “sparse” image: my_backup.img
And also a “raw” image: my_backup.img.raw
Both work for flash, but the raw image is the one you can examine, modify, so on. If you were to populate a partition on the USB device, then you’d use the larger raw file. Raw is basically the bit-for-bit exact replica of the partition, while the sparse file is the same thing, but space which was not used on the filesystem is not copied (it can expand as it is installed by filling in the empty space). As a sparse file fills to 100% capacity, its size approaches the size of the raw file.
These files are huge, and take a long time to copy somewhere. I tend to throw away the sparse file, and when I am done, I just use bzip2 -9 on the raw file (which results in about the same size as the sparse file). This file takes a long time to bzip2. You could keep both, and if you do not intend to inspect or modify or use rsync to update it (rsync has a lot of cool functions for a loopback mounted raw clone), then you could use just the sparse file.
Command line flash.sh works on a much larger range of host PCs than if using the GUI (JetPack/SDKM). However, this is a manual install. After the install you’d also have to know which packages (“optional” packages, e.g., CUDA or sample programs) have your desired extras since this is not part of actual flash (this is what happens with JetPack after flash completes and the Jetson automatically reboots…then extras get added via ssh).