Fix Jetpack 4.5.1 flashing from docker-based sdkmanager

Hello, I’ve tried to use docker-based flashing for my Jetson AGX Xavier, but it failed with few issues (missing xxd and strings).

To share for others, I created this gist which describes how I fixed those issues.

System info:

  • host system arch linux (docker version 20.10.6)
  • target Jetson AGX Xavier 16GB
  • sdmanager 1.4.1.7402
  • jetpack 4.5.1

Let me know if any other info is needed.

2 Likes

Hi,
Is your host Linux PC on Ubuntu 20.04? Or which version do you use?

@DaneLLL I’m using Arch Linux.

Hi,
Many thanks for sharing the information. Can help users who use the same or similar platforms. Appreciate your sharing very much.

When I tried your solution, I got the following when I tried to build the revised image:

sudo: effective uid is not 0, is /usr/bin/sudo on a file system with the ‘nosuid’ option set or an NFS file system without root privileges?
The command ‘/bin/bash -c sudo apt update && sudo apt install -y binutils xxd’ returned a non-zero code: 1

And when I remove the sudo, I get:

E: Could not open lock file /var/lib/apt/lists/lock - open (13: Permission denied)
E: Unable to lock directory /var/lib/apt/lists/

Any ideas for me would be greatly appreciated.

Thanks,

bb

Hi, brbl. What OS are you using? and do you use NVIDIA’s official OS image w/o modifications from here?

Seems somehow /usr/bin/sudo (inside docker image) has non-root permissions, you can check that by adding smth like stat /usr/bin/sudo

Thanks for the reply. I am on 20.04. I am using Docker version 20.10.6, and yes, I am using the official image that you referenced. I did find an answer though below (the long of the short of it is that my docker stuff is all on a disk that was mounted with nosuid, removed that and the container built as advertised.)

2 other things were required before it all worked:

  1. See Failed to flash with SDK Manager (Docker version) - #5 by AlfredNG (need to install package on host)

  2. Use command line version of docker command as the instructions:
    [docker instructions] (Docker Images :: NVIDIA SDK Manager Documentation)

But a big thanks on this. Let me just say that this is an area where nvidia (who are generally pretty good about these things) puts too much on developer’s shoulders just to get to the starting gate.