Warum funktioniert chmod nicht für eine Datei unter / media?

9

Ich möchte eine Skriptdatei vom Terminal ausführen, aber es wird ein Fehler angezeigt

root@silambarasan-PC:/media/D-DEVELOPME/androidSdk/adt-bundle-linux-x86/sdk/tools# ./android
-bash: ./android: Permission denied`

Also habe ich die Dateiberechtigungen vom Terminal gesehen und versucht, die Ausführungsberechtigung zu erteilen. Aber es nützt nichts, auch wenn ich die Erlaubnis gebe, es wird sich nicht ändern.

root@silambarasan-PC:/media/D-DEVELOPME/androidSdk/adt-bundle-linux-x86/sdk/tools# ll android 
-rw-r--r-- 1 silambarasan silambarasan 3498 Dec  6 08:14 android
root@silambarasan-PC:/media/D-DEVELOPME/androidSdk/adt-bundle-linux-x86/sdk/tools# chmod 777 android 
root@silambarasan-PC:/media/D-DEVELOPME/androidSdk/adt-bundle-linux-x86/sdk/tools# ll android 
-rw-r--r-- 1 silambarasan silambarasan 3498 Dec  6 08:14 android`

Ich weiß nicht was ich tun soll.

Danke.

Silambarasan
quelle

Antworten:

10

Am einfachsten wäre es, die ausführbare Datei in Ihren Home-Ordner zu kopieren und von dort aus zu starten.

Aber…

Es scheint, dass Ihre ausführbare Datei auf einer externen Partition bereitgestellt ist. Stellen Sie sicher, dass die Partition nicht mit gemountet ist noexec. Versuchen:

grep '/media/D-DEVELOPME' /etc/mtab | grep noexec

Wenn eine Zeile mit dem Wort "noexec" angezeigt wird, versuchen Sie, die Partition ohne das noexecFlag erneut zu mounten :

mount -o remount,exec /media/D-DEVELOPME

Stellen Sie außerdem sicher, dass Sie auf Ihrem Medium tatsächlich die Berechtigungen ändern können, z. B. können Sie dies nicht auf einer eingelegten CD oder einem SD-Crad mit eingeschaltetem Nur-Lese-Schalter tun.

Attila O.
quelle
Ich habe es auf einfachste Weise versucht, funktioniert jetzt. Vielen Dank @Attila O
Silambarasan
1
Es könnte auch die showexecFAT-Option sein, die das Ausführungsberechtigungsbit nur für die Erweiterungen .EXE, .COM und .BAT zulässt.
Ortomala Lokni
-1

Stattdessen chmod 777 filekönnen Sie verwenden chmod u+x file. Wobei uBenutzer und xAusführungsberechtigungen bedeuten. man chmodWeitere Informationen finden Sie auf den Seiten. Ich weiß, dass 777 alle Berechtigungen zum Lesen, Schreiben, Ausführen für Benutzer, Gruppen und andere gibt. Versuchen Sie, die Syntax mit u + x zu verwenden.

revnoise
quelle