升级操作系统#
本节提供有关升级现有 DGX OS 安装的信息。
如果您想使用 DGX OS 将系统重置到默认状态,请参阅重置系统镜像以获取更多信息。
重要提示
在升级系统或任何已安装的软件之前,请务必查阅发行说明,以获取有关可用升级的最新信息。您可以在发行指南中了解有关 DGX OS 的发行节奏和发行方法的更多信息。
此版本包含以下更新
Ubuntu ConnectX 驱动程序和 OFED 堆栈
建议客户考虑这些更新及其可能对其应用程序产生的任何影响。例如,某些依赖 MOFED 的应用程序可能会受到影响。
最佳实践支持升级选定的系统,并在部署到其他系统之前验证您的应用程序是否按预期工作。
以下是一些信息,描述了不同类型的升级之间的区别
当您执行版本升级时,您当前安装了 DGX OS 5,并且想要升级到 DGX OS 6。
您只能从最新的 DGX OS 5.x 版本升级到 DGX OS 6。请参阅从 DGX OS 5 执行版本升级以获取升级说明。这些说明还提供了有关完成通过互联网升级的信息。
当您执行软件包升级时,您想要安装自 DGX OS 6 初始版本以来在存储库中提供的升级。存储库会定期更新软件包,其中包括错误修复和安全更新。NVIDIA 存储库还包括包含最新 DGX OS 次要版本发布的新功能的软件包。请参阅执行软件包升级以获取说明。
注意
如果您想更改驱动程序或 CUDA 工具包的分支,请参阅管理和升级软件以获取说明。
升级是累积的,这意味着您的系统将安装所有可用的升级,包括来自 Ubuntu 的升级,例如内核。执行升级将安装执行升级时可用的最新版本。这些版本可能比当前的 DGX OS 版本更新。
重要提示
本章中的说明升级所有软件,这些软件可以从您配置的软件源获得更新,包括您自己安装的应用程序。如果您想阻止应用程序被升级,您可以指示 Ubuntu 软件包管理器保留当前版本。
有关更多信息,请参阅 Ubuntu 社区帮助 Wiki:软件包保留简介。通常不建议保留软件包,因为它可能会扰乱软件包依赖关系。
重要提示
当您升级 DGX OS 时,系统将保留在已安装的 GPU 驱动程序分支上,除非已安装的 GPU 驱动程序分支已停止支持。当 GPU 驱动程序分支达到停止支持时,您将自动过渡到下一个受支持的分支。请参阅更改您的 GPU 分支以获取有关手动切换 GPU 驱动程序分支的说明。
DGX OS 6 版本升级建议#
以下是当您打算从 DGX OS 5 执行版本升级时的一些附加信息
NGC 容器
对于 DGX OS 6,如果客户使用多节点训练,则应将其 NGC 容器更新到容器版本 20.10.17 或更高版本。对于所有其他用例,请参阅 NCG 框架容器支持矩阵。请参阅NVIDIA 深度学习框架文档,以获取有关最新容器版本以及如何访问这些版本的信息。
Ubuntu ConnectX 驱动程序和 OFED 堆栈
对于从 DGX OS 5 进行的版本升级,Mellanox OFED (MOFED) 驱动程序将替换为 DGX OS 6 中的 OFED 驱动程序。
建议客户考虑这些更新及其可能对其应用程序产生的任何影响。例如,某些依赖 MOFED 的应用程序可能会受到影响。
在执行版本升级后,您可以将 OFED 驱动程序替换为 MOFED。请参阅安装 Mellanox OFED 驱动程序以获取更多信息。
最佳实践支持升级选定的系统,并在部署到其他系统之前验证您的应用程序是否按预期工作。
获取 DGX 系统的发行信息#
以下是一些关于如何确定 DGX 系统的发行信息的信息。
/etc/dgx-release
文件提供发行信息,例如产品名称和序列号。此文件还通过提供以下信息来跟踪 DGX OS 软件更新的历史记录
从 ISO 镜像安装的最后一个版本的版本号和安装日期
DGX_SWBUILD_VERSION
。自上次从 ISO 镜像安装软件以来应用的每次网络更新的版本号和更新日期 (
DGX_OTA_VERSION
)。
对于 DGX OS 6,DGX_OTA_VERSION
文件指示已发布的最新 ISO 版本,并且对系统的升级包括在网络存储库中所做的更改,直到指示的日期。您可以使用此信息来确定您的 DGX 系统是否正在运行当前版本的 DGX OS 软件。
要获取 DGX 系统的发行信息,请查看/etc/dgx-release
文件的内容。例如
more /etc/dgx-release
DGX_NAME="DGX Station A100"
DGX_PRETTY_NAME="NVIDIA DGX Station A100"
DGX_SWBUILD_DATE="2022-10-11-17-49-32"
DGX_SWBUILD_VERSION="5.4.1"
DGX_COMMIT_ID="38d36e8"
DGX_PLATFORM="DGX Station A100"
DGX_SERIAL_NUMBER="1632920000024"
DGX_OTA_VERSION="5.5.0"
DGX_OTA_DATE="Mon 10 Apr 2023 10:11:07 PM PDT"
DGX_OTA_VERSION="6.0.10"
DGX_OTA_DATE="Thu Apr 13 04:55:25 PM PDT 2023"
准备升级软件#
本节提供有关在升级 DGX OS 软件之前需要完成的任务的信息。
连接到 DGX 系统控制台#
使用直接连接或通过 BMC 的远程连接连接到 DGX 系统的控制台。请参阅连接到 DGX 系统
注意
SSH 可用于执行升级。但是,如果以太网端口配置为 DHCP,则在升级期间重新启动 DGX 服务器后,IP 地址可能会更改,从而导致连接丢失。如果您通过 VPN 连接,也可能发生连接丢失。如果发生这种情况,请使用直接连接或通过 BMC 连接以继续升级过程。警告:如果 DGX 连接到 172.17.xx.xx 子网,请直接连接到 DGX 服务器控制台。
DGX OS 软件安装 Docker CE,默认情况下 Docker 容器使用 172.17.xx.xx 子网。如果 DGX 服务器位于同一子网中,您将无法建立与 DGX 服务器的网络连接。
请参阅配置 Docker IP 地址为了确保您的 DGX 系统可以访问 Docker 容器的网络接口,应将 Docker 配置为使用与 DGX 系统使用的其他网络资源不同的子网。有关如何在执行升级后更改默认 Docker 网络设置的说明。
如果您使用 GUI 连接到控制台,请参阅使用 GUI 执行软件包升级。您可以使用图形化的“软件更新程序”应用程序来管理 DGX Station 上的软件包升级。
验证 DGX 系统与存储库的连接#
在尝试完成更新之前,您可以验证 DGX 系统的网络连接是否可以访问公共存储库,并且连接是否未被防火墙或代理阻止。
在 DGX 系统上,输入以下内容
wget -O f1-changelogs http://changelogs.ubuntu.com/meta-release-lts
wget -O f2-archive http://archive.ubuntu.com/ubuntu/dists/jammy/Release
wget -O f3-security http://security.ubuntu.com/ubuntu/dists/jammy/Release
wget -O f4-nvidia-baseos http://repo.download.nvidia.com/baseos/ubuntu/jammy/x86_64/dists/jammy/Release
wget -O f5-nvidia-cuda https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/Release
wget
命令应成功,并且目录中应有五个具有非零内容的文件。
从 DGX OS 5 执行版本升级#
您可以在此处找到有关从 DGX OS 5 执行版本升级到 DGX OS 6 的信息。
重要提示
如果已安装的软件包没有升级候选版本,并且您尝试升级,则会显示错误消息。您需要使用--force
选项和升级过程。请参阅发行说明以获取 DGX OS 6 中不再提供的软件包列表。
将 DGX OS 5 升级到最新版本#
请参阅DGX OS 5 用户指南中的“升级”
在您可以执行系统的版本升级之前,您需要将当前的 DGX OS 5 升级到最新版本。以下步骤将您的系统升级到最新的 DGX OS 5 版本
如果您安装了 DGX OS 5.2 或更早版本,请参阅DGX OS 5 用户指南的“升级”部分以及以下发行说明,以获取说明和详细信息
从所有已配置的来源下载有关软件包最新版本的信息。
sudo apt update
安装您的当前 DGX OS 版本的所有可用升级。
sudo apt -y full-upgrade
注意
根据运行sudo apt -y full-upgrade
时更新的软件包,可能会提示您在执行nvidia-release-upgrade
之前重新启动系统
执行版本升级#
请按照以下步骤将您的系统从 DGX OS 5 升级到 DGX OS 6
安装
nvidia-release-upgrade
软件包以升级到最新的 DGX OS 5 版本。sudo apt install -y nvidia-release-upgrade
注意
下一步可能会安装较新的 GPU 驱动程序。要选择特定的驱动程序分支,请编辑文件
/etc/update-manager/release-upgrades.d/nvidia.cfg
并更改 DriverBranch 设置。启动 DGX OS 版本升级过程。
sudo nvidia-release-upgrade
如果您使用代理服务器,请添加
-E
选项以保留您的代理环境变量。例如sudo -E nvidia-release-upgrade
注意
某些软件包升级要求您在完成升级之前重新启动系统。请确保在出现提示时重新启动系统。
解决冲突。
请参阅解决版本升级冲突以获取详细信息和说明。
等待升级过程完成,并在系统升级完成时出现的提示符下按 y。
System upgrade is complete. Restart required To finish the upgrade, a restart is required. If you select 'y' the system will be restarted. Continue [yN]
必须重新启动系统才能完成更新过程,并确保重新启动的服务和运行时捕获任何更改。
注意
如果未出现重新启动提示,或者您在出现提示时未重新启动系统,则重新启动以完成更新过程。
sudo reboot
系统重新启动后,升级过程需要几分钟才能执行一些最终安装步骤。
解决版本升级冲突#
在升级期间,系统可能会遇到冲突或需要其他手动干预。
当提示您解决配置文件中的冲突时,请评估更改,然后再选择以下选项之一
接受维护者的版本。
保留本地版本。
手动解决差异。
某些配置文件中的冲突可能是为 DGX OS 软件自定义 Ubuntu Desktop OS 的结果。有关如何解决这些冲突的指南,请参阅发行说明中有关您要升级到的发行系列的章节。
/etc/apt/sources.list.d/dgx.list
。您应该安装软件包维护者的版本。/etc/ssh/sshd_config
。您可以保留当前安装的本地版本。
以下配置文件中的冲突是为 DGX OS 6 自定义 Ubuntu Desktop OS 的结果。
/etc/gdm3/custom.conf.distrib
。您可以保留当前安装的版本。/etc/gdm3/custom.conf
。您可以保留当前安装的版本。
如果您通过安全外壳 (SSH) 远程登录到 DGX 系统,系统会提示您是否要继续在 SSH 下运行。
Continue running under SSH? This session appears to be running under ssh. It is not recommended to perform a upgrade over ssh currently because in case of failure it is harder to recover. If you continue, an additional ssh daemon will be started at port '1022'. Do you want to continue? Continue [yN]
输入 y 以继续。
启动了一个额外的 sshd 守护程序,并显示以下消息
Starting additional ``sshd`` To make recovery in case of failure easier, an additional sshd will be started on port '1022'. If anything goes wrong with the running ssh you can still connect to the additional one. If you run a firewall, you may need to temporarily open this port. As this is potentially dangerous it's not done automatically. You can open the port with e.g.: 'iptables -I INPUT -p tcp --dport 1022 -j ACCEPT' To continue please press [ENTER]
按 Enter。
如果您收到第三方源已禁用的警告
Third party sources disabled Some third party entries in your sources.list were disabled. You can re-enable them after the upgrade with the 'software-properties' tool or your package manager. To continue please press **ENTER**
Canonical 和 DGX 存储库将保留用于升级,但任何其他存储库(例如,Google Chrome 或 VSCode)将被禁用。升级后,您必须手动重新启用您想要保留的任何第三方源。
按 Enter。
系统会要求您确认是否要开始升级。
Do you want to start the upgrade? Installing the upgrade can take several hours. Once the download has finished, the process cannot be canceled. Continue [yN] Details [d]
按 Enter。
(仅限 DGX Station) 在收到锁屏已禁用的警告后,按 Enter 继续。请勿按 Ctrl+C 来响应此警告,因为按 Ctrl+C 会终止升级过程。
如果提示您确认是否要删除过时的软件包,请选择以下选项之一
Remove obsolete packages? 371 packages are going to be removed. Removing the packages can take several hours. Continue [yN] Details [d] - Determine whether to remove obsolete packages and continue with the upgrade. - Review the list of packages that will be removed. To identify obsolete DGX OS Desktop packages, see the lists of obsolete packages in the `DGX OS Desktop Release Notes <https://docs.nvda.net.cn/dgx/dgx-os-desktop-release-notes/index.html>`__ for all releases after your current release. - If the list contains only packages that you want to remove, enter **y** to continue with the upgrade.
输入 y 以接受建议的更改,输入 n(默认)表示否,或输入 d 以获取更多详细信息。
验证升级#
以下是验证升级的步骤。
确认 Linux 内核版本。
例如,当您升级到 DGX OS 6.0 时,Linux 内核版本至少为
5.15.0-1023-nvidia
。对于您要升级到的版本的最低 Linux 内核版本,请参阅该版本的发行说明。
确认适用于 Linux 版本的 NVIDIA 显卡驱动程序版本。
nvidia-smi
例如,对于升级到 DGX OS 6.0,适用于 Linux 版本的 NVIDIA 显卡驱动程序版本至少为 525.105.17
Thu Apr 27 17:00:38 2023 +-----------------------------------------------------------------------------+ | NVIDIA-SMI 525.105.17 Driver Version: 525.105.17 CUDA Version: 12.0 | |-------------------------------+----------------------+----------------------+
从中断或失败的更新中恢复#
如果脚本在更新期间由于断电或网络连接丢失而中断,则根据问题,您需要恢复电源或恢复网络连接。
如果您在恢复电源并重新启动 DGX 系统后系统遇到内核崩溃,则无法执行网络更新。您需要使用最新的镜像重新安装 DGX OS 6。请参阅重置系统镜像。
本节提供有关如何安装 DGX OS 以获取说明并完成网络更新的信息。
如果您可以成功返回 Linux 命令行,请完成以下步骤。
重新配置软件包。
dpkg -a --configure
修复损坏的软件包安装。
apt -f install -y
确定
release-upgrader
的解压位置。/tmp/ubuntu-release-upgrader-<random-string>
启动 bash shell,转到升级程序并进行配置。
sudo bash
cd /tmp/ubuntu-release-upgrader-<random-string>
RELEASE_UPGRADER_ALLOW_THIRD_PARTY=1 ./jammy --frontend=DistUpgradeViewText
此时不要重新启动。
发出以下命令并重新启动。
bash /usr/bin/nvidia-post-release-upgrade
reboot
使用 Base Command Manager 执行版本升级#
注意
使用 Base Command Manager,当您通过在 chroot
环境中运行 apt upgrade
、apt update
或 apt install
将 DGX OS 从版本 6.0 或 6.1 升级到更高版本并遇到错误时,请按照此过程中的步骤完成升级。
删除升级期间产生错误的软件包。
apt purge -y kdump-tools nvsm
更新元数据。
sudo apt update -y
执行以下两项任务之一。
安装新的 Linux 内核。例如,
sudo apt install -y linux-image-5.15.0-1040-nvidia
将此步骤中用作示例的 Linux 内核版本 (
linux-image-5.15.0-1040-nvidia
) 替换为您的 Linux 内核版本。如果需要,执行完全升级。
sudo apt upgrade -y
重新安装所需的软件包。
对于 DGX H100/H200 系统,
sudo apt install -y dgx-h100-system-configurations kdump-tools linux-crashdump nvidia-crashdump nvsm
对于 DGX A100 系统,
sudo apt install -y dgx-a100-system-configurations kdump-tools linux-crashdump nvidia-crashdump nvsm
执行软件包升级#
NVIDIA 和 Canonical 在版本之间以更新软件包的形式提供 OS 更新,其中包含安全缓解措施和错误修复。您应该定期评估可用的更新,并根据威胁级别更新系统。
启用扩展安全维护升级#
本节提供有关 Ubuntu 的扩展安全更新 (ESM) 的信息。
作为 DGX OS 客户,您有权获得来自 Ubuntu Universe 存储库的扩展安全更新。
如果 Ubuntu Universe 存储库中的软件包有安全更新可用,您可能会在 apt upgrade
期间看到来自 ubuntu-advantage-tools
的以下 Ubuntu Pro 消息
Get more security updates through Ubuntu Pro with 'esm-apps' enabled.
Learn more about Ubuntu Pro at https://ubuntu.com/pro.
此外,DGX 用户还将收到以下 NVIDIA 消息
Your DGX contract entitles you to Extended Security Maintenance updates
for additional packages in the Ubuntu repository. Please
contact NVIDIA Support to get your key to enable this capability.”
在联系NVIDIA 企业支持以获取 Ubuntu Pro 令牌后,您可以使用以下命令将令牌与以下命令一起使用以启用扩展安全维护更新
sudo pro attach XXXXX
可以使用 sudo pro status 命令检查 Ubuntu Pro 订阅
sudo pro status
续订扩展安全维护#
Ubuntu Pro 客户端不会自动更新 Ubuntu Pro 订阅以进行令牌过期。如果您的 Ubuntu Pro 令牌过期,请刷新 DGX 系统上的令牌以续订扩展安全维护订阅。
要刷新 Ubuntu Pro 令牌
sudo pro refresh
要检查新的到期日期或 ESM 的状态
sudo pro status
使用 CLI 执行软件包升级#
您应该定期评估可用的更新,并根据威胁级别更新系统
有关 Ubuntu 可用升级的更多信息,请参阅Ubuntu Wiki 升级。
有关已知常见漏洞和暴露 (CVE) 的列表,包括可以通过更新 DGX OS 软件解决的漏洞和暴露,请参阅Ubuntu 安全公告
如果有可用的更新,您可以通过完成以下步骤来获取升级后的软件包
使用可用软件包及其版本的列表更新内部数据库。
sudo apt update
查看将要升级的软件包。
sudo apt full-upgrade -s
要防止应用程序被升级,您可以指示 Ubuntu 软件包管理器“保留软件包”。请参阅软件包保留以获取更多信息。
注意
仅在极少数情况下才应使用保留软件包,因为它可能会扰乱软件包依赖关系。
升级到最新版本。
sudo apt full-upgrade
当提示解决问题时,请回答出现的任何问题。大多数问题需要回答 Yes 或 No。
当提示选择要使用的 GRUB 配置时,请选择系统上的当前配置。
当提示选择 GRUB 安装设备时,请保留默认选择。
其他问题将取决于更新之前安装的其他软件包,以及这些软件包如何与更新交互。
如果出现一条消息,指示
nvidia-docker.service
启动失败,您可以忽略它并继续下一步。该服务将在那时启动。
升级完成后,重新启动系统。
sudo reboot
注意
升级到适用于 Linux 的 NVIDIA 显卡驱动程序需要重新启动才能完成内核升级。如果您在不重新启动 DGX 系统的情况下升级适用于 Linux 的 NVIDIA 显卡驱动程序,则当您运行 nvidia-smi
命令时,将显示错误消息。
nvidia-smi
Failed to initialize NVML: Driver/library version mismatch
管理 DGX Station 上的软件升级#
本节提供有关使用 DGX Station 上的 GUI 工具管理 DGX OS 版本之间升级的信息。
使用 GUI 执行软件包升级#
您可以使用图形化的“软件更新程序”应用程序来管理 DGX Station 上的软件包升级。
确保您以管理员用户身份登录到 DGX Station 上的 Ubuntu 桌面。
按 Super 键。
此键通常位于 Alt 键上。有关更多信息,请参阅 什么是 Super 键?。
如果您使用的是 Windows 键盘,则 Super 键通常带有 Windows 徽标,有时也称为 Windows 键或系统键。
如果您使用的是 Apple 键盘,则此键称为 Apple 键。
在搜索栏中,键入
软件更新程序
打开软件更新程序,查看可用的更新,然后单击 [立即安装]。
屏幕截图显示软件更新程序窗口。
如果没有可用的更新,软件更新程序会通知您您的软件是最新的。
如果更新需要删除过时的软件包,系统会警告您并非所有更新都可以安装。
要继续更新,请完成以下步骤
单击 [部分升级]。
查看将要删除的软件包列表。要识别过时的 DGX Station 软件包,请参阅您当前版本之后的所有版本的 DGX OS Desktop 发行说明中的过时软件包列表。
如果列表仅包含您要删除的软件包,请单击 [开始升级]。
当提示您进行身份验证时,在 [密码] 字段中键入您的密码,然后单击 [身份验证]。
更新完成后,重新启动 DGX Station。
即使没有提示您重新启动系统,也请重新启动系统以完成更新。任何对适用于 Linux 的 NVIDIA 显卡驱动程序的更新都需要重新启动。如果您在不重新启动 DGX Station 的情况下更新适用于 Linux 的 NVIDIA 显卡驱动程序,则运行 nvidia-smi
命令将显示错误消息。
nvidia-smi
Failed to initialize NVML: Driver/library version mismatch
检查 DGX Station 软件的更新#
在软件和更新中,您可以更改设置以自动检查软件包更新,并配置来自 Ubuntu 软件存储库的更新。您还可以将 DGX Station 配置为比其他更新更频繁地通知您重要的安全更新。
在以下示例中,DGX Station 配置为每天检查更新,立即显示重要的安全更新,并每两周显示其他更新。
屏幕截图显示 Ubuntu 软件和更新窗口的“更新”选项卡中的选项,该选项卡用于配置每天检查更新、立即显示重要的安全更新以及每两周显示其他更新。
