This is an old revision of the document!
Table of Contents
Ubuntu Server Update Procedure
This is the normal update procedure for the Ubuntu server.
The goal is to keep the system updated while avoiding problems caused by kernel or NVIDIA driver updates that require a reboot.
1. Refresh Package Information
Run:
sudo apt -o Acquire::ForceIPv4=true update
Using Acquire::ForceIPv4=true avoids the Ubuntu mirror connectivity problem that can occur when the server attempts IPv6 connections that are not available.
2. Review Available Updates
Run:
apt list --upgradable
Review the list before installing anything.
Pay particular attention to updates involving:
linux-image linux-headers nvidia-driver nvidia-utils libnvidia nvidia-kernel
Kernel or NVIDIA updates may require a reboot.
3. Install Updates
Run:
sudo apt -o Acquire::ForceIPv4=true upgrade
When prompted:
Continue? [Y/n]
Enter:
y
Ubuntu may leave some packages uninstalled because of “phasing.” This is normal.
Do not force phased updates unless there is a specific reason to do so.
4. Check Whether a Reboot Is Required
After the update finishes, run:
if [ -f /var/run/reboot-required ]; then echo "REBOOT REQUIRED" cat /var/run/reboot-required.pkgs 2>/dev/null else echo "No reboot required" fi
If a reboot is required, the output may also list the package or packages responsible.
5. Reboot If Required
If Ubuntu reports that a reboot is required:
sudo reboot
After the server comes back online, reconnect with SSH.
NVIDIA / Plex Warning
If NVIDIA libraries are updated without rebooting, the loaded NVIDIA kernel module may no longer match the installed NVIDIA libraries.
This can cause Plex Media Server to crash immediately at startup.
A symptom of this condition is:
Failed to initialize NVML: Driver/library version mismatch
If this appears after an NVIDIA update, reboot the server before troubleshooting Plex.
After rebooting, verify the NVIDIA driver with:
nvidia-smi
A normal nvidia-smi display indicates that the NVIDIA driver and libraries are communicating correctly.
6. Check Drive Mounts
After updates or a reboot, run mount check for the drives:
for m in /mnt/media{1..8} /mnt/internal; do if mountpoint -q "$m"; then echo "OK $m" else echo "MISSING $m" fi done
7. Check Server Services
After updates or a reboot, run the server health check:
echo "=== Native Services ===" for s in plexmediaserver transmission-daemon jdownloader; do printf "%-22s %s\n" "$s" "$(systemctl is-active "$s" 2>/dev/null)" done echo echo "=== Docker Services ===" for c in nginx-proxy-manager newsblur_web newsblur_celery newsblur_nginx newsblur_haproxy; do printf "%-22s " "$c" docker inspect -f '{{.State.Status}}' "$c" 2>/dev/null || echo "not found" done
Expected results:
=== Native Services === plexmediaserver active transmission-daemon active jdownloader active === Docker Services === nginx-proxy-manager running newsblur_web running newsblur_celery running newsblur_nginx running newsblur_haproxy running
Recommended Update Commands
For normal updates, use:
sudo apt -o Acquire::ForceIPv4=true update apt list --upgradable sudo apt -o Acquire::ForceIPv4=true upgrade
For this server, normally avoid using:
apt full-upgrade apt dist-upgrade
unless there is a specific reason to do so.
Also do not force phased updates unless necessary.
Quick Summary
The normal routine is:
* Refresh package information.
* Review available updates.
* Install normal eligible updates.
* Check whether Ubuntu requires a reboot.
* Reboot when required, especially after kernel or NVIDIA updates.
* Run nvidia-smi after NVIDIA-related updates.
* Run the server health check after rebooting.
