web-dev-qa-db-ja.com

実行可能ビットが設定されていないCDから実行可能ファイルを実行するにはどうすればよいですか?

私が使用している教科書には、いくつかの補足アプリケーションを含むCDが付属しています。驚いたことに、Linuxのインストーラーが含まれているようです。

CDのreadmeファイルには、次のインストール手順が記載されています。

PC:Linux

  1. 「LINUX」フォルダをダブルクリックします
  2. ファイル「INSTALL.BIN」をダブルクリックします
  3. 画面の指示に従います。

ただし、これを行うと、次のエラーメッセージが生成されます。

「/ media/BDH DE/linux/install.bin」を表示できませんでした。ファイルのタイプが不明です

コマンドラインからインストーラーを実行しようとすると、アクセス権エラーが発生します。

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

残念なことに、このメッセージはwhat権限がないことを通知しませんが、lsの出力を一gすると、インストーラーが実行可能としてマークされていないことがわかります。

どうすれば実行できますか?


ファイルのタイプは次のとおりです。

ak@aux:~$ file /media/BDH\ DE/linux/install.bin
src/bdh-de/install.bin: POSIX Shell script text executable
12
ændrük

Bin拡張子が付与されているファイルの種類を確認します。

file $filename

バイナリデータでない場合は、テキストです。それでは、このファイルでどのプログラムを使用するのでしょうか?

head $filename

最初の行は#!/bin/bashと表示される場合があります。その場合は実行

bash $filename

実行します。または、binファイルが書き込まれたプログラム、たとえばpythonを使用します。

7
user8290

問題がCDROMが「noexec」にマウントされていた場合、実行可能に再マウントできます。

Sudo mount -o remount,exec /media/BDH\ DE/
6
Mr. Muskrat

スクリプト/テキストではなくバイナリの場合:

64ビットプログラムの場合:

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

32ビットプログラムの場合:

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

ソース:

」バイナリを実行するには、64ビットプログラムの場合は/lib64/ld-linux-x86-64.so.2 ./program.binを使用し、/ lib/ld-linux.so.2を使用します./program.binで32ビットのもの。」 –質問に関するLekensteynからのコメント https://askubuntu.com/a/17311/5285 2012年4月13日

4
bjunix

次の両方のいずれかを使用できます。

bash -c <command>

または

sh -c <command>
1
Truman

umask = 000を使用してCDROMを手動でマウントします。

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