Bagaimana saya bisa menjalankan executable dari CD ketika itu tidak memiliki bit executable?

13

Sebuah buku teks yang saya gunakan datang dengan CD yang berisi beberapa aplikasi tambahan. Yang mengejutkan saya, sepertinya menyertakan pemasang untuk Linux.

File readme pada CD menyediakan instruksi instalasi berikut:

PC: Linux

  1. Klik dua kali pada folder 'LINUX'
  2. Klik dua kali pada file 'INSTALL.BIN'
  3. Ikuti instruksi di layar.

Tetapi melakukan ini hanya menghasilkan pesan kesalahan berikut:

Tidak dapat menampilkan "/ media / BDH DE / linux / install.bin". File ini dari jenis yang tidak dikenal

Mencoba menjalankan penginstal melalui hasil baris perintah dalam kesalahan izin:

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

Sementara, untuk kekecewaan saya, pesan tersebut gagal memberi tahu saya tentang izin apa yang kurang, sekilas pada keluaran ls mengungkapkan bahwa pemasang belum ditandai dapat dieksekusi.

Bagaimana saya menjalankannya?


Jenis file adalah:

ak@aux:~$ file /media/BDH\ DE/linux/install.bin
src/bdh-de/install.bin: POSIX shell script text executable
ændrük
sumber
8
File apa itu? 'file / media / BDH \ DE / linux / install.bin'?
1
Ah-ha. Anehnya, itu sebenarnya hanya file teks dengan .binekstensi nama file. Betapa menyesatkannya.
ændrük
1
Ya - pikir. Jadi terpecahkan? Seperti apakah itu skrip shell - Anda dapat 'bash / media / BDH \ DE / linux / install.bin' atau yang serupa sekarang?

Jawaban:

7

Lihat jenis file apa yang telah diberi ekstensi bin.

file $filename

Jika bukan data biner, itu adalah teks. Jadi program apa yang akan digunakan dengan file ini?

head $filename

Baris pertama mungkin membaca #!/bin/bash. Dalam hal ini dijalankan

bash $filename

untuk melaksanakannya. Atau gunakan program apa pun yang file bin-nya ditulis, python, misalnya.


sumber
Saya masih berpikir bagaimana saya bisa mengklik dua kali pada file dan menjalankannya. Itu masih menolak untuk dijalankan jika file memiliki ekstensi '.bin'.
DTdev
7

Jika masalahnya adalah CDROM di-mount 'noexec' Anda dapat melakukan remount.

sudo mount -o remount,exec /media/BDH\ DE/
Tuan Muskrat
sumber
ya, benar, sangat bagus, bekerja dengan baik.
Silver Moon
4

Jika bukan skrip / teks tetapi biner:

Untuk program 64-bit:

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

Untuk program 32-bit:

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

Sumber:

"Untuk menjalankan binari, gunakan /lib64/ld-linux-x86-64.so.2 ./program.bin untuk program 64-bit dan /lib/ld-linux.so.2 ./program.bin untuk 32-bit yang. " - Komentar dari Lekensteyn pada pertanyaan /ubuntu//a/17311/52853 13 Apr 2012

bjunix
sumber
1

mount CDROM secara manual dengan umask = 000, yaitu

sudo mount  -o umask=000 /dev/sdXY /mount_point
jet
sumber
1

Anda dapat menggunakan salah satu dari keduanya:

bash -c <command>

atau

sh -c <command>
Truman
sumber