NetWorker: Fehler: "Ist /usr/sbin/nsrd ein Link oder ein Startskript? Bitte überprüfen Sie! Binary Executable needed as argument" beim Ausführen des Linux_pkgcore.sh Skripts
Summary: NetWorker-Problem mit /usr/sbin/nsrd-Version 19.12.0.1, das von linux_pkgcore.sh Skript aufgrund positionsunabhängiger Codeeinstellungen als freigegebenes Objekt, nicht als ausführbare Datei identifiziert wurde. Ein Upgrade der Datei auf Version 5.39 oder höher behebt das Problem. ...
Symptoms
Fehler bei der Skriptausführung
Die Spalte linux_pkgcore.sh Das Skript wird nicht ordnungsgemäß ausgeführt.
Das Skript gibt eine Meldung zurück, die darauf hinweist, dass es nicht feststellen kann, ob /usr/sbin/nsrd ein Link oder ein Startskript ist.
Meldungsdetails
Die angezeigte Meldung lautet: "Ist /usr/sbin/nsrd ein Link oder ein Startskript? Bitte überprüfen Sie! Als Argument wird eine ausführbare Binärdatei benötigt."
file /usr/sbin/nsrd-19.12.0.1 | grep 'ELF' /usr/sbin/nsrd-19.12.0.1: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 2.6.32, BuildID[sha1]=500dfce10db947d45391e7eb5e7eb8f850815f10, stripped
Cause
Ursache des Problems
Die Ursache des Problems ist die falsche Identifizierung der ausführbaren nsrd-Datei als gemeinsames Objekt durch den Dateibefehl.
Diese Fehlidentifizierung ist auf die Verwendung bestimmter Einstellungen im Zusammenhang mit positionsunabhängigem Code zurückzuführen, die manchmal als zusätzliches Sicherheitsmerkmal angesehen werden können.
Besondere Bedingungen
Zu den spezifischen Bedingungen, die zu diesem Problem geführt haben, gehört die Verwendung des Befehls file, der dazu führen kann, dass der Befehl file die ausführbare Datei nsrd fälschlicherweise als freigegebenes Objekt identifiziert.
- Die Version des verwendeten Dateibefehls ist älter als 5.39, wodurch die ausführbare nsrd-Datei nicht korrekt identifiziert wird.
- Die ausführbare nsrd-Datei wird mit positionsunabhängigem Code erstellt, was zu einer Fehlidentifikation führen kann.
Fehlermeldungen
file /usr/sbin/nsrd-19.12.0.1 | grep 'ELF' /usr/sbin/nsrd-19.12.0.1: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 2.6.32, BuildID[sha1]=500dfce10db947d45391e7eb5e7eb8f850815f10, stripped
Resolution
Aktualisieren des Dateibefehls
Um das Problem zu beheben, aktualisieren Sie 'file' auf Version 5.39 oder höher aktualisieren. Auf diese Weise sollten die erwarteten Ergebnisse für die pkgcore Skript.
Schritte zum Upgrade
Führen Sie die folgenden Schritte aus, um ein Upgrade von 'file' Befehl:
- Prüfen Sie die aktuelle Version der '
file'-Befehl. - Laden Sie die neueste Version von " herunter und installieren Sie sie.
file" (Version 5.39 oder höher).
Überprüfen der Lösung
Nach dem Upgrade von 'file"" müssen Sie überprüfen, ob das Problem behoben wurde, indem Sie den Befehl "linux_pkgcore.sh' -Skript erneut.
# Run the linux_pkgcore.sh script to verify the resolution $ ./linux_pkgcore.sh