Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Si applica a: ✔️ macchine virtuali Linux
L'esecuzione di un aggiornamento principale in Red Hat Enterprise Linux (RHEL) comporta la transizione da una versione principale a un'altra versione principale, ad esempio da RHEL 7 a RHEL 8 o da RHEL 8 a RHEL 9. Gli aggiornamenti principali apportano modifiche significative, tra cui nuove funzionalità, miglioramenti e miglioramenti della sicurezza e delle prestazioni. Il processo può essere complesso, ma Red Hat fornisce strumenti e linee guida per semplificare e rendere più efficiente il processo di aggiornamento.
Un esempio è lo strumento Leapp. Lo strumento Leapp è progettato per automatizzare il processo di aggiornamento dei sistemi RHEL alla versione principale successiva. Esegue controlli, fornisce raccomandazioni e consente di risolvere eventuali problemi che si verificano durante l'aggiornamento. Questo articolo illustra come risolvere i problemi comuni che si verificano quando si usa lo strumento Leapp durante un aggiornamento principale di un sistema operativo Red Hat.
Attenzione
Il 30 giugno 2024, Red Hat Enterprise Linux 7 ha raggiunto la fine della fase di supporto per la manutenzione 2. La fase di manutenzione è seguita dalla fase di durata estesa. Quando Red Hat Enterprise Linux 7 esce dalle fasi complete e di manutenzione, è necessario eseguire l'aggiornamento a Red Hat Enterprise Linux 8 o 9. Se è necessario rimanere in Red Hat Enterprise Linux 7, è consigliabile aggiungere il componente aggiuntivo Red Hat Enterprise Linux Extended Life Cycle Support (ELS).
Raccomandazioni prima dell'aggiornamento
Prima di iniziare il processo di preupgradazione e aggiornamento di Leapp, assicurarsi di eseguire le azioni seguenti:
Eseguire un backup della macchina virtuale (VM) o uno snapshot del disco del sistema operativo.
Spazio sufficiente in
/var/lib/leapp
per supportare l'aggiornamento. Una procedura consigliata consiste nell'avere almeno 2-5 GB di spazio disponibile.Configurare l'accesso alla console seriale.
Dopo aver completato queste attività, è possibile avviare i processi di preupgradazione e aggiornamento di Leapp tramite la console seriale.
Problemi e errori di insodeibi
I problemi di prevenzione sono problemi specifici identificati durante la valutazione preliminare che impediscono l'esecuzione dell'aggiornamento. Questi problemi sono critici e devono essere risolti prima di passare all'aggiornamento. È necessario eliminare i problemi di inibitore per mantenere la stabilità e le funzionalità del sistema durante e dopo l'aggiornamento.
Gli errori si riferiscono a problemi che possono verificarsi durante il processo di aggiornamento che potrebbero causare interruzioni o errori. Questi errori possono verificarsi in diverse fasi, sia durante i controlli di preupgrada che durante l'aggiornamento effettivo.
Tipi comuni di inibitori
Tipo di inibitore | Descrizione |
---|---|
Pacchetti non supportati | Pacchetti installati nel sistema corrente non disponibili o non supportati nella versione di destinazione |
Hardware incompatibile | Componenti hardware non supportati nella versione di destinazione |
Problemi di configurazione | Le configurazioni di sistema incompatibili con la nuova versione e richiedono modifiche |
Software di terze parti | Software non Red Hat che potrebbe interferire con il processo di aggiornamento |
Layout del file system | Problemi che coinvolgono il layout del file system del sistema operativo, ad esempio schemi di partizionamento non supportati nella versione di destinazione |
Modifiche di rete | Configurazioni di rete che devono essere aggiornate per allinearsi allo stack di rete della nuova versione |
Script personalizzati | Script personalizzati o processi cron che potrebbero non essere compatibili con la nuova versione |
Tipi comuni di errori
Tipo di errore | Descrizione |
---|---|
Errori di installazione | Errori che si verificano durante l'installazione dei pacchetti durante l'aggiornamento |
Errori del servizio | Servizi che non vengono avviati o interrotti correttamente durante il processo di aggiornamento |
Problemi del file system | Problemi che coinvolgono spazio su disco, danneggiamento dei file o punti di montaggio |
Problemi di rete | Problemi di connettività di rete che interessano il download o l'installazione dei pacchetti |
Trovare gli errori o gli errori nei report di Leapp
Il report Leapp si trova in /var/log/leapp/leapp-report.txt
. Aprire il report e cercare le sezioni contrassegnate come antidoibizioni. Queste sezioni elencano i problemi che devono essere risolti.
Per ogni inibitore, il report fornisce in genere passaggi di correzione dettagliati. Questi passaggi possono includere i comandi da eseguire, i pacchetti da installare o le modifiche di configurazione da apportare.
L'elenco seguente contiene occorrenze comuni di output che descrivono un operatore e la relativa correzione:
Output 1
Inhibitor: Missing package 'pkg_name' required for upgrade. Remediation: Install the missing package by running: [command] sudo yum install pkg_name
Output 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
Output 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
Output 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.
Output 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
Output 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
Output 7 dell'inibitore
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>
Output 8 dell'inibitore
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
Output 9 dell'inibitore
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
Output 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
Nota
Esaminare attentamente l'intero rapporto di preupgrade, anche se non elenca alcun abili. Il report fornisce le azioni consigliate da eseguire prima dell'aggiornamento in modo che il sistema funzioni correttamente in un secondo momento.
Dopo aver risolto tutti gli inibitori, eseguire di nuovo il controllo del preupgrado per assicurarsi che tutti i problemi vengano risolti.
Problemi comuni di Leapp Preupgrade
Sintomo di preupgrade 1: libreria urllib3 danneggiata o mancante
Una libreria urllib3 danneggiata o mancante in Python genera il messaggio di errore seguente:
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
Preupgrade soluzione 1: Reinstallare il pacchetto python-urllib3
Reinstallare il pacchetto python-urllib3 eseguendo i comandi seguenti:
sudo mv /usr/lib/python2.7/site-packages/urllib3 /tmp/
sudo yum reinstall python-urllib3
Sintomo preupgrade 2: timeout della connessione dopo 30.001 millisecondi
Un blocco di comunicazione agli indirizzi IP RHUI (Red Hat Update Infrastructure) genera il messaggio di errore seguente:
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')
Preupgrade soluzione 2: Consentire la connettività RHUI
Consentire la connettività a RHUI. Per altre informazioni, vedere Problemi di connettività RHUI di Linux.
Sintomo di preupgrade 3: un comando subscription-manager non è stato eseguito
Se si esegue l'aggiornamento di Leapp con Red Hat Subscription Manager in un'immagine con pagamento in base al consumo (PayGo), è possibile che venga visualizzato il messaggio di errore seguente:
[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.
preupgrade soluzione 3: Ignorare lo strumento subscription-manager
Quando si usa un'immagine PayGo in Azure, non è possibile eseguire lo subscription-manager
strumento perché il sistema è progettato per l'uso di RHUI. È necessario specificare il --no-rhsm
flag da ignorare subscription-manager
durante l'aggiornamento.
preupgrade sintomo 4: il preupgrade Leapp non installa pacchetti di spazio utente RHEL 8 ("execv() failed: No such file or directory")
Se si esegue il preupgrade Leapp, è possibile che venga visualizzato il messaggio di errore "Impossibile installare i pacchetti di spazio utente 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
È anche possibile che venga visualizzato il messaggio di errore "Impossibile ottenere dati sulla configurazione 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
preupgrade soluzione 4: Installare il pacchetto dnf
Assicurarsi che il pacchetto dnf sia installato e che al pacchetto non siano associati problemi o file danneggiati:
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 sintomo 5: /var/lib/leapp/el8userspace', '/bin/bash', '-c', 'su - c update-ca-trust'] non riuscito con codice di uscita 1
Se si esegue il preupgrade di Leapp, è possibile che venga visualizzato il messaggio di errore "Actor target_userspace_creator unexpectedly terminate" (Attore target_userspace_creator terminato in modo imprevisto):
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
preupgrade soluzione 5: Reinstallare i certificati ca e aggiornare l'attendibilità della CA
Si è verificato un problema all'interno del pacchetto ca-certificates esistente che ha causato l'esito negativo del update-ca-trust
comando. Per risolvere questo problema, reinstallare il pacchetto ca-certificates ed eseguire il update-ca-trust
comando :
sudo yum reinstall ca-certificates
sudo update-ca-trust
preupgrade sintomo 6: FileNotFoundError: [Errno 2] Nessun file o directory di questo tipo: '/etc/leapp/repos.d/system_upgrade/common/files/rhui/azure-XX/content-XX.crt'
Se si tenta di eseguire leapp preupgrade
su RHEL
8 per SAP-HANA
o SAPApps
che hanno la versione lapp-rhui-azure-sap-1.0.0-14.el8.noarch
dello leapp
strumento o su immagini Red Hat di base con versione leapp-rhui-azure-1.0.0-14.el8.noarch
, viene generato il messaggio di errore seguente:
====> * 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'
Le immagini SAP-HA generano:
FileNotFoundError: [Errno 2] No such file or directory:'/etc/leapp/repos.d/system_upgrade/common/files/rhui/azure-sap-ha/content-sap-ha.crt'
Le immagini SAPApps generano:
FileNotFoundError: [Errno 2] No such file or directory:'/etc/leapp/repos.d/system_upgrade/common/files/rhui/azure-sap-apps/content-sapapps.crt'
Genera immagini di base:
FileNotFoundError: [Errno 2] No such file or directory: '/etc/leapp/repos.d/system_upgrade/common/files/rhui/azure/content.crt'
preupgrade soluzione 6
La soluzione alternativa per questo problema consiste nel effettuare il downgrade della versione di leapp-rhui-azure-sap
a leapp-rhui-azure-sap-1.0.0-10.el8.noarch
per le immagini SAP e la versione di a leapp-rhui-azure-1.0.0-10.el8.noarch
per le immagini di leapp-rhui-azure
base di Red Hat.
Immagini SAP:
sudo dnf downgrade leapp-rhui-azure-sap
Immagini di base:
sudo dnf downgrade leapp-rhui-azure
Dopo aver risolto tutti gli inibitori, eseguire di nuovo il preupgrado e assicurarsi che tutti i problemi vengano risolti.
Problemi comuni relativi all'aggiornamento di Leapp
Dopo che il report di preupgradazione non mostra errori o errori e tutto è contrassegnato come risolto, continuare con l'aggiornamento di Leapp. In questo report l'output viene in genere visualizzato in verde o giallo, a indicare che è sicuro eseguire l'aggiornamento di Leapp.
I sintomi seguenti indicano alcuni errori comuni segnalati durante il processo di aggiornamento di Leapp.
Sintomo 1 problemi di aggiornamento: spazio insufficiente disponibile in /var/lib/leapp/scratch
Se si esegue l'aggiornamento di Leapp, è possibile che venga visualizzato il messaggio di errore "Spazio disponibile insufficiente" seguente:
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).
Soluzione di aggiornamento 1: Estendere il file system
Estendere il file system in cui /var/lib/leapp
è montato. In genere, il montaggio è in /dev/mapper/rootvg-varlv.
In genere, l'output viene visualizzato in verde o giallo, a indicare che è possibile eseguire in modo sicuro l'aggiornamento di Leapp.
Sintomo 2 problemi di aggiornamento: il openssl-libs-1:1.1.1k-12.el8_9.x86_64 è in conflitto con il file dal pacchetto openssl11-libs-1:1.1.1k-7.el7.x86_64
Esiste un conflitto tra le librerie dalle origini seguenti:
- Il pacchetto openssl11-libs dal repository Extra Packages for Enterprise Linux (EPEL)
- I pacchetti openssl e openssl-libs per RHEL 8 forniti da Red Hat (necessari per l'aggiornamento sul posto)
In questo caso, viene visualizzato il seguente messaggio di errore:
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.
Soluzione di aggiornamento 2: Rimuovere il pacchetto openssl11-*
Verificare che il pacchetto openssl11-* sia stato installato per un fornitore di terze parti. Se il pacchetto proviene da un fornitore di terze parti, rimuoverlo, come illustrato nei comandi seguenti.
Nota
Questo messaggio di errore di conflitto potrebbe essere generato se si usa un altro gestore pacchetti di terze parti. In questo esempio il conflitto è stato con 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
Avviso
Se altri pacchetti, ad esempio nodejs e nodejs-libs dal repository EPEL, vengono rimossi a causa dei problemi di dipendenza visualizzati nell'output precedente, eseguire il backup dei file di configurazione correlati e reinstallare manualmente gli stessi pacchetti dopo l'aggiornamento sul posto.
Sintomo 3 problemi di aggiornamento: problema con il pacchetto installato ansible-2.9.27-1.el7ae.noarch e ansible-test-2.9.27-1.el7ae.noarch
Se si esegue l'aggiornamento di Leapp, è possibile che venga visualizzato il messaggio di errore "L'esecuzione DNF non è riuscita con codice di uscita diverso da zero":
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"}
Aggiornare la soluzione 3: Rimuovere i pacchetti Ansible
L'aggiornamento sul posto non è supportato per i sistemi con prodotti Ansible. Per altre informazioni, vedere Upgrading_from_rhel_7_to_rhel_8. Per rimuovere i pacchetti Ansible, eseguire il comando seguente:
sudo yum remove ansible ansible-test
Sintomo 4 problemi di aggiornamento: ImportError: /lib64/libk5crypto.so.3: simbolo non definito
Esiste un simbolo mancante o non corrispondente nella libreria OpenSSL richiesto da libk5crypto , come illustrato nell'output seguente:
[ 1895.402427] upgrade[557]: ImportError: /lib64/libk5crypto.so.3: undefined symbol: EVP_KDF_ctrl, version OPENSSL_1_1_1b
Aggiornare la soluzione 4: rimuovere o rinominare il file in conflitto e aggiornare il linker dinamico
Un percorso personalizzato della libreria OpenSSL in /etc/ld.so.conf.d/openssl-1.1.1d.conf causa il problema:
sudo cat /etc/ld.so.conf.d/openssl-1.1.1d.conf
/usr/local/ssl/lib
Per risolvere il conflitto, rimuovere o rinominare il file. Aggiornare quindi le associazioni di runtime del linker dinamico eseguendo ldconfig
:
sudo mv /etc/ld.so.conf.d/openssl-1.1.1d.conf /tmp
sudo ldconfig
Il ldconfig
comando aggiorna i collegamenti simbolici e ricompila la cache per assicurarsi che la libreria appena installata sia collegata correttamente e disponibile per l'uso da parte di altri gruppi.
Questa azione assicura che il sistema usi le versioni corrette delle librerie OpenSSL e libk5crypto. Inoltre, questa azione deve correggere l'elemento ImportError correlato al simbolo EVP_KDF_ctrl
non definito .
Sintomo di aggiornamento 5: l'aggiornamento di Leapp non monta un dispositivo durante l'aggiornamento
Se si esegue l'aggiornamento di Leapp, è possibile che venga visualizzato il messaggio di errore di montaggio del dispositivo seguente:
[ 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()
Soluzione di aggiornamento 5: ripristinare la macchina virtuale e rimuovere l'UUID
Ripristinare la macchina virtuale (VM) dallo snapshot o dal backup.
Controllare se l'UUID del messaggio di errore esiste nella macchina virtuale. Se l'UUID esiste, impostarlo come commento o rimuoverlo dal file /etc/fstab .
sudo blkid
sudo cat /etc/fstab
Eseguire di nuovo il comando Di aggiornamento leapp.
Sintomo 6 problemi di aggiornamento: impossibile installare n/a in /sys/fs/cgroup in RHEL 7.9
Se si esegue l'aggiornamento di Leapp, è possibile che venga visualizzato il messaggio di errore "Impossibile montare" seguente:
[ 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'
L'errore di montaggio si verifica perché la versione 2 del gruppo di controllo (cgroup v2) non è supportata in RHEL 7. Per altre informazioni, vedere [IPU 7>8] Leapp ha esito negativo con cgroup v2 non supportato.
Aggiornare la soluzione 6: Rimuovere il parametro systemd.unified_cgroup_hierarchy
Ripristinare la macchina virtuale dallo snapshot o da un backup.
Prima di eseguire l'aggiornamento di Leapp, verificare se il parametro
systemd.unified_cgroup_hierarchy=1
si trova in /proc/cmdline o /etc/default/grub.Se il parametro si trova in uno di questi file, rimuovere il parametro dal file e quindi eseguire di nuovo il processo di aggiornamento leapp.
Sintomo di aggiornamento 7: l'aggiornamento di Leapp non continua dopo il riavvio e la macchina virtuale viene avviata in RHEL 8.10
Se si esegue l'aggiornamento di Leapp da RHEL 8.10 a 9.4 o 9.5, il processo di aggiornamento potrebbe non continuare dopo il riavvio richiesto. Al contrario, la macchina virtuale viene riavviata in RHEL 8.10 senza caricare l'aggiornamento speciale initramfs.
L'impostazione seguente in /etc/default/grub
potrebbe causare questo problema:
GRUB_DEFAULT=0
Poiché GRUB_DEFAULT=0
forza il sistema ad avviare sempre la prima voce di menu in GRUB, ignora la voce di aggiornamento di Leapp e continua l'avvio nell'ambiente RHEL 8.10 esistente.
Soluzione di aggiornamento 7: Modificare GRUB per usare la voce salvata
Modificare
GRUB_DEFAULT=0
inGRUB_DEFAULT=saved
:Nota
In questo esempio,
GRUB_DEFAULT
è impostato su0
, ma nell'ambiente potrebbe essere1
o un altro numero. Assicurarsi di sostituirlo di conseguenza nelsed
comando .sudo sed -i 's/^GRUB_DEFAULT=0/GRUB_DEFAULT=saved/' /etc/default/grub
Rigenerare la configurazione GRUB:
GEN 1:
sudo grub2-mkconfig -o /boot/grub2/grub.cfg
GEN 2:
grub2-mkconfig -o /boot/efi/EFI/redhat/grub.cfg
Riavviare la macchina virtuale usando la console seriale:
sudo reboot
Dopo il riavvio, se la correzione viene applicata correttamente, la macchina virtuale verrà avviata nell'aggiornamento di Leapp initramfs e verrà visualizzato un output simile alle righe seguenti nella console seriale:
[ OK ] Reached target Remote File Systems. Starting dracut pre-mount hook... [ OK ] Finished dracut pre-mount hook. Starting File System Check on /dev/mapper/rootvg-rootlv... [ OK ] Finished File System Check on /dev/mapper/rootvg-rootlv. Mounting /sysroot... [ OK ] Mounted /sysroot. [ OK ] Reached target Initrd Root File System. [ OK ] Reached target System Upgrade. Starting dracut pre-pivot and cleanup hook... Starting System Upgrade... [ 6.507621] upgrade[677]: starting upgrade hook [ 6.531079] upgrade[677]: /bin/upgrade: line 20: /sysroot/var/tmp/system-upgrade.state: No such file or directory [ 6.543603] upgrade[677]: Storage initialisation: Attempt 0 of 11. Wait 15 seconds. [ 6.608365] dracut-pre-pivot[703]: 6.605850 | /etc/multipath.conf does not exist, blocklisting all devices. [ 6.620246] dracut-pre-pivot[703]: 6.608599 | You can run "/sbin/mpathconf --enable" to create [ 6.630208] dracut-pre-pivot[703]: 6.608921 | /etc/multipath.conf. See man mpathconf(8) for more details [ OK ] Finished dracut pre-pivot and cleanup hook. [ 21.555427] upgrade[714]: 5 logical volume(s) in volume group "rootvg" now active [ 21.581296] upgrade[677]: Mounting /usr with -o defaults,ro
Questo output indica che il processo di aggiornamento di Leapp ha continuato correttamente. Al termine, la macchina virtuale deve essere avviata in RHEL 9.x.
Importante
Se l'aggiornamento di Leapp non riesce ancora senza un motivo ovvio (ad esempio quando si esegue l'aggiornamento dalla versione 7.9 alla versione 8.10 o dalla versione 8.10 alla versione 9.5), non eseguire l'aggiornamento alla versione più recente. Provare invece a eseguire l'aggiornamento a una versione intermedia , ad esempio dalla versione 7.9 alla versione 8.8 o dalla versione 8.10 alla versione 9.4, specificando il --target x.y
flag . Al termine dell'aggiornamento intermedio, è possibile provare a eseguire l'aggiornamento alla versione più recente.
Contenuto correlato
Domande frequenti sugli aggiornamenti di Leapp (domande frequenti)
Procedure consigliate e consigli per l'esecuzione dell'aggiornamento RHEL con Leapp
Dichiarazione di non responsabilità sulle informazioni di terze parti
I prodotti di terzi citati in questo articolo sono prodotti da società indipendenti da Microsoft. Microsoft non rilascia alcuna garanzia implicita o esplicita relativa alle prestazioni o all'affidabilità di tali prodotti
Dichiarazione di non responsabilità di contatti di terze parti
Microsoft fornisce informazioni di contatto di terze parti per aiutarti a trovare ulteriori informazioni su questo argomento. Queste informazioni di contatto sono soggette a modifica senza preavviso. Microsoft non garantisce l'accuratezza delle informazioni di contatto di terze parti.
Contattaci per ricevere assistenza
In caso di domande o bisogno di assistenza, creare una richiesta di supporto tecnico oppure formula una domanda nel Supporto della community di Azure. È possibile anche inviare un feedback sul prodotto al feedback della community di Azure.