Eisfair old Libraries

Auf einem Eisfair-Server kann sich über die Jahren eine sehr große Anzahl von Libraries ansammeln, welche zumeist irgend wann einmal als Abhängigkeit für eine Anwendung mit installiert wurden, zwischenzeitlich aber längst durch aktuellere Versionen ersetzt, oder gar nicht mehr existent sind. Möchte man seinen Server etwas "sauber" halten und von alten und nicht mehr benötigten Libraries befreien, ist das mit Bordmitteln nur mit sehr großem Aufwand bis gar nicht möglich. Man muss bei jeder einzelne Library mit Eisman abfragen, ob es noch irgend welche Abhängigkeiten gibt oder ob die Library auf Pack-Eis evtl. gar nicht mehr gelistet, also ersatzlos gestrichen ist. Aufgrund der schieren Menge an Libraries auf einem Eisfair-Server, ist dieses Vorgehen im Grunde ausgeschlossen und genau an dieser Stelle setzt mein Script "Eisfair old Libraries" an.

Für alle auf dem Eisfair-Server installierten Libraries wird eine Abfrage an Eisman gestellt, ob die jeweilige Library noch von irgend einer Anwendung benötigt wird und ob sie auf Pack-Eis noch gelistet ist. Libraries die auf diese Weise als nicht mehr nötig identifiziert wurden, können interaktiv oder vollautomatisch deinstalliert werden. Ebenso ist es möglich, nur einen Output der identifiziertet Libraries, ohne einen aktiven Eingriff in das System, zu erhalten.

Downloaden und entpacken.
Das Script "Eisfair old Libraries" kann entweder hier oder mit den folgenden Befehlen direkt auf dem Eisfair-Server und mit Root Berechtigung herunterladen und anschließend entpacken werden.
curl -O https://schabau.eu/scripte/sh/eisfair_old_lib.tar.bz2
tar -xjf eisfair_old_lib.tar.bz2 -C /usr/local/bin eisfair_old_lib.sh
Script ausführen.
Als root kann das Script nun mit dem Befehl eisfair_old_lib.sh gestartet werden. Wurde das Script an einen anderen Ort entpackt, ist evtl. eine zusätzliche Pfadangabe von Nöten.
Abfrage der Versionsnummer.
Vom Script wird zunächst eine Versionsnummer abgefragt, die mit [Enter] zu bestätigen ist. Die Suche nach nicht mehr benötigten Libraries kann so auf bestimmte Versionen beschränkt werden. Ohne Angabe einer Versionsnummer werden alle installierten Libraries durchsucht, was einige Zeit in Anspruch nehmen kann.
Auswahl des Modus.
Man hat nun die Auswahl, welchen Modus man verwenden möchte. Standard oder [Enter] ist der [I]nteraktive Modus, bei dem bei jeder zu deinstallierenden Library nachgefragt wird, ob diese deinstalliert werden soll, oder nicht. Beim [A]utomatischen Modus werden alle als nicht benötigt identifizierten Libraries ohne Nachfrage deinstalliert. Der Modus [O]utput listet die nicht mehr benötigten Libraries auf, führt aber keine aktive Aktion am System aus. Mit E[x]it wird das Script beendet.
Vorgang wiederholen.
Es ist anzuraten, den Vorgang mindestens einmal zu wiederholen. Vom Script wird überprüft, ob irgend welche Abhängigkeiten bestehen. Abhängigkeiten können aber auch bei Libraries untereinander bestehen. Wurde eine Library deinstalliert, ist eine zuvor bestandene Abhängigkeit bei einer anderen Library evtl. nicht mehr gegeben und auch diese Library kann nun deinstalliert werden.