it-swarm.com.de

Symbolischer Link: Keine solche Datei oder kein solches Verzeichnis

Ich habe einen symbolischen Link von einer Datei unter "/ opt/bladir/bla" zu "bla" erstellt. "Bla" befindet sich jetzt in "/ usr/bin/bla". Aber wenn ich "bla" am Terminal aufrufen will, kommt der keine solche Datei oder Verzeichnisfehler. Ich habe nach "/ usr/bin/bla" gesucht und die Datei ist korrekt mit "/ opt/bladir/bla" verknüpft.

Woran kann der Fehler liegen?

P.S. Hier ist mein Terminal "Eintrag": Sudo ln -s /opt/bladir/bla bla

Vielen Dank!

€: Problem gelöst. Gemäß der Feature-Liste sollte 12.04 Multiarch-Unterstützung haben ... "sollte". Ich habe die ia32-libs von synaptic bekommen und jetzt läuft das Programm einwandfrei. Wie es aussieht, waren meine symbolischen Links korrekt.

Vielen Dank für alle Antworten!

17
Sehe

BEARBEITEN: Die unten stehende Lösung funktioniert nicht. Es ist offensichtlich, dass die symbolische Verknüpfung unterbrochen ist, da file -L die symbolische Verknüpfung/usr/bin/bla nicht öffnen kann. In diesem Fall gehen Sie wie folgt vor:

Sudo ln -sf /opt/bladir/bla /usr/bin/bla

verwenden vollständiger Pfade (-f dient zum Erzwingen des Überschreibens der vorherigen symbolischen Verknüpfung, falls vorhanden).

Hm. Ich denke, dass das Programm "bla" nach Dingen sucht, die in/opt/bladir installiert sind und diese nicht finden können. Beispielsweise kann es sich um einen Shell-Script-Wrapper um eine ausführbare Datei Java handeln, deren Pfad sich auf das aktuelle Verzeichnis bezieht. Ihr aktuelles Verzeichnis lautet jedoch/usr/bin/und nicht/opt/bladir /.

Wenn das folgende funktioniert

file -L /usr/bin/bla

... dann ist es definitiv kein Problem mit Ihrem symbolischen Link.

Überprüfen Sie, ob es sich bei "bla" um ein Shell-Skript handelt, das Sie ändern können, und werfen Sie einen Blick hinein - vielleicht finden Sie das Problem. Möglicherweise ist es eine bessere Lösung,/opt/bladir zu Ihrem PATH hinzuzufügen.

12
January

Häufig wird diese Art von Fehlermeldung angezeigt, wenn Sie das Ausführungsbit nicht aktiviert haben. Überprüfen Sie, ob sowohl die Hauptdatei als auch der Link Ausführungsberechtigungen erhalten.

Ich vermute, dass Ihr /opt möglicherweise von einer separaten Partition aus gemountet wurde und nicht mit der Mount-Option exec gemountet wurde

0
Anwar