TX2 L4T 32.1 Automatic Booting

There is a way, which requires “manual” flashing:

  1. Extract Jetson_Linux_R32.1.0_aarch64.tbz2
  2. Extract Tegra_Linux_Sample-Root-Filesystem_R32.1.0_aarch64.tbz2 inside Linux_for_Tegra/rootfs (dirs extracted in a previous steps), as root
    sudo tar jxvf Tegra_Linux_Sample-Root-Filesystem_R32.1.0_aarch64.tbz2 -C rootfs
    
  3. Prevent OEM setup on frist boot:
    cat << EOF | sudo tee -a rootfs/etc/systemd/system/default.target
    [Unit]
    Requires=multi-user.target
    Wants=display-manager.service
    EOF
    
  4. Either inject root password:
    JETSONROOTPWD=$(openssl passwd -1 -salt Salz supersecretpwd)
    sudo sed -i "s|^\(root\:\)\*\(\:.*\)|\1${JETSONROOTPWD}\2|" rootfs/etc/shadow
    

    OR Generate normal user in rootfs:

    sudo apt install qemu-user-static
    sudo cp /usr/bin/qemu-aarch64-static rootfs/usr/bin/
    sudo chroot rootfs qemu-aarch64-static /bin/bash
    
    adduser nvidia
    adduser nvidia sudo
    sed -i 's|^%sudo.*|%sudo\tALL=NOPASSWD: ALL|' /etc/sudoers
    
    exit
    rm rootfs/usr/bin/qemu-aarch64-static
    
  5. Finally, flash the board with:
    sudo ./apply_binaries.sh
    sudo ./flash.sh jetson-tx2 mmcblk0p1