JetsonHacksNano / rootOnUSB

Set rootfs to be on a USB drive
MIT License
124 stars 26 forks source link

[BUG] Important details missing from README.md #18

Open danboid opened 4 years ago

danboid commented 4 years ago

Describe the issue Describe the issue that you are having.

I have tried following the guide to get my nano booting off USB but it didn't work. There are a few potential reasons for this.

Before I get into the issues, there is one important detail missing from this guide/hack, which should be mentioned at the start. After completing this hack, should the user be able to boot L4T directly off the USB drive or will they still need the microSD card inserted? I believe it is the latter but I'm hoping I'm wrong!

The main problem with the guide is that Step 3 is very vague. It doesn't explain the command very well and it should really give an example. I think it intends the user to do something like this, presuming that sda1 has been formatted as ext4 already:

$ sudo mount /dev/sda1 /mnt
$ ./copyRootToUSB.sh -d /mnt

I have my doubts about copyRootToUSB.sh because it doesn't use sudo for the rsync command and I think it should - the regular user not having permission to access all of the files on the disk being copied.

NVIDIA Jetson Hardware

L4T / JetPack Version

JetPack 4.4

Software version Please list the relevant software versions, for example OpenCV

To Reproduce For example, what command line did you run?

In Step 3, I ran:

$ sudo mount /dev/sda1 /mnt
$ ./copyRootToUSB.sh -d /mnt

Expected behavior

The README/guide should include example commands in step 3 for mounting the disk and using copyRootToUSB.sh. Also, this script should the changed to run rsync with sudo so that every file gets copied.

danboid commented 4 years ago

Got it working.

Although the README/guide in this repo doesn't include the copyRootToUSB.sh command to run, the guide over at https://www.jetsonhacks.com/2019/09/17/jetson-nano-run-from-usb-drive/, which is linked to already, does include an example command which is:

$ ./copyRootToUSB.sh -p /dev/sda1

This should be added to the README.md to stop anyone else opening any more unneeded bug reports, at least.

Then I messed up step 4 on my first attempt by editing /mnt/boot/extlinux/extlinux.conf instead of /boot/extlinux/extlinux.conf, which was entirely my fault.

As I suspected, this method doesn't move the boot partition and so the microSD card is still required to boot. I think this deserves to be made clear near the start of the README. I can submit a PR to add these missing bits of info if you want?