getty programs and
sudo look correct.
Looking at the log, I see something wrong, but don’t know which specific package failure installed the Nouveau driver in place of the NVIDIA driver. To be clear, there are Nouveau packages which are valid on the system, but the one which works as the video driver itself cannot be Nouveau. These log lines are of interest:
[ 32.826] (==) Matched nouveau as autoconfigured driver 1
[ 32.826] (II) LoadModule: "nouveau"
[ 32.826] (II) Loading /usr/lib/xorg/modules/drivers/nouveau_drv.so
[ 32.827] (II) Module nouveau: vendor="X.Org Foundation"
[ 32.827] compiled for 1.20.3, module version = 1.0.16
[ 32.827] Module class: X.Org Video Driver
[ 32.827] ABI class: X.Org Video Driver, version 24.0
[ 32.827] (II) NOUVEAU driver Date: Mon Jan 28 23:25:58 2019 -0500
[ 32.827] (II) NOUVEAU driver for NVIDIA chipset families :
[ 32.827] RIVA TNT (NV04)
[ 32.827] RIVA TNT2 (NV05)
[ 32.828] GeForce 256 (NV10)
[ 32.828] GeForce 2 (NV11, NV15)
[ 32.828] GeForce 4MX (NV17, NV18)
[ 32.828] GeForce 3 (NV20)
[ 32.828] GeForce 4Ti (NV25, NV28)
[ 32.828] GeForce FX (NV3x)
[ 32.828] GeForce 6 (NV4x)
[ 32.828] GeForce 7 (G7x)
[ 32.828] GeForce 8 (G8x)
[ 32.828] GeForce 9 (G9x)
[ 32.828] GeForce GTX 2xx/3xx (GT2xx)
[ 32.828] GeForce GTX 4xx/5xx (GFxxx)
[ 32.828] GeForce GTX 6xx/7xx (GKxxx)
[ 32.828] GeForce GTX 9xx (GMxxx)
[ 32.828] GeForce GTX 10xx (GPxxx)
Any time the X server tries to load the direct rendering code, but instead finds a Nouveau driver, you will have a crash of the X server. The above could be valid on a desktop PC if and only if the NVIDIA driver were not used, but a Jetson will never have Nouveau server rendering without some explicit installation of this (which would result in crashing in most cases). It is my belief that the update somehow picked up on a Nouveau GPU package as a replacement to the NVIDIA GPU package.
The above would not directly break with a “permissions” issue, but could perhaps do so indirectly. I won’t be able to answer which packages are involved, but someone who does answer will want to know which L4T version is installed. If your SD card is mounted on your host PC, and you do the same
cd to the location of the mount, then this would tell you the exact version:
head -n 1 ./etc/nv_tegra_release
The following debug output would also possibly help in finding the package which is overwritten (also run on the host PC from the mount point of the SD card partition):
ls -ld `find ./usr/lib/aarch64-linux-gnu/ -name '*GL*'` | egrep '(GL|nvidia|tegra)'
(the leading “
.” in the find directory must be present, and the command must be run from the mount point of the SD card on the host PC)
From this someone with that particular release would be able to find out which NVIDIA package was replaced with a Nouveau package (although it might not be easy).