适用于:✔️ Linux VM
在 Red Hat Enterprise Linux (RHEL) 上进行重大升级涉及从一个主要版本过渡到另一个主要版本,例如从 RHEL 7 到 RHEL 8 或从 RHEL 8 到 RHEL 9。 重大升级带来了重大变化,包括新功能、增强功能以及安全性和性能方面的改进。 该过程可能很复杂,但 Red Hat 提供了简化和精简升级过程的工具和指导。
一个示例是 Leapp 工具。 Leapp 工具旨在将 RHEL 系统的升级过程自动化到下一个主要版本。 它执行检查、提供建议,并帮助解决升级过程中发生的任何问题。 本文讨论如何在 Red Hat 操作系统的主要升级过程中使用 Leapp 工具时出现的常见问题进行故障排除。
注意
2024 年 6 月 30 日,Red Hat Enterprise Linux 7 已终止维护支持 2 阶段。 维护阶段之后是扩展生命阶段。 当 Red Hat Enterprise Linux 7 从完整和维护阶段过渡时,应升级到 Red Hat Enterprise Linux 8 或 9。 如果必须保留在 Red Hat Enterprise Linux 7 上,建议添加 Red Hat Enterprise Linux 扩展生命周期支持(ELS)加载项。
升级前的建议
在开始 Leapp 预升级和升级过程之前,请确保执行以下操作:
备份虚拟机(VM)或 OS 磁盘的快照。
清除足够的空间
/var/lib/leapp
以适应升级。 最佳做法是至少有 2-5 GB 的可用可用空间。设置对串行控制台的访问权限。
完成这些任务后,可以通过串行控制台启动 Leapp 预升级和升级过程。
抑制问题和错误
抑制问题 是在预升级评估期间确定的特定问题,以防止升级继续。 这些问题至关重要,必须先解决,然后才能继续升级。 必须在升级期间和之后消除抑制问题,以保持系统的稳定性和功能。
错误 是指在升级过程中可能发生的问题,这些问题可能会导致中断或失败。 在预升级检查和实际升级期间,这些错误可能在不同的阶段发生。
常见类型的抑制剂
抑制剂类型 | 说明 |
---|---|
不支持的包 | 安装在目标版本中不可用或不受支持的当前系统上的包 |
不兼容的硬件 | 目标版本中不支持的硬件组件 |
配置问题 | 与新版本不兼容且需要调整的系统配置 |
第三方软件 | 可能会干扰升级过程的非 Red Hat 软件 |
文件系统布局 | 涉及 OS 文件系统布局的问题,例如目标版本中不支持的分区方案 |
网络更改 | 必须更新的网络配置才能与新版本的网络堆栈保持一致 |
自定义脚本 | 可能与新版本不兼容的自定义脚本或 cron 作业 |
常见错误类型
错误类型 | 说明 |
---|---|
安装失败 | 在升级期间安装包时发生的错误 |
服务故障 | 在升级过程中无法正确启动或停止的服务 |
文件系统问题 | 涉及磁盘空间、文件损坏或装入点的问题 |
网络问题 | 影响下载或安装包的网络连接问题 |
在 Leapp 报告中查找抑制剂或错误
Leapp 报表位于 /var/log/leapp/leapp-report.txt
. 打开报告并查找标记为抑制物的部分。 这些部分列出了必须解决的问题。
对于每个抑制物,报告通常提供详细的修正步骤。 这些步骤可能包括要运行的命令、要安装的包或要进行的配置更改。
以下列表包含描述抑制剂及其修正的输出的常见事件:
抑制剂输出 1
Inhibitor: Missing package 'pkg_name' required for upgrade. Remediation: Install the missing package by running: [command] sudo yum install pkg_name
抑制剂输出 2
Risk Factor: high (inhibitor) Title: Possible problems with remote login using root account Summary: OpenSSH configuration file does not explicitly state the option PermitRootLogin in sshd_config file, which will default in RHEL8 to "prohibit-password". Remediation: [hint] If you depend on remote root logins using passwords, consider setting up a different user for remote administration or adding "PermitRootLogin yes" to sshd_config. If this change is ok for you, add explicit "PermitRootLogin prohibit-password" to your sshd_config to ignore this inhibitor
抑制剂输出 3
Risk Factor: high (inhibitor) Title: Missing required answers in the answer file Summary: One or more sections in answerfile are missing user choices: remove_pam_pkcs11_module_check.confirm For more information consult https://red.ht/leapp-dialogs. Remediation: [hint] Please register user choices with leapp answer cli command or by manually editing the answerfile. [command] leapp answer --section remove_pam_pkcs11_module_check.confirm=True
抑制剂输出 4
Risk Factor: high (inhibitor) Title: Use of CIFS detected. Upgrade can't proceed Summary: CIFS is currently not supported by the inplace upgrade. Remediation: [hint] Comment out CIFS entries to proceed with the upgrade.
抑制剂输出 5
Risk Factor: high (inhibitor) Title: Detected loaded kernel drivers which have been removed in RHEL 8. Upgrade cannot proceed. Summary: Support for the following RHEL 7 device drivers has been removed in RHEL 8: pata_acpi floppy Remediation: blocklist modules that are unsupported in RHEL 8 (floppy and pata_acpi) or unload the modules by running [command] sudo rmmod floppy pata_acpi
抑制剂输出 6
Risk Factor: high (inhibitor) Title: Btrfs has been removed from RHEL8 Summary: The Btrfs file system was introduced as Technology Preview with the initial release of Red Hat Enterprise Linux 6 and Red Hat Enterprise Linux 7. As of versions 6.6 and 7.4 this technology has been deprecated and removed in RHEL8. Remediation: If filesystem is currently mounted with BTRFS proceed with fresh reinstallation as it is no longer supported on Red Hat Enterprise Linux 8 If any btrfs is not currently in use by any filesystem, remove the btrfs module using the [command] modprobe -rv btrfs
抑制剂输出 7
Inhibitor: Newest installed kernel not in use Remediation: If the system is having the latest RHEL7 kernel installed, take a reboot and boot the system from the latest kernel. If the system is NOT having the latest RHEL7 kernel installed, install it using [command] yum install <latest kernel package>
抑制剂输出 8
Risk Factor: high (inhibitor) Title: Multiple devel kernels installed Summary: DNF cannot produce a valid upgrade transaction when multiple kernel-devel packages are installed. Remediation: [hint] Remove all but one kernel-devel packages before running Leapp again. [command] yum -y remove kernel-devel-X.XX.X-XXX.XXX kernel-devel-X.XX.X-XXXX.XXX.X.XXX
抑制剂输出 9
Risk Factor: medium (inhibitor) Title: A YUM/DNF repository defined multiple times Summary: The following repositories are defined multiple times inside the "upgrade" container: - repo-id Remediation: [hint] Remove the duplicate repository definitions or change repoids of conflicting repositories on the system to prevent the conflict
抑制剂输出 10
Risk Factor: high (inhibitor) Title: Firewalld Configuration AllowZoneDrifting Is Unsupported Summary: Firewalld has enabled configuration option "AllowZoneDrifiting" which has been removed in RHEL-9. New behavior is as if "AllowZoneDrifiting" was set to "no". Related links: - Changes in firewalld related to Zone Drifting: https://access.redhat.com/articles/4855631 Remediation: [hint] Set AllowZoneDrifting=no in /etc/firewalld/firewalld.conf [command] sed -i s/^AllowZoneDrifting=.*/AllowZoneDrifting=no/ /etc/firewalld/firewalld.conf
注意
仔细检查整个预降级报告,即使它没有列出任何抑制物。 报表提供升级前要执行的操作,以便系统在升级后正常运行。
修复所有抑制物后,请再次运行预升级检查,以确保所有问题都得到解决。
Leapp 预降级常见问题
预降级症状 1:损坏或缺少 urllib3 库
Python 中损坏或缺少 urllib3 库将生成以下错误消息:
Traceback (most recent call last):
File "/bin/leapp", line 9, in <module>
load_entry_point('leapp==0.16.0', 'console_scripts', 'leapp')()
File "/usr/lib/python2.7/site-packages/leapp/cli/__init__.py", line 43, in main
_load_commands(cli.command)
File "/usr/lib/python2.7/site-packages/leapp/cli/__init__.py", line 27, in _load_commands
package = pkgutil.get_loader(package_name).load_module(package_name)
File "/usr/lib64/python2.7/pkgutil.py", line 246, in load_module
mod = imp.load_module(fullname, self.file, self.filename, self.etc)
File "/usr/lib/python2.7/site-packages/leapp/cli/commands/list_runs/__init__.py", line 6, in <module>
from leapp.cli.commands.upgrade.util import fetch_all_upgrade_contexts
File "/usr/lib/python2.7/site-packages/leapp/cli/commands/upgrade/__init__.py", line 9, in <module>
from leapp.logger import configure_logger
File "/usr/lib/python2.7/site-packages/leapp/logger/__init__.py", line 10, in <module>
from leapp.utils.actorapi import get_actor_api, RequestException
File "/usr/lib/python2.7/site-packages/leapp/utils/actorapi.py", line 4, in <module>
import requests
File "/usr/lib/python2.7/site-packages/requests/__init__.py", line 58, in <module>
from . import utils
File "/usr/lib/python2.7/site-packages/requests/utils.py", line 32, in <module>
from .exceptions import InvalidURL
File "/usr/lib/python2.7/site-packages/requests/exceptions.py", line 10, in <module>
from urllib3.exceptions import HTTPError as BaseHTTPError
ImportError: No module named urllib3.exceptions
预升级解决方案 1:重新安装 python-urllib3 包
运行以下命令重新安装 python-urllib3 包:
sudo mv /usr/lib/python2.7/site-packages/urllib3 /tmp/
sudo yum reinstall python-urllib3
预降级症状 2:连接在 30,001 毫秒后超时
Red Hat 更新基础结构 (RHUI) IP 地址的通信块生成以下错误消息:
Risk Factor: high (error)
Title: Actor rpm_scanner unexpectedly terminated with exit code: 1
Summary: Traceback (most recent call last):
File "/usr/lib/python2.7/site-packages/leapp/repository/actor_definition.py", line 74, in _do_run
actor_instance.run(*args, **kwargs)
File "/usr/lib/python2.7/site-packages/leapp/actors/__init__.py", line 289, in run
self.process(*args)
File "/usr/share/leapp-repository/repositories/system_upgrade/common/actors/rpmscanner/actor.py", line 20, in process
rpmscanner.process()
File "/usr/share/leapp-repository/repositories/system_upgrade/common/actors/rpmscanner/libraries/rpmscanner.py", line 110, in process
pkg_repos = get_package_repository_data()
File "/usr/share/leapp-repository/repositories/system_upgrade/common/actors/rpmscanner/libraries/rpmscanner.py", line 77, in get_package_repository_data
return _get_package_repository_data_yum()
File "/usr/share/leapp-repository/repositories/system_upgrade/common/actors/rpmscanner/libraries/rpmscanner.py", line 31, in _get_package_repository_data_yum
for pkg in yum_base.doPackageLists().installed:
File "/usr/lib/python2.7/site-packages/yum/__init__.py", line 2981, in doPackageLists
avail = self.pkgSack.returnNewestByNameArch(patterns=patterns,
File "/usr/lib/python2.7/site-packages/yum/__init__.py", line 1075, in <lambda>
pkgSack = property(fget=lambda self: self._getSacks(),
File "/usr/lib/python2.7/site-packages/yum/__init__.py", line 778, in _getSacks
self.repos.populateSack(which=repos)
File "/usr/lib/python2.7/site-packages/yum/repos.py", line 347, in populateSack
self.doSetup()
File "/usr/lib/python2.7/site-packages/yum/repos.py", line 157, in doSetup
self.retrieveAllMD()
File "/usr/lib/python2.7/site-packages/yum/repos.py", line 88, in retrieveAllMD
dl = repo._async and repo._commonLoadRepoXML(repo)
File "/usr/lib/python2.7/site-packages/yum/yumRepo.py", line 1482, in _commonLoadRepoXML
result = self._getFileRepoXML(local, text)
File "/usr/lib/python2.7/site-packages/yum/yumRepo.py", line 1259, in _getFileRepoXML
size=102400) # setting max size as 100K
File "/usr/lib/python2.7/site-packages/yum/yumRepo.py", line 1042, in _getFile
raise e
NoMoreMirrorsRepoError: failure: repodata/repomd.xml from rhel-7-server-ansible-2-rhui-rpms: [Errno 256] No more mirrors to try.
https://rhui4-1.microsoft.com/pulp/repos/content/dist/rhel/rhui/server/7/7Server/x86_64/ansible/2/os/repodata/repomd.xml: [Errno 12] Timeout on https://rhui4-1.microsoft.com/pulp/repos/content/dist/rhel/rhui/server/7/7Server/x86_64/ansible/2/os/repodata/repomd.xml: (28, 'Connection timed out after 30001 milliseconds')
https://rhui4-1.microsoft.com/pulp/repos/content/dist/rhel/rhui/server/7/7Server/x86_64/ansible/2/os/repodata/repomd.xml: [Errno 12] Timeout on https://rhui4-1.microsoft.com/pulp/repos/content/dist/rhel/rhui/server/7/7Server/x86_64/ansible/2/os/repodata/repomd.xml: (28, 'Connection timed out after 30001 milliseconds')
https://rhui4-1.microsoft.com/pulp/repos/content/dist/rhel/rhui/server/7/7Server/x86_64/ansible/2/os/repodata/repomd.xml: [Errno 12] Timeout on https://rhui4-1.microsoft.com/pulp/repos/content/dist/rhel/rhui/server/7/7Server/x86_64/ansible/2/os/repodata/repomd.xml: (28, 'Connection timed out after 30001 milliseconds')
https://rhui4-1.microsoft.com/pulp/repos/content/dist/rhel/rhui/server/7/7Server/x86_64/ansible/2/os/repodata/repomd.xml: [Errno 12] Timeout on https://rhui4-1.microsoft.com/pulp/repos/content/dist/rhel/rhui/server/7/7Server/x86_64/ansible/2/os/repodata/repomd.xml: (28, 'Connection timed out after 30001 milliseconds')
https://rhui4-1.microsoft.com/pulp/repos/content/dist/rhel/rhui/server/7/7Server/x86_64/ansible/2/os/repodata/repomd.xml: [Errno 12] Timeout on https://rhui4-1.microsoft.com/pulp/repos/content/dist/rhel/rhui/server/7/7Server/x86_64/ansible/2/os/repodata/repomd.xml: (28, 'Connection timed out after 30001 milliseconds')
预升级解决方案 2:允许 RHUI 连接
允许连接到 RHUI。 有关详细信息,请参阅 Linux RHUI 连接问题。
预降级症状 3:订阅管理器命令未运行
如果在即用即付(PayGo)映像上运行具有 Red Hat 订阅管理器的 Leapp 升级,可能会收到以下错误消息:
[ERROR] Actor: scan_subscription_manager_info
Message:
Summary:
Details: Command ['subscription-manager', 'release'] failed with exit code 1.
Stderr: This system is not yet registered. Try 'subscription-manager register --help' for more information.
Hint: Please ensure you have a valid RHEL subscription and your network is up. If you are using proxy for Red Hat subscription-manager, please make sure it is specified inside the /etc/rhsm/rhsm.conf file. Or use the --no-rhsm option when running leapp, if you do not want to use subscription-manager for the in-place upgrade and you want to deliver all target repositories by yourself or using RHUI on public cloud.
预升级解决方案 3:绕过订阅管理器工具
在 Azure 上使用 PayGo 映像时,无法运行该工具 subscription-manager
,因为系统旨在改用 RHUI。 必须在升级期间指定要 --no-rhsm
绕过 subscription-manager
的标志。
preupgrade 症状 4:Leapp 预升级未安装 RHEL 8 用户空间包(“execv() 失败:没有此类文件或目录”
如果运行 Leapp 预升级,可能会收到以下“无法安装 RHEL 8 用户空间包”错误消息:
Risk Factor: high
Title: Unable to install RHEL 8 userspace packages.
Summary: {"details": "DNF failed to install userspace packages, likely due to the proxy config
uration detected in a repository configuration file.", "stderr": "Failed to create directory /
var/lib/leapp/scratch/mounts/root_/system_overlay//sys/fs/selinux: Read-only file system
Failed to create directory /var/lib/leapp/scratch/mounts/root_/system_overlay//sys/fs/selinux:
Read-only file system
Host and machine ids are equal (35e06890bn8g56f798g8904356fsd5f8): refusing to link journals
execv() failed: No such file or directory
还可能会收到以下“无法获取有关 DNF 配置的数据”错误消息:
Risk Factor: high
Title: Cannot obtain data about the DNF configuration
Summary: {"stderr": "Failed to retrieve machine ID: No such file or directory\n", "stdout": ""}
Key: b41a40f4129e340f05c6b14d1a850b626c4185d1
预升级解决方案 4:安装 dnf 包
请确保 已安装 dnf 包,并且没有与该包关联的问题或损坏的文件:
sudo package-cleanup --problems
Package leapp-upgrade-el7toel8-deps-0.18.0-1.el7_9.noarch has missing requires of dnf >= ('0', '4', None)
sudo yum reinstall leapp\*
sudo rpm -Va dnf\* leapp\*
.M....... g /var/log/dnf.librepo.log
.M....... g /var/log/dnf.log
.M....... g /var/log/dnf.rpm.log
.M....... g /var/log/hawkey.log
preupgrade 症状 5: /var/lib/leapp/el8userspace', '/bin/bash', '-c', 'su - -c update-ca-trust'] 失败,退出代码 1
如果运行 Leapp 预升级,可能会收到以下“执行组件target_userspace_creator意外终止”错误消息:
Factor: high error
Title: Actor target_userspace_creator unexpectedly terminated with exit code: 1
Summary: Traceback most recent call last: File '/usr/lib/python2.7/site-packages/leapp/repository/actor_definition.py',
line 74, in _do_run actor_instance.run*args, **kwargs File '/usr/lib/python2.7/site-packages/leapp/actors/__init__.py', line 289, in run
self.process*args File '/usr/share/leapp-repository/repositories/system_upgrade/common/actors/targetuserspacecreator/actor.py', line 58, in process userspacegen.perform File '/usr/lib/python2.7/site-packages/leapp/utils/deprecation.py', line 42, in process_wrapper return target_item*args, **kwargs File '/usr/share/leapp-repository/repositories/system_upgrade/common/actors/targetuserspacecreator/libraries/userspacegen.py',
line 1246, in perform _create_target_userspacecontext, indata, indata.packages, indata.files, target_repoids File '/usr/share/leapp-repository/repositories/system_upgrade/common/actors/targetuserspacecreator/libraries/userspacegen.py',
line 1108, in _create_target_userspace _prep_repository_accesscontext, target_path File '/usr/share/leapp-repository/repositories/system_upgrade/common/actors/targetuserspacecreator/libraries/userspacegen.py',
line 629, in _prep_repository_access run['chroot', target_userspace, '/bin/bash', '-c', 'su - -c update-ca-trust'] File '/usr/lib/python2.7/site-packages/leapp/libraries/stdlib/__init__.py', line 192, in run result=resultCalledProcessError: Command ['chroot', '/var/lib/leapp/el8userspace', '/bin/bash', '-c', 'su - -c update-ca-trust'] failed with exit code 1
预升级解决方案 5:重新安装 CA 证书并更新 CA 信任
导致命令失败的现有 ca-certificates 包 update-ca-trust
中出现了问题。 若要解决此问题,请重新安装 ca-certificates 包并运行以下命令 update-ca-trust
:
sudo yum reinstall ca-certificates
sudo update-ca-trust
preupgrade 症状 6:FileNotFoundError: [Errno 2] 没有此类文件或目录:'/etc/leapp/repos.d/system_upgrade/common/files/rhui/azure-XX/content-XX.crt'
如果尝试leapp preupgrade
RHEL
在 8 或SAP-HANA
具有leapp
工具版本lapp-rhui-azure-sap-1.0.0-14.el8.noarch
或SAPApps
基础 Red Hat 映像leapp-rhui-azure-1.0.0-14.el8.noarch
上运行,则会生成以下错误消息:
====> * target_userspace_creator
Initializes a directory to be populated as a minimal environment to run binaries from the target system.
Process Process-408:
Traceback (most recent call last):
File "/usr/lib64/python3.6/multiprocessing/process.py", line 258, in _bootstrap
self.run()
File "/usr/lib64/python3.6/multiprocessing/process.py", line 93, in run
self._target(*self._args, **self._kwargs)
File "/usr/lib/python3.6/site-packages/leapp/repository/actor_definition.py", line 74, in _do_run
actor_instance.run(*args, **kwargs)
File "/usr/lib/python3.6/site-packages/leapp/actors/__init__.py", line 289, in run
self.process(*args)
File "/etc/leapp/repos.d/system_upgrade/common/actors/targetuserspacecreator/actor.py", line 58, in process
userspacegen.perform()
File "/usr/lib/python3.6/site-packages/leapp/utils/deprecation.py", line 42, in process_wrapper
return target_item(*args, **kwargs)
File "/etc/leapp/repos.d/system_upgrade/common/actors/targetuserspacecreator/libraries/userspacegen.py", line 774, in perform
target_repoids = _gather_target_repositories(context, indata, prod_cert_path)
File "/etc/leapp/repos.d/system_upgrade/common/actors/targetuserspacecreator/libraries/userspacegen.py", line 714, in _gather_target_repositories
rhui.copy_rhui_data(context, indata.rhui_info.provider)
File "/etc/leapp/repos.d/system_upgrade/common/libraries/rhui.py", line 259, in copy_rhui_data
context.copy_to(os.path.join(data_dir, path_[0]), path_[1])
File "/etc/leapp/repos.d/system_upgrade/common/libraries/mounting.py", line 232, in copy_to
shutil.copy2(src, self.full_path(dst))
File "/usr/lib64/python3.6/shutil.py", line 263, in copy2
copyfile(src, dst, follow_symlinks=follow_symlinks)
File "/usr/lib64/python3.6/shutil.py", line 120, in copyfile
with open(src, 'rb') as fsrc:
FileNotFoundError: [Errno 2] No such file or directory: '/etc/leapp/repos.d/system_upgrade/common/files/rhui/azure-sap-ha/content-sap-ha.crt'
SAP-HA 映像生成:
FileNotFoundError: [Errno 2] No such file or directory:'/etc/leapp/repos.d/system_upgrade/common/files/rhui/azure-sap-ha/content-sap-ha.crt'
SAPApps 映像生成:
FileNotFoundError: [Errno 2] No such file or directory:'/etc/leapp/repos.d/system_upgrade/common/files/rhui/azure-sap-apps/content-sapapps.crt'
基础映像生成:
FileNotFoundError: [Errno 2] No such file or directory: '/etc/leapp/repos.d/system_upgrade/common/files/rhui/azure/content.crt'
预升级解决方案 6
此问题的解决方法是将 SAP 映像的版本leapp-rhui-azure-sap
降级到 leapp-rhui-azure-sap-1.0.0-10.el8.noarch
SAP 映像的版本,以及 Red Hat 基本映像的版本leapp-rhui-azure
leapp-rhui-azure-1.0.0-10.el8.noarch
。
SAP 映像:
sudo dnf downgrade leapp-rhui-azure-sap
基础映像:
sudo dnf downgrade leapp-rhui-azure
解决所有抑制物后,再次运行预降级,并确保所有问题都得到解决。
Leapp 升级常见问题
预升级报告显示没有错误或抑制,所有内容都标记为已解决,请继续执行 Leapp 升级。 在此报告中,输出通常以绿色或黄色显示,指示可以安全地运行 Leapp 升级。
以下症状表示在 Leapp 升级过程中报告的一些常见错误。
升级症状 1:/var/lib/leapp/scratch 上没有足够的空间
如果运行 Leapp 升级,可能会收到以下“空间不足”错误消息:
2024-06-14 19:31:45.552155 [ERROR] Actor: dnf_dry_run
Message: Not enough space available on /var/lib/leapp/scratch: Needed at least 1224 MiB.
Summary:
Detail: The file system hosting the /var/lib/leapp/scratch directory does not contain enough free space to proceed all parts of the in-place upgrade. Note the calculated required free space is the minimum derived from upgrades of minimal systems and the actual needed free space could be higher.
Needed at least: 1224 MiB.
Suggested free space: 2224 MiB (or more).
升级解决方案 1:扩展文件系统
扩展装载的 /var/lib/leapp
文件系统。 通常,装载位于 /dev/mapper/rootvg-varlv 上。
通常,输出以绿色或黄色显示,指示可以安全地执行 Leapp 升级。
升级症状 2:openssl-libs-1:1.1.1k-12.el8_9.x86_64 与包 openssl11-libs-1:1.1.1k-7.el7.x86_64 中的文件冲突
来自以下源的库之间存在冲突:
- 来自 Enterprise Linux 的额外包(EPEL)存储库中的 openssl11-libs 包
- Red Hat 提供的 RHEL 8 的 openssl 和 openssl-libs 包(就地升级需要)
在这种情况下,你会收到以下错误消息:
Error: Transaction test error:
file /usr/lib64/.libcrypto.so.1.1.1k.hmac from install of openssl-libs-1:1.1.1k-12.el8_9.x86_64 conflicts with file from package openssl11-libs-1:1.1.1k-7.el7.x86_64
file /usr/lib64/.libssl.so.1.1.1k.hmac from install of openssl-libs-1:1.1.1k-12.el8_9.x86_64 conflicts with file from package openssl11-libs-1:1.1.1k-7.el7.x86_64
file /usr/lib64/engines-1.1/afalg.so from install of openssl-libs-1:1.1.1k-12.el8_9.x86_64 conflicts with file from package openssl11-libs-1:1.1.1k-7.el7.x86_64
file /usr/lib64/engines-1.1/capi.so from install of openssl-libs-1:1.1.1k-12.el8_9.x86_64 conflicts with file from package openssl11-libs-1:1.1.1k-7.el7.x86_64
file /usr/lib64/engines-1.1/padlock.so from install of openssl-libs-1:1.1.1k-12.el8_9.x86_64 conflicts with file from package openssl11-libs-1:1.1.1k-7.el7.x86_64
file /usr/lib64/libcrypto.so.1.1.1k from install of openssl-libs-1:1.1.1k-12.el8_9.x86_64 conflicts with file from package openssl11-libs-1:1.1.1k-7.el7.x86_64
file /usr/lib64/libssl.so.1.1.1k from install of openssl-libs-1:1.1.1k-12.el8_9.x86_64 conflicts with file from package openssl11-libs-1:1.1.1k-7.el7.x86_64
Hint: If there was a problem reaching remote content (see stderr output) and proxy is configured in the YUM/DNF configuration file, the proxy configuration is likely causing this error. Make sure the proxy is properly configured in /etc/dnf/dnf.conf. It's also possible the proxy settings in the DNF configuration file are incompatible with the target system. A compatible configuration can be placed in /etc/leapp/files/dnf.conf which, if present, it will be used during some parts of the upgrade instead of original /etc/dnf/dnf.conf. In such case the configuration will also be applied to the target system. Note that /etc/dnf/dnf.conf needs to be still configured correctly for your current system to pass the early phases of the upgrade process.
升级解决方案 2:删除 openssl11-* 包
验证 是否为第三方供应商安装了 openssl11-* 包。 如果该包来自第三方供应商,请将其删除,如以下命令中所示。
注意
如果使用任何其他第三方包管理器,可能会生成此冲突错误消息。 在此示例中,与 openssl11 冲突。
sudo yum list installed | grep -i openssl11
sudo yum remove openssl11 openssl11-libs
openssl11.x86_64 1:1.1.1k-7.el7 @epel
openssl11-libs.x86_64 1:1.1.1k-7.el7 @epel
===============================================================================
Package Arch Version Repository Size
================================================================================
Removing:
openssl11 x86_64 1:1.1.1k-7.el7 @epel 1.0 M
openssl11-libs x86_64 1:1.1.1k-7.el7 @epel 3.6 M
Removing for dependencies:
nodejs x86_64 1:16.20.2-1.el7 @epel 290 k
nodejs-libs x86_64 1:16.20.2-1.el7 @epel 50 M
警告
如果来自 EPEL 存储库的其他包(如 nodejs 和 nodejs-libs )由于上一个输出中显示的依赖项问题而被删除,请备份相关的配置文件,并在就地升级后手动重新安装相同的包。
升级症状 3:安装包 ansible-2.9.27-1.el7ae.noarch 和 ansible-test-2.9.27-1.el7ae.noarch 有问题
如果运行 Leapp 升级,可能会收到以下“DNF 执行失败并出现非零退出代码”错误消息:
Risk Factor: high (error)
Title: DNF execution failed with non zero exit code.
Summary: {"hint": "If there was a problem reaching remote content (see stderr output) and proxy is configured in the YUM/DNF configuration file, the proxy configuration is likely causing this error. Make sure the proxy is properly configured in /etc/dnf/dnf.conf. It's also possible the proxy settings in the DNF configuration file are incompatible with the target system. A compatible configuration can be placed in /etc/leapp/files/dnf.conf which, if present, it will be used during some parts of the upgrade instead of original /etc/dnf/dnf.conf. In such case the configuration will also be applied to the target system. Note that /etc/dnf/dnf.conf needs to be still configured correctly for your current system to pass the early phases of the upgrade process.", "STDERR": "No matches found for the following disable plugin patterns: subscription-manager\nFailed loading plugin \"dnf_rhui_plugin\": No module named 'requests'\nWarning: Package marked by Leapp to upgrade not found in repositories metadata: gpg-pubkey leapp-upgrade-el7toel8 leapp python2-leapp\nTransaction check: \n\n Problem: problem with installed package ansible-2.9.27-1.el7ae.noarch\n - cannot install the best update candidate for package ansible-2.9.27-1.el7ae.noarch\n - problem with installed package ansible-test-2.9.27-1.el7ae.noarch\n - cannot install the best update candidate for package ansible-test-2.9.27-1.el7ae.noarch\n - package ansible-test-2.9.0-2.el8.noarch from ansible-2-for-rhel-8-x86_64-rhui-rpms requires ansible = 2.9.0-2.el8, but none of the providers can be installed\n - package ansible-test-2.9.1-1.el8.noarch from ansible-2-for-rhel-8-x86_64-rhui-rpms requires ansible = 2.9.1-1.el8, but none of the providers can be installed\n - package ansible-test-2.9.2-1.el8ae.noarch from ansible-2-for-rhel-8-x86_64-rhui-rpms requires ansible = 2.9.2-1.el8ae, but none of the providers can be installed\n - package ansible-test-2.9.4-1.el8ae.noarch from ansible-2-for-rhel-8-x86_64-rhui-rpms requires ansible = 2.9.4-1.el8ae, but none of the providers can be installed\n - package ansible-test-2.9.5-1.el8ae.noarch from ansible-2-for-rhel-8-x86_64-rhui-rpms requires ansible = 2.9.5-1.el8ae, but none of the providers can be installed\n - package ansible-test-2.9.6-1.el8ae.noarch from ansible-2-for-rhel-8-x86_64-rhui-rpms requires ansible = 2.9.6-1.el8ae, but none of the providers can be installed\n - package ansible-test-2.9.7-1.el8ae.noarch from ansible-2-for-rhel-8-x86_64-rhui-rpms requires ansible = 2.9.7-1.el8ae, but none of the providers can be installed\n - package ansible-test-2.9.9-1.el8ae.noarch from ansible-2-for-rhel-8-x86_64-rhui-rpms requires ansible = 2.9.9-1.el8ae, but none of the providers can be installed\n - package ansible-test-2.9.10-1.el8ae.noarch from ansible-2-for-rhel-8-x86_64-rhui-rpms requires ansible = 2.9.10-1.el8ae, but none of the providers can be installed\n - package ansible-test-2.9.11-1.el8ae.noarch from ansible-2-for-rhel-8-x86_64-rhui-rpms requires ansible = 2.9.11-1.el8ae, but none of the providers can be installed\n - package ansible-test-2.9.13-1.el8ae.noarch from ansible-2-for-rhel-8-x86_64-rhui-rpms requires ansible = 2.9.13-1.el8ae, but none of the providers can be installed\n - package ansible-test-2.9.14-1.el8ae.noarch from ansible-2-for-rhel-8-x86_64-rhui-rpms requires ansible = 2.9.14-1.el8ae, but none of the providers can be installed\n - package ansible-test-2.9.15-1.el8ae.noarch from ansible-2-for-rhel-8-x86_64-rhui-rpms requires ansible = 2.9.15-1.el8ae, but none of the providers can be installed\n - package ansible-test-2.9.16-1.el8ae.noarch from ansible-2-for-rhel-8-x86_64-rhui-rpms requires ansible = 2.9.16-1.el8ae, but none of the providers can be installed\n - package ansible-test-2.9.17-1.el8ae.noarch from ansible-2-for-rhel-8-x86_64-rhui-rpms requires ansible = 2.9.17-1.el8ae, but none of the providers can be installed\n - package ansible-test-2.9.18-1.el8ae.noarch from ansible-2-for-rhel-8-x86_64-rhui-rpms requires ansible = 2.9.18-1.el8ae, but none of the providers can be installed\n - package ansible-test-2.9.19-1.el8ae.noarch from ansible-2-for-rhel-8-x86_64-rhui-rpms requires ansible = 2.9.19-1.el8ae, but none of the providers can be installed\n - package ansible-test-2.9.20-1.el8ae.noarch from ansible-2-for-rhel-8-x86_64-rhui-rpms requires ansible = 2.9.20-1.el8ae, but none of the providers can be installed\n - package ansible-test-2.9.21-1.el8ae.noarch from ansible-2-for-rhel-8-x86_64-rhui-rpms requires ansible = 2.9.21-1.el8ae, but none of the providers can be installed\n - package ansible-test-2.9.22-1.el8ae.noarch from ansible-2-for-rhel-8-x86_64-rhui-rpms requires ansible = 2.9.22-1.el8ae, but none of the providers can be installed\n - package ansible-test-2.9.23-1.el8ae.noarch from ansible-2-for-rhel-8-x86_64-rhui-rpms requires ansible = 2.9.23-1.el8ae, but none of the providers can be installed\n - package ansible-test-2.9.24-1.el8ae.noarch from ansible-2-for-rhel-8-x86_64-rhui-rpms requires ansible = 2.9.24-1.el8ae, but none of the providers can be installed\n - package ansible-test-2.9.25-1.el8ae.noarch from ansible-2-for-rhel-8-x86_64-rhui-rpms requires ansible = 2.9.25-1.el8ae, but none of the providers can be installed\n - package ansible-test-2.9.26-1.el8ae.noarch from ansible-2-for-rhel-8-x86_64-rhui-rpms requires ansible = 2.9.26-1.el8ae, but none of the providers can be installed\n - package ansible-test-2.12.2-3.1.el8.x86_64 from rhel-8-for-x86_64-appstream-rhui-rpms requires ansible-core = 2.12.2-3.1.el8, but none of the providers can be installed\n - package ansible-test-2.12.2-4.el8_6.x86_64 from rhel-8-for-x86_64-appstream-rhui-rpms requires ansible-core = 2.12.2-4.el8_6, but none of the providers can be installed\n - package ansible-test-2.13.3-1.el8.x86_64 from rhel-8-for-x86_64-appstream-rhui-rpms requires ansible-core = 2.13.3-1.el8, but none of the providers can be installed\n - package ansible-test-2.13.3-2.el8_7.x86_64 from rhel-8-for-x86_64-appstream-rhui-rpms requires ansible-core = 2.13.3-2.el8_7, but none of the providers can be installed\n - package ansible-test-2.14.2-3.el8.x86_64 from rhel-8-for-x86_64-appstream-rhui-rpms requires ansible-core = 2.14.2-3.el8, but none of the providers can be installed\n - package ansible-test-2.14.2-4.el8_8.x86_64 from rhel-8-for-x86_64-appstream-rhui-rpms requires ansible-core = 2.14.2-4.el8_8, but none of the providers can be installed\n - package ansible-test-2.15.3-1.el8.x86_64 from rhel-8-for-x86_64-appstream-rhui-rpms requires ansible-core = 2.15.3-1.el8, but none of the providers can be installed\n - package ansible-test-2.16.3-2.el8.x86_64 from rhel-8-for-x86_64-appstream-rhui-rpms requires ansible-core = 2.16.3-2.el8, but none of the providers can be installed\n - cannot install both ansible-2.9.27-1.el8ae.noarch from ansible-2-for-rhel-8-x86_64-rhui-rpms and ansible-2.9.0-2.el8.noarch from ansible-2-for-rhel-8-x86_64-rhui-rpms\n - cannot install both ansible-2.9.27-1.el8ae.noarch from ansible-2-for-rhel-8-x86_64-rhui-rpms and ansible-2.9.1-1.el8.noarch from ansible-2-for-rhel-8-x86_64-rhui-rpms\n - cannot install both ansible-2.9.27-1.el8ae.noarch from ansible-2-for-rhel-8-x86_64-rhui-rpms and ansible-2.9.2-1.el8ae.noarch from ansible-2-for-rhel-8-x86_64-rhui-rpms\n - cannot install both ansible-2.9.27-1.el8ae.noarch from ansible-2-for-rhel-8-x86_64-rhui-rpms and ansible-2.9.4-1.el8ae.noarch from ansible-2-for-rhel-8-x86_64-rhui-rpms\n - cannot install both ansible-2.9.27-1.el8ae.noarch from ansible-2-for-rhel-8-x86_64-rhui-rpms and ansible-2.9.5-1.el8ae.noarch from ansible-2-for-rhel-8-x86_64-rhui-rpms\n - cannot install both ansible-2.9.27-1.el8ae.noarch from ansible-2-for-rhel-8-x86_64-rhui-rpms and ansible-2.9.6-1.el8ae.noarch from ansible-2-for-rhel-8-x86_64-rhui-rpms\n - cannot install both ansible-2.9.27-1.el8ae.noarch from ansible-2-for-rhel-8-x86_64-rhui-rpms and ansible-2.9.7-1.el8ae.noarch from ansible-2-for-rhel-8-x86_64-rhui-rpms\n - cannot install both ansible-2.9.27-1.el8ae.noarch from ansible-2-for-rhel-8-x86_64-rhui-rpms and ansible-2.9.9-1.el8ae.noarch from ansible-2-for-rhel-8-x86_64-rhui-rpms\n - cannot install both ansible-2.9.27-1.el8ae.noarch from ansible-2-for-rhel-8-x86_64-rhui-rpms and ansible-2.9.10-1.el8ae.noarch from ansible-2-for-rhel-8-x86_64-rhui-rpms\n - cannot install both ansible-2.9.27-1.el8ae.noarch from ansible-2-for-rhel-8-x86_64-rhui-rpms and ansible-2.9.11-1.el8ae.noarch from ansible-2-for-rhel-8-x86_64-rhui-rpms\n - cannot install both ansible-2.9.27-1.el8ae.noarch from ansible-2-for-rhel-8-x86_64-rhui-rpms and ansible-2.9.13-1.el8ae.noarch from ansible-2-for-rhel-8-x86_64-rhui-rpms\n - cannot install both ansible-2.9.27-1.el8ae.noarch from ansible-2-for-rhel-8-x86_64-rhui-rpms and ansible-2.9.14-1.el8ae.noarch from ansible-2-for-rhel-8-x86_64-rhui-rpms\n - cannot install both ansible-2.9.27-1.el8ae.noarch from ansible-2-for-rhel-8-x86_64-rhui-rpms and ansible-2.9.15-1.el8ae.noarch from ansible-2-for-rhel-8-x86_64-rhui-rpms\n - cannot install both ansible-2.9.27-1.el8ae.noarch from ansible-2-for-rhel-8-x86_64-rhui-rpms and ansible-2.9.16-1.el8ae.noarch from ansible-2-for-rhel-8-x86_64-rhui-rpms\n - cannot install both ansible-2.9.27-1.el8ae.noarch from ansible-2-for-rhel-8-x86_64-rhui-rpms and ansible-2.9.17-1.el8ae.noarch from ansible-2-for-rhel-8-x86_64-rhui-rpms\n - cannot install both ansible-2.9.27-1.el8ae.noarch from ansible-2-for-rhel-8-x86_64-rhui-rpms and ansible-2.9.18-1.el8ae.noarch from ansible-2-for-rhel-8-x86_64-rhui-rpms\n - cannot install both ansible-2.9.27-1.el8ae.noarch from ansible-2-for-rhel-8-x86_64-rhui-rpms and ansible-2.9.19-1.el8ae.noarch from ansible-2-for-rhel-8-x86_64-rhui-rpms\n - cannot install both ansible-2.9.27-1.el8ae.noarch from ansible-2-for-rhel-8-x86_64-rhui-rpms and ansible-2.9.20-1.el8ae.noarch from ansible-2-for-rhel-8-x86_64-rhui-rpms\n - cannot install both ansible-2.9.27-1.el8ae.noarch from ansible-2-for-rhel-8-x86_64-rhui-rpms and ansible-2.9.21-1.el8ae.noarch from ansible-2-for-rhel-8-x86_64-rhui-rpms\n - cannot install both ansible-2.9.27-1.el8ae.noarch from ansible-2-for-rhel-8-x86_64-rhui-rpms and ansible-2.9.22-1.el8ae.noarch from ansible-2-for-rhel-8-x86_64-rhui-rpms\n - cannot install both ansible-2.9.27-1.el8ae.noarch from ansible-2-for-rhel-8-x86_64-rhui-rpms and ansible-2.9.23-1.el8ae.noarch from ansible-2-for-rhel-8-x86_64-rhui-rpms\n - cannot install both ansible-2.9.27-1.el8ae.noarch from ansible-2-for-rhel-8-x86_64-rhui-rpms and ansible-2.9.24-1.el8ae.noarch from ansible-2-for-rhel-8-x86_64-rhui-rpms\n - cannot install both ansible-2.9.27-1.el8ae.noarch from ansible-2-for-rhel-8-x86_64-rhui-rpms and ansible-2.9.25-1.el8ae.noarch from ansible-2-for-rhel-8-x86_64-rhui-rpms\n - cannot install both ansible-2.9.27-1.el8ae.noarch from ansible-2-for-rhel-8-x86_64-rhui-rpms and ansible-2.9.26-1.el8ae.noarch from ansible-2-for-rhel-8-x86_64-rhui-rpms\n - package ansible-core-2.12.2-3.1.el8.x86_64 from rhel-8-for-x86_64-appstream-rhui-rpms conflicts with ansible < 2.10.0 provided by ansible-2.9.27-1.el8ae.noarch from ansible-2-for-rhel-8-x86_64-rhui-rpms\n - package ansible-core-2.12.2-4.el8_6.x86_64 from rhel-8-for-x86_64-appstream-rhui-rpms conflicts with ansible < 2.10.0 provided by ansible-2.9.27-1.el8ae.noarch from ansible-2-for-rhel-8-x86_64-rhui-rpms\n - package ansible-core-2.13.3-1.el8.x86_64 from rhel-8-for-x86_64-appstream-rhui-rpms conflicts with ansible < 2.10.0 provided by ansible-2.9.27-1.el8ae.noarch from ansible-2-for-rhel-8-x86_64-rhui-rpms\n - package ansible-core-2.13.3-2.el8_7.x86_64 from rhel-8-for-x86_64-appstream-rhui-rpms conflicts with ansible < 2.10.0 provided by ansible-2.9.27-1.el8ae.noarch from ansible-2-for-rhel-8-x86_64-rhui-rpms\n - package ansible-core-2.14.2-3.el8.x86_64 from rhel-8-for-x86_64-appstream-rhui-rpms conflicts with ansible < 2.10.0 provided by ansible-2.9.27-1.el8ae.noarch from ansible-2-for-rhel-8-x86_64-rhui-rpms\n - package ansible-core-2.14.2-4.el8_8.x86_64 from rhel-8-for-x86_64-appstream-rhui-rpms conflicts with ansible < 2.10.0 provided by ansible-2.9.27-1.el8ae.noarch from ansible-2-for-rhel-8-x86_64-rhui-rpms\n - package ansible-core-2.15.3-1.el8.x86_64 from rhel-8-for-x86_64-appstream-rhui-rpms conflicts with ansible < 2.10.0 provided by ansible-2.9.27-1.el8ae.noarch from ansible-2-for-rhel-8-x86_64-rhui-rpms\n - package ansible-core-2.16.3-2.el8.x86_64 from rhel-8-for-x86_64-appstream-rhui-rpms conflicts with ansible < 2.10.0 provided by ansible-2.9.27-1.el8ae.noarch from ansible-2-for-rhel-8-x86_64-rhui-rpms\n - ansible-test-2.9.27-1.el7ae.noarch from @System does not belong to a distupgrade repository\n - ansible-2.9.27-1.el7ae.noarch from @System does not belong to a distupgrade repository\n", "STDOUT": "Last metadata expiration check: 0:02:18 ago on Fri Jun 14 18:01:34 2024.\n"}
升级解决方案 3:删除 Ansible 包
对于具有任何 Ansible 产品的系统,不支持就地升级。 有关详细信息,请参阅 Upgrading_from_rhel_7_to_rhel_8。 若要删除 Ansible 包,请运行以下命令:
sudo yum remove ansible ansible-test
升级症状 4:ImportError: /lib64/libk5crypto.so.3:未定义的符号
libk5crypto 需要的 OpenSSL 库中存在不匹配或缺失的符号,如以下输出所示:
[ 1895.402427] upgrade[557]: ImportError: /lib64/libk5crypto.so.3: undefined symbol: EVP_KDF_ctrl, version OPENSSL_1_1_1b
升级解决方案 4:删除或重命名冲突中的文件,并更新动态链接器
/etc/ld.so.conf.d/openssl-1.1.1d.conf 中的自定义 OpenSSL 库路径会导致问题:
sudo cat /etc/ld.so.conf.d/openssl-1.1.1d.conf
/usr/local/ssl/lib
若要解决冲突,请删除或重命名此文件。 然后,通过运行以下命令 ldconfig
更新动态链接器运行时绑定:
sudo mv /etc/ld.so.conf.d/openssl-1.1.1d.conf /tmp
sudo ldconfig
该 ldconfig
命令更新符号链接并重新生成缓存,以确保新安装的库已正确链接,可供其他组使用。
此操作可确保系统使用正确版本的 OpenSSL 和 libk5crypto 库。 此外,此操作应修复与未定义符号 EVP_KDF_ctrl
相关的 ImportError。
升级症状 5:Leapp 升级不会在升级过程中装载设备
如果运行 Leapp 升级,可能会收到以下设备装载错误消息:
[ 4.509104] upgrade[569]: Mounting /usr with -o defaults,ro
[ 4.590197] upgrade[596]: Spawning container sysroot on /sysroot.
[ 4.608522] upgrade[596]: Press ^] three times within 1s to kill container.
[ 4.909441] upgrade[599]: mount: can't find UUID=c044351a-93a0-45f5-afs3-d361181215b8
[ 44.830831] upgrade[638]: ==> Processing phase `InitRamStart`
[ 44.843736] upgrade[638]: ====> * remove_upgrade_boot_entry
[ 44.863656] upgrade[638]: Remove boot entry for Leapp provided initramfs.
[ 47.734944] upgrade[1155]: Process Process-230:
[ 47.745684] upgrade[1155]: Traceback (most recent call last):
[ 47.756230] upgrade[1155]: File "/usr/lib64/python2.7/multiprocessing/process.py", line 258, in _bootstrap
[ 47.764584] upgrade[1155]: self.run()
升级解决方案 5:还原 VM 并删除 UUID
从快照或备份还原虚拟机(VM)。
检查 VM 上是否存在错误消息中的 UUID。 如果 UUID 存在,请将其注释掉或将其从 /etc/fstab 文件中删除。
sudo blkid
sudo cat /etc/fstab
再次运行 Leapp 升级命令。
升级症状 6:未能在 RHEL 7.9 上的 /sys/fs/cgroup 上装载 n/a
如果运行 Leapp 升级,可能会收到以下“无法装载”错误消息:
[ 4.815758] upgrade[599]: Failed to mount n/a on /sys/fs/cgroup (MS_RDONLY|MS_NOSUID|MS_NODEV|MS_NOEXEC|MS_REMOUNT|MS_STRICTATIME "mode=755"): Invalid argument
[ 4.812413] kernel: cgroup2: Unknown parameter 'mode'
装载失败的原因是 RHEL 7 不支持控制组版本 2(cgroup v2)。 有关详细信息,请参阅 [IPU 7>8] Leapp 失败,cgroup v2 不受支持。
升级解决方案 6:删除systemd.unified_cgroup_hierarchy参数
从快照或备份还原 VM。
在运行 Leapp 升级之前,请验证参数
systemd.unified_cgroup_hierarchy=1
位于 /proc/cmdline 还是 /etc/default/grub 中。如果该参数位于其中一个文件中,请从文件中删除该参数,然后再次运行 Leapp 升级过程。
重要
如果 Leapp 升级仍因任何明显原因而失败(例如从版本 7.9 升级到版本 8.10 或从版本 8.10 升级到版本 9.4 时),请不要升级到最新版本。 而是尝试通过指定 --target x.y
标志升级到中间版本(例如从版本 7.9 升级到版本 8.8 或版本 8.10 到版本 9.2)。 中间升级成功后,可以尝试升级到最新版本。
相关内容
第三方信息免责声明
本文中提到的第三方产品由 Microsoft 以外的其他公司提供。 Microsoft 对这些产品的性能和可靠性不作任何明示或默示担保。
第三方联系人免责声明
Microsoft 会提供第三方联系信息来帮助你查找有关本主题的其他信息。 此联系信息可能会更改,恕不另行通知。 Microsoft 不保证第三方联系信息的准确性。
联系我们寻求帮助
如果你有任何疑问或需要帮助,请创建支持请求或联系 Azure 社区支持。 你还可以将产品反馈提交到 Azure 反馈社区。