Как выполнить исполняемый файл с sudo?

Я имею исполняемый файл, но не знаю, каково тип или формат это. Когда я выполняюсь как это

$chmod +x xfile
$./xfile

Это показывает

Permission denied

когда я работаю как суперпользователь

$sudo ./xfile

Это показывает

sudo: ./xfile: command not found

Я плохо знаком с Linux, скажите мне, как выполнить его.

0
задан 18 September 2012 в 19:05

3 ответа

Странно, здесь все работает именно так.

Сначала попытайтесь выяснить, что это за файл:

file xfile

Команда file просматривает файл и, основываясь на некой «магии», пытается выяснить, что делает эта программа. [ 114]

Из того, что вы описываете, я предполагаю, что это исполняемый файл оболочки, который пытается выполнить еще одну программу. Если это так, почему бы вам не опубликовать код исполняемого файла оболочки, используя http://paste.ubuntu.com .

0
ответ дан 18 September 2012 в 19:05

Проблема - это, если файловая система устройства не похожа ext3 или ext4, (и вероятно это - FAT32 для Вас), файловая система не хранит много метаданных о файлах, включая исполняемый бит.

Когда Вы делаете chmod +x yourfile, затем ls -la yourfile, Вы заметите, что исполняемый бит не был на самом деле установлен.

Решение здесь к cp yourfile ~/yourfile; chmod +x ~/yourfile; ~/yourfile, потому что файловая система, в которой установлен Ваш Linux, имеет исполняемые полномочия.

Узнайте больше *nx модель полномочий.

0
ответ дан 18 September 2012 в 19:05

Была такая же проблема. В моем случае исполняемый файл хранился на другом диске, поэтому chmod + x не работал.

Я скопировал исполняемый файл в каталог Linux (например, Desktop), установил разрешения с помощью chmod + x, запустил исполняемый файл с помощью «./», и это сработало:)

0
ответ дан 18 September 2012 в 19:05

Другие вопросы по тегам:

Похожие вопросы: