2016-06-11 476 views
0

我只是想運行一個二進制文件,但是當我嘗試使用我的終端時,它的表現很奇怪,我無法弄清楚是什麼問題。在Ubuntu上運行二進制文件時遇到問題

[email protected]:~$ cd Desktop/ 
[email protected]:~/Desktop$ ls 
chal challenge __MACOSX 
[email protected]:~/Desktop$ cd challenge 
[email protected]:~/Desktop/challenge$ ls 
binary1 binary2 binary3 
[email protected]:~/Desktop/challenge$ ./binary1 
bash: ./binary1: Permission denied 
[email protected]:~/Desktop/challenge$ sudo ./binary1 
[sudo] password for rohan: 
sudo: ./binary1: command not found 
[email protected]:~/Desktop/challenge$ 

我也試過給它的權限,但它仍然不能執行它。任何幫助,將不勝感激。謝謝。另外,這些是文件的細節,我的系統是64位的,Ubuntu 16.04LTS,我需要什麼以及如何運行這個文件。

file /home/rohan/Desktop/challenge/binary1 
type EXEC (Executable file) 
pic false 
has_va true 
root elf 
class ELF32 
lang c 
arch x86 
bits 32 
machine Intel 80386 
os linux 
subsys linux 
endian little 
strip false 
static false 
linenum true 
lsyms true 
relocs true 
rpath NONE 
+0

我認爲這個問題應該AskUbuntu – Nirupa

+0

發佈請更新您的問題,以顯示你有*後確切的錯誤信息*你做了'chmod'。 –

回答

0

你可以得到一個shell腳本,其第一行說來運行未在該路徑發現的程序的行爲:

#!/bin/nosuchprogram 
echo xx 

還,如果腳本碰巧有回車/換行結束,結果相同。

如果這是一個「二進制」文件,可以通過使用file實用程序告訴它可能是什麼開始:

file binary3 

,如果它恰好是這可能會在當前系統上運行的一個類型,請與ldd,失蹤庫:

ldd binary3 

同樣的,如果你的Ubuntu系統是64位的機器,你可能沒有庫支持32位應用程序。作爲一個快速檢查(如果你不知道你的系統是什麼),該arch程序告訴你默認的架構是什麼。一些較老的系統不具備這一點,但再次file是你的朋友:

$ file /bin/ls 
/bin/ls: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.26, BuildID[sha1]=0x55f1e005df252708d4c456dcc2c7dccea1006553, stripped 

(這是有可能在一個Ubuntu的32位和64位的庫,但大多數都是一個或其他)。

如何讓在64位Ubuntu上運行的32位應用程序從一個版本稍微變化到另一個版本。您可能會發現這些有用的:

+0

我試過這樣做,這是什麼顯示出來,rohan @ rohan:〜/桌面/挑戰$文件binary1 binary1:ELF 32位LSB可執行文件,英特爾80386,版本1(SYSV),動態鏈接,解釋器/ lib/LD-linux.so.2,爲GNU/Linux 2.6.15,BuildID [SHA1] = 43af309d3735b17cef57f70cb997eebafd17ebf2,不可剝離 羅漢羅漢@:〜/桌面/挑戰$ LDD binary1 \t不是一個動態可執行文件 – TheAmateur

+0

我有一個64位的Ubuntu系統上運行的文件命令,我得到了,羅漢@羅漢:〜/桌面/挑戰$文件binary1 binary1:ELF 32位LSB的可執行文件,英特爾80386,版本1(SYSV),動態鏈接,翻譯/ lib目錄/ LD -linux.so.2,用於GNU/Linux 2.6.15,BuildID [sha1] = 43af309d3735b17cef57f70cb997eebafd17ebf2,沒有剝離 現在,我不知道需要在ord中安裝什麼呃讓它運行。 – TheAmateur

相關問題