Fedora: RPM Depencies in Paketen rausbekommen

Wer wissen will, welche Pakete ein anderes Programmpaket min. braucht, der wird mit diesem Bashcode glücklicher:

# rpm -qR php | grep „\.so\.“ | grep -v „(“ | awk ‚{print „rpm -qf `locate „$1″|sort -u |grep -v opt`“;}‘ | bash | sort -u
glibc-2.22-18.fc23.i686
krb5-libs-1.14.3-8.fc23.i686
libcom_err-1.42.13-3.fc23.i686
libxml2-2.9.3-2.fc23.i686
openssl-libs-1.0.2j-1.fc23.i686
pcre-8.39-6.fc23.i686
zlib-1.2.8-9.fc23.i686

rpm -qR gibt die Abhängikeiten in Dateien an und spuckt leider meistens nur Libnamen ( *.so.* ) aus. Damit diese Paketen zugeordnet werden können, müssen wir das RPM erneut zum Prüfen vorlegen, dazu finden wir die Datei auf dem Computer mit „locate“, sortieren aus, was wir nicht wollen ( hier fremdinstallierte Dateien in /opt ), fragen RPM zu welcher Datei diese Files gehören ( rpm -qf ) und sortieren doppelt Antworten raus ( sort -u ).