"Keine solche Datei oder Verzeichnis", wenn die Datei vorhanden ist

1251
Pierre Arlaud

Ich versuche, XPDF auf einem Linux-OVH-Shared-Server (wahrscheinlich Red Hat) auszuführen.

Ich habe es geschafft, FTP-SSH-Zugriff zu haben und die 64-Bit-Binärdateien in einem Ordner abzulegen.

Das Problem ist: Obwohl die Dateien mit den richtigen Berechtigungen vorhanden sind, erhalte ich ein Problem, wenn ich versuche, es auszuführen (ich denke über einen fehlenden Link nach.)

Um es kurz zu machen :

myusername@ssh1:~/xpdf$ file pdftotext pdftotext: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), stripped  myusername@ssh1:~/xpdf$ ./pdftotext -ovh: jurisedi@ssh1:~/xpdf$: No such file or directory 

Irgendwelche Ideen ?

4
Warum in aller Welt fügen Sie Ihre Eingabeaufforderung am Anfang Ihrer Befehlszeile ein? lanzz vor 11 Jahren 1
@paxdiablo Es ist offensichtlich, dass der Benutzer dies tut. Sie können es tatsächlich in dem geposteten Snippet sehen: `jurisedi @ ssh1: ~ / xpdf $ jurisedi @ ssh1: ~ / xpdf $. / Pdftotext` Ich vermute einen ungeschickten Kopier- und Einfügejob. lanzz vor 11 Jahren 1
@paxdiablo Nein, das könnte nicht sein. Sie können _sehe_ im Schnipsel die eigentliche Befehlszeile eingeben _, bevor der Befehl ausgeführt wird; Sie können sehen, was mit dieser Befehlszeile nicht stimmt. lanzz vor 11 Jahren 0
Entschuldigung wegen der fehlgeschlagenen Paste. Ich bin froh, dass Sie es herausfinden konnten. vor 11 Jahren 0
Es sieht so aus, als ob pdftotext läuft und FILE_NOT_FOUND zurückgibt. Was zeigt "ldd pdftotext"? vor 11 Jahren 2
Okay ldd pdftotext gibt "keine dynamische ausführbare Datei" zurück = / vor 11 Jahren 0

2 Antworten auf die Frage

0
Igor Chubin

Ich vermute, dass es ein Problem mit einer Bibliothek gibt, mit der pdfotext binary verlinkt ist. Sie müssen tun:

$ ldd ./pdftotext 

um zu überprüfen, ob die Datei Probleme mit Bibliotheken hat.

Wenn es sich nicht um eine dynamische ausführbare Datei handelt, handelt es sich wahrscheinlich um ein Skript. Wenn Sie versuchen, das Skript auszuführen und eine Meldung "Keine solche Datei oder ein solches Verzeichnis" erhalten, kann dies bedeuten, dass der in der ersten Zeile des Skripts angegebene Interpreter nicht vorhanden ist.

Wenn er die benötigten Bibliotheken nur irgendwo in ein Unterverzeichnis kopiert hat, werden sie weder indexiert noch können sie mit etwas verlinkt werden. Es wird kompliziert von hier ... lornix vor 11 Jahren 0
@lornix: Arlaud sagte, dass "ldd" "okay" zurückgibt. ldd pdftotext gibt "keine dynamische ausführbare Datei" zurück. Das bedeutet, dass die Datei wahrscheinlich ein Shell- (oder Perl / Python) -Skript ist. Igor Chubin vor 11 Jahren 0
@ArlaudAgbePierre: Kannst du bitte die erste Zeile des Skripts überprüfen? Es scheint, dass auf den in der ersten Zeile angegebenen Interpreter nicht zugegriffen werden kann. Igor Chubin vor 11 Jahren 0
0
holgero

Die Fehlermeldung, die Sie in Ihrer Frage ( -ovh: jurisedi@ssh1:~/xpdf$: No such file or directory) angeben, ist sicherlich falsch. Ich kann mir kein Werkzeug vorstellen, das nach Ihrer Shell-Eingabeaufforderung als vorhandene Datei suchen würde. Versuchen Sie, das ./pdftotexterneut auszuführen, und fügen Sie die tatsächliche Fehlermeldung in Ihre Frage ein. Die aktuelle falsche Fehlermeldung ist sehr irreführend.

Aber es ist Ihr Kommentar "Okay, ldd pdftotext gibt" keine dynamische ausführbare Datei "zurück, die tatsächlich zeigt, was hier passiert: Ihr Kernel unterstützt keine ausführbaren 64-Bit-Dateien.

Sie können entweder versuchen, eine 32-Bit-Version des Programms zu erhalten, das Sie ausführen möchten, oder einen Kernel installieren, der 64-Bit auf dem Computer unterstützt.