Pour une raison quelconque, si la transaction yum était interrompue avant qu'elle ne puisse se terminer, vous obtiendriez une installation incomplète du package. Cela implique que vous avez peu de packages dépendants installés et pas tous. Il existe 2 façons de récupérer d'une transaction yum interrompue :
- forcer la réinstallation du package
- Annuler et réinstaller le package
Avertissements
– Ne dites oui à aucune transaction sans vérifier et recouper ce qu'elle supprimerait; les bibliothèques système qui sont supprimées peuvent être problématiques. assurez-vous d'avoir une sauvegarde valide du système avant de continuer.
– si vous utilisez la commande yum history undo, oublier de vérifier les packages supprimés peut interrompre le système dans un état où rien ne fonctionnera.
Identifier la transaction yum interrompue
Vous pouvez vérifier la liste des transactions sur le système avec :
# yum history
Il y aura une transaction répertoriée avec * qui correspond à celui interrompu avant l'achèvement. Divers autres drapeaux avec leurs significations sont répertoriés ci-dessous pour votre référence :
> - The rpmdb was changed, outside yum, after the transaction. < - The rpmdb was changed, outside yum, before the transaction. * - The transaction aborted before completion. # - The transaction completed, but with a non-zero status. E - The transaction completed fine, but had warning/error output during the transaction. P - The transaction completed fine, but problems already existed in the rpmdb. s - The transaction completed fine, but --skip-broken was enabled and had to skip some packages.
La réinstallation forcée a échoué la transaction yum
Une fois cet ID identifié, vous pouvez essayer de forcer la réinstallation de la transaction yum qui a échoué. Pour ce faire, utilisez la commande redo force-reinstall option avec yum historique.
# yum history redo force-reinstall [transaction ID]
ici,
ID de transaction – est l'identifiant de la transaction.
Annuler et réinstaller le package
Vous pouvez également annuler la transaction yum, puis la refaire en utilisant le même ID de transaction yum :
# yum history undo [transaction ID]
# yum history redo [transaction ID]