Jak mogę uruchomić plik wykonywalny z dysku CD, jeśli nie ma on ustawionego bitu wykonywalnego?

13

Podręcznik, którego używam, został dostarczony z płytą CD zawierającą kilka dodatkowych aplikacji. Ku mojemu miłemu zaskoczeniu wydaje się, że zawiera instalator dla systemu Linux.

Plik readme na dysku CD zawiera następujące instrukcje instalacji:

PC: Linux

  1. Kliknij dwukrotnie folder „LINUX”
  2. Kliknij dwukrotnie plik „INSTALL.BIN”
  3. Postępuj zgodnie z instrukcjami na ekranie.

Ale zrobienie tego powoduje tylko następujący komunikat o błędzie:

Nie można wyświetlić „/ media / BDH DE / linux / install.bin”. Plik jest nieznanego typu

Próba uruchomienia instalatora za pomocą wiersza polecenia powoduje błąd uprawnień:

ak@aux:~$ ls /media/BDH\ DE/
linux  os x  readme.txt  windows xp  windows xp - no java
ak@aux:~$ ls -l /media/BDH\ DE/linux/
total 41177
-rw-r--r-- 1 ak ak 42164549 2005-07-26 03:39 install.bin
ak@aux:~$ /media/BDH\ DE/linux/install.bin
bash: /media/BDH DE/linux/install.bin: Permission denied

Chociaż, ku mojemu rozczarowaniu, wiadomość nie informuje mnie o tym, jakich uprawnień mi brakuje, szybkie spojrzenie na wyjście ls ujawnia, że ​​instalator nie został oznaczony jako wykonywalny.

Jak to uruchomić?


Typ pliku to:

ak@aux:~$ file /media/BDH\ DE/linux/install.bin
src/bdh-de/install.bin: POSIX shell script text executable
ændrük
źródło
8
Co to za plik? „file / media / BDH \ DE / linux / install.bin”?
1
Ah-ha. Dziwnie, to tak naprawdę tylko plik tekstowy z .binrozszerzeniem nazwy pliku. Jak irytująco wprowadzające w błąd.
ændrük
1
Tak - wymyślił. Tak rozwiązany? Na przykład, jeśli jest to skrypt powłoki - możesz teraz „bash / media / BDH \ DE / linux / install.bin” lub coś podobnego?

Odpowiedzi:

7

Zobacz, jakiego rodzaju plik otrzymał rozszerzenie bin.

file $filename

Jeśli nie są to dane binarne, to tekst. Jaki program ma być używany z tym plikiem?

head $filename

Pierwszy wiersz może być przeczytany #!/bin/bash. W takim przypadku uruchom

bash $filename

wykonać to. Lub użyj dowolnego programu, dla którego został zapisany plik bin, na przykład python.


źródło
Nadal myślę, jak mogę dwukrotnie kliknąć plik i uruchomić go. Nadal odmawia uruchomienia, jeśli plik ma rozszerzenie „.bin”.
DTdev
7

Jeśli problem polega na tym, że CDROM został zamontowany „noexec”, możesz ponownie zamontować go jako plik wykonywalny.

sudo mount -o remount,exec /media/BDH\ DE/
Pan Muskrat
źródło
tak, dobrze, bardzo dobrze, działało dobrze.
Silver Moon,
4

Jeśli nie jest to skrypt / tekst, ale plik binarny:

W przypadku programów 64-bitowych:

/lib64/ld-linux-x86-64.so.2 ./program.bin

W przypadku programów 32-bitowych:

/lib/ld-linux.so.2 ./program.bin

Źródło:

„Aby uruchomić pliki binarne, użyj /lib64/ld-linux-x86-64.so.2 ./program.bin dla programów 64-bitowych i /lib/ld-linux.so.2 ./program.bin dla 32-bitowych te. ” - Komentarz Lekensteyn do pytania /ubuntu//a/17311/52853 13 kwietnia 2012

bjunix
źródło
1

podłącz CDROM ręcznie przy pomocy umask = 000, tj

sudo mount  -o umask=000 /dev/sdXY /mount_point
strumień
źródło
1

Możesz użyć jednego z obu:

bash -c <command>

lub

sh -c <command>
Truman
źródło