Linux
JetsonTX1

[NVIDIA Jetson TX1] Boot Ubuntu from SATA HDD

More than 1 year has passed since last update.


Environment


PreInstall


  • Download JetPack for L4T

    Download from NVIDIA Developer Site



  • Run JetPack L4T


    • ./JetPack-L4T-2.3-linux-x64.run

    • Select TX1 (64-bit) on Select Development Environment
      Screenshot from 2016-10-26 14:23:48.png

    • Press Clear Actions

    • Select Install on Flash OS
      Screenshot from 2016-10-26 14:27:17.png

    • After Flash OS, please check ubuntu on TX1 boots up from internal MMC




Connect SATA HDD to TX1


  • Power off TX1

  • Connect SATA HDD

  • Power on TX1

  • Check sudo blkid /dev/sda1 and returns the result.

  • If not format SATA HDD with ext4 format.


Change boot entrypoint from MMC to SATA HDD


  • Ensure IP Address of TX1


    • Assumed Host PC is 192.168.0.11

    • Assumed TX1 is 192.168.0.12




  • Copy Downloaded files by JetPack L4T

    rsync -avh --progress jetpack_downloads/ ubuntu@192.168.0.12:/home/ubuntu/Downloads
    



    • jetpack_downloads exists under the same directory of JetPack-L4T-X.X-linux-x64.run




  • Login to TX1, and create filesystem for SATA HDD

    ssh ubuntu@192.168.0.12
    
    cd Downloads
    tar xjf TegraXXX_Linux_XXXXXXX.tbz2
    cd Linux_for_Tegra/rootfs
    sudo tar xjf ../../Tegra_Linux_Sample-Root-Filesystem_XXXXXXX.tbz2
    cd ../
    sudo ./apply_binaries.sh
    sudo mkdir /media/ubuntu/sata
    sudo mount /dev/sda1 /media/ubuntu/sata
    cd rootfs
    sudo cp -a * /media/ubuntu/sata
    sync
    umount /media/ubuntu/sata



  • Change Boot Entrypoint to SATA

    sudo vi /boot/extlinux/extlinux.conf
    

    edit below part

    < ... root=/dev/mmcblk0p1 ...
    
    ---
    > ... root=/dev/sda1 ...



  • Reboot TX1

    sudo reboot
    



Check boot on SATA HDD

ubuntu@tegra-ubuntu:~$ df -h

Filesystem Size Used Avail Use% Mounted on
/dev/sda1 1.8T 3.3G 1.7T 1% /
none 1.8G 0 1.8G 0% /dev
tmpfs 2.0G 168K 2.0G 1% /dev/shm
tmpfs 2.0G 9.3M 2.0G 1% /run
tmpfs 5.0M 4.0K 5.0M 1% /run/lock
tmpfs 2.0G 0 2.0G 0% /sys/fs/cgroup
tmpfs 400M 68K 400M 1% /run/user/1000
/dev/mmcblk0p1 14G 7.1G 5.9G 55% /media/ubuntu/3b125ac7-4421-421e-b388-8a4a77c491ab

Here you can see that root mount point / has now 1.7TB available space of SATA HDD.

You can also see that original eMMC partition is mounted on /media/ubuntu/3b125ac7-4421-421e-b388-8a4a77c491ab.


Revert to boot from internal eMMC

In order to boot from eMMC, just revert entrypoint to eMMC by editing extlinux.conf.

sudo vi /media/ubuntu/3b125ac7-4421-421e-b388-8a4a77c491ab/boot/extlinux.conf

change

< ... root=/dev/sda1 ...

---
> ... root=/dev/mmcblk0p1 ...