mehrere Yum-Repos mit Name=packages-microsoft-com-prod

mehrere Yum-Repos mit Name=packages-microsoft-com-prod

name=packages-microsoft-com-prodEine Gruppe von Amazon Linux 2-Instanzen enthält redundante Duplikate yum repositoriesmit unterschiedlichen Namen. Wie lassen sich die doppelten Verweise auf dasselbe Paket sicher entfernen, ohne dass andere Dinge, die im selben Betriebssystem ausgeführt werden, beschädigt werden?

So wird das Problem anhand eines grep veranschaulicht:

[user-name@host-name ~]$ sudo grep name=packages-microsoft-com-prod /etc/yum.repos.d/*
/etc/yum.repos.d/microsoft-prod.repo:name=packages-microsoft-com-prod
/etc/yum.repos.d/msprod.repo:name=packages-microsoft-com-prod

Die beiden Instanzen des Pakets führen dazu, dass andere Programme in den Instanzen Fehlermeldungen zurückgeben, die darauf hinweisen, dass sie nicht wissen, welches der beiden gleichnamigen Pakete sie verwenden sollen.

Ich habe es versucht yum update, aber das Problem besteht weiterhin. Ich könnte ein Bash-Skript schreiben, um nach doppelten Namen zu suchen und ein Repo zu löschen, bis keine Duplikate mehr vorhanden sind. Ich befürchte jedoch, dass das Löschen von Repos ein Hackerangriff sein könnte, der an anderen Stellen auf den Maschinen Kollateralschäden verursachen könnte.


Benutzeranfragen:

Gemäß dem Kommentar von @JeffSchaller füge ich die folgende Terminalausgabe hinzu, um die Situation näher zu erläutern:

[user-name@host-name ~]$ grep -c ^name= /etc/yum.repos.d/microsoft-prod.repo /etc/yum.repos.d/msprod.repo
/etc/yum.repos.d/microsoft-prod.repo:1
/etc/yum.repos.d/msprod.repo:1

[user-name@host-name ~]$ rpm -qf /etc/yum.repos.d/microsoft-prod.repo /etc/yum.repos.d/msprod.repo
packages-microsoft-prod-1.0-1.el7.noarch
file /etc/yum.repos.d/msprod.repo is not owned by any package

[user-name@host-name ~]$ sudo cat /etc/yum.repos.d/microsoft-prod.repo
[packages-microsoft-com-prod]
name=packages-microsoft-com-prod
baseurl=https://packages.microsoft.com/rhel/7/prod/
enabled=1
gpgcheck=1
gpgkey=https://packages.microsoft.com/keys/microsoft.asc

[user-name@host-name ~]$ sudo cat /etc/yum.repos.d/msprod.repo
[packages-microsoft-com-prod]
name=packages-microsoft-com-prod
baseurl=https://packages.microsoft.com/rhel/7/prod/
enabled=1
gpgcheck=1
gpgkey=https://packages.microsoft.com/keys/microsoft.asc

Antwort1

In der von Ihnen beschriebenen Situation würde ich dies tun, rm /etc/yum.repos.d/msprod.repoda es sich um ein Duplikat von /etc/yum.repos.d/microsoft-prod.repo handelt und außerdem keinem Paket gehört.

Um programmgesteuert zu ermitteln, ob eine Datei einem Paket gehört, überprüfen Sie den Rückgabecode von rpm:

if rpm -qf /the/file > /dev/null 2>&1
then
  : the file is owned by an RPM
else
  : the file is not owned by an RPM
fi

verwandte Informationen