Domanda :Come trovare il pacchetto con un file mancante nel sistema utilizzando YUM? Questa procedura è applicabile anche quando il file non è mancante ed è già installato, ma per qualche motivo è necessario conoscere il pacchetto che lo fornisce.
Lo strumento di gestione dei pacchetti YUM utilizza i repository per recuperare informazioni e scaricare i pacchetti. Le configurazioni dei repository sono in /etc/yum.repos.d/*.repo file e in questi file possono essere più repository abilitati e altri disabilitati.
1. Il sottocomando da utilizzare è "fornisce". Ad esempio, cercando il file /usr/src/kernels/4.1.12-124.18.6.el7uek.x86_64:
# yum provides /usr/src/kernels/4.1.12-124.18.6.el7uek.x86_64
Questo mostrerà il repository e il pacchetto che devono essere installati per averlo nel sistema.
2. Ma il comando potrebbe non trovare il pacchetto perché il repository che lo ha è disabilitato:
No Matches found
In tal caso si può tentare di abilitare tutti o solo un repository per la ricerca. Per quello deve usare l'opzione –enablerepo . Ad esempio, utilizzando tutti i repository configurati nei file .repo, abilitati e disabilitati.
# yum provides /usr/src/kernels/4.1.12-124.18.6.el7uek.x86_64 --enablerepo=*
o solo un repository specifico:
# yum provides /usr/src/kernels/4.1.12-124.18.6.el7uek.x86_64 --enablerepo=ol7_UEKR4_archive
o più che corrispondono a un'espressione regolare
# yum provides /usr/src/kernels/4.1.12-124.18.6.el7uek.x86_64 --enablerepo=ol7_*_archive
Esempio di output:
kernel-uek-devel-4.1.12-124.18.6.el7uek.x86_64 : Development package for building kernel modules to match the kernel Repo : ol7_UEKR4_archive Matched from: Filename : /usr/src/kernels/4.1.12-124.18.6.el7uek.x86_64
3. Se l'obiettivo finale è installarlo ed è stato possibile solo utilizzando l'opzione –enablerepo, utilizzare la stessa opzione per installare il pacchetto:
# yum install kernel-uek-devel-4.1.12-124.18.6.el7uek.x86_64 --enablerepo=ol7_UEKR4_archive
Se si cerca un file di cui non si conosce il percorso, è possibile utilizzare un percorso file con caratteri jolly:
# yum provides */fileX