bin-Datei ausführen: wie geht das?

Warum Debian und/oder eine seiner Spielarten? Was muss ich vorher wissen? Wo geht es nach der Installation weiter?
Antworten
thorsten70
Beiträge: 3
Registriert: 09.04.2011 10:34:17

bin-Datei ausführen: wie geht das?

Beitrag von thorsten70 » 09.04.2011 10:54:18

Hallo zusammen,

da ich neu im Forum bin, hoffe ich dass ich mit meiner Frage in diesem Unterforum richtig bin, ansonsten bitte verschieben.
Ich habe folgendes Problem: Ich habe mir das Programm OpenFTA zur Erstellung von Fehlerbäumen besorgt (System Debian Squeeze 64 bit). Man erhält eine bin-Datei, die einen auf Java basierten Installer ausführen soll. Wenn ich die Datei ausführbar mache und doppelklicke erhalte ich folgende Meldung:
»/home/thorsten/Downloads/OpenFTA.bin« konnte nicht angezeigt werden.
mit dem Hinweis, ich solle eine Anwendung wählen. Der andere in den FAQ beschriebene Weg führt zu folgendem Ergebnis:

Code: Alles auswählen

thorsten@Debian:~/Downloads$ "./OpenFTA.bin:quot;)
> 
und erwartet offensichtlich eine Eingabe. Benötige ich noch irgendwas um die bin-Datei ausführen zu können? Die JRE soll angeblich in der bin-Datei enthalten sein.

Kann mir jemand helfen?
Thorsten

schauinsland
Beiträge: 455
Registriert: 19.11.2007 11:17:40

Re: bin-Datei ausführen: wie geht das?

Beitrag von schauinsland » 09.04.2011 11:13:13

Hallo und willkommen im Forum.

Die von Dir verwendete Syntax

Code: Alles auswählen

"./OpenFTA.bin:quot;)
beruht schlicht auf fehlerhaftem HTML-Code für das Anführungszeichen, vgl. hier, bzw. darauf, dass Du das einleitende korrekte Anführungszeichen und die abschließende Klammer aus dem Text übernommen hast. Richtig müsste es also einfach

Code: Alles auswählen

./OpenFTA.bin
heißen.
Das Verzeichnis, in dem der Code ausgeführt werden soll, darf natürlich nicht auf einer mit der Option noexec eingehangenen Partition liegen, zu überprüfen per

Code: Alles auswählen

$ cat /etc/mtab
Zum Programm selber kann ich nichts sagen.
Generell sollte man allerdings sehr zurückhaltend damit sein, Programme am Paketsystem vorbei zu installieren. Insbesondere, wenn unklar ist, wie man sie wieder deinstalliert bekommt oder auch, wenn auf die Art eine Systemkomponente wie ein Java-JRE eingeschleppt werden soll. Letzteres sollte man unbedingt aus den Debian repositories verwenden, z. B. Debianopenjdk-6-jre oder Debiansun-java6-jre.
Sollte das binary für i386 sein, könnte auf Deiner amd64-Architektur Debiania32-libs hilfreich sein.

Gruß,

schauinsland

thorsten70
Beiträge: 3
Registriert: 09.04.2011 10:34:17

Re: bin-Datei ausführen: wie geht das?

Beitrag von thorsten70 » 09.04.2011 12:17:00

@schauinsland
Vielen Dank für die schnelle Antwort, ich sehe schon, was Terminaleingaben angeht muss ich noch einiges lernen.
Mit

Code: Alles auswählen

./OpenFTA.bin
startet der Installer, allerdings habe ich jetzt folgende Meldungen:

Code: Alles auswählen

thorsten@Debian:~/OpenFTA$ ./OpenFTA.bin
Preparing to install...
Extracting the JRE from the installer archive...
Unpacking the JRE...
Extracting the installation resources from the installer archive...
Configuring the installer for this system's environment...
dirname: error while loading shared libraries: libc.so.6: cannot open shared object file: No such file or directory
/bin/ls: error while loading shared libraries: librt.so.1: cannot open shared object file: No such file or directory
basename: error while loading shared libraries: libc.so.6: cannot open shared object file: No such file or directory
dirname: error while loading shared libraries: libc.so.6: cannot open shared object file: No such file or directory
basename: error while loading shared libraries: libc.so.6: cannot open shared object file: No such file or directory
hostname: error while loading shared libraries: libnsl.so.1: cannot open shared object file: No such file or directory

Launching installer...

rm: error while loading shared libraries: libc.so.6: cannot open shared object file: No such file or directory
rm: error while loading shared libraries: libc.so.6: cannot open shared object file: No such file or directory
Die drei Dateien sind aber im Verzeichnis /lib enthalten, jeweils als Verknüpfung mit Gemeinsame Bibliothek (application/x-sharedlib)

libnsl.so.1 --> libnsl-2.11.2.so
libc.so.6 --> libc-2.11.2.so
librt.so.1 --> librt-2.11.2.so

Ich werde selber noch versuchen rauszufinden woran es liegt, bin aber für jeden Hinweis dankbar (v. a. weil ich etwas Angst davor habe mir das System zu zerschießen wenn ich zuviel rumprobiere)

Gruß
Thorsten

thorsten70
Beiträge: 3
Registriert: 09.04.2011 10:34:17

Re: bin-Datei ausführen: wie geht das?

Beitrag von thorsten70 » 09.04.2011 13:48:48

Hallo,
ich hab's geschafft. Mit

Code: Alles auswählen

thorsten@Debian:~$ cp OpenFTA.bin OpenFTA.bin.bak
thorsten@Debian:~$ cat Open*.bak | sed "s/export LD_ASSUME_KERNEL/#xport LD_ASSUME_KERNEL/" > OpenFTA.bin
thorsten@Debian:~$ export LIBXCB_ALLOW_SLOPPY_LOCK=1
läuft der Installer. Das Gleiche dann nochmal mit der Programmdatei, dann läuft das Programm. Wenn mir noch jemand erklären kann was ich eigentlich gemacht habe (habe den Code lediglich aus einem Forum mit einem ähnlichen Problem kopiert, was da geschieht weiß ich nicht), wäre ich glücklich! :mrgreen:

Thorsten

Benutzeravatar
detix
Beiträge: 1744
Registriert: 07.02.2007 18:51:28
Wohnort: MK

Re: bin-Datei ausführen: wie geht das?

Beitrag von detix » 09.04.2011 16:15:25

Ich fang mal hinten an:
Du hast die Variable "LIBXCB_ALLOW_SLOPPY_LOCK" auf 1 gesetzt.
Du hast in "OpenFTA.bin" alle Zeilen in denen "export LD_ASSUME_KERNEL" vorkommt, durch "#xport LD_ASSUME_KERNEL" ersetzt.
Du hast "OpenFTA.bin" nach "OpenFTA.bin.bak" kopiert.

Die letzten zwei Befehle hätte man mit direkter Änderung auch so zusammenfassen können:

Code: Alles auswählen

sed -i.bak 's/export LD_ASSUME_KERNEL/#xport LD_ASSUME_KERNEL/' OpenFTA.bin
Gruß an alle Debianer, und immer daran denken:
Macht ohne Haftung funktioniert nicht!

Antworten