Dlaczego chmod nie działa na pliku w katalogu / media?

9

Chcę wykonać plik skryptu z terminala, ale pokazuje błąd

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

więc widziałem uprawnienia do plików z terminala i próbowałem udzielić pozwolenia na wykonanie. ale bezużyteczne, nawet jeśli pozwolę, to się nie zmieni.

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`

Nie wiem co mam robić.

Dziękuję Ci.

Silambarasan
źródło

Odpowiedzi:

10

Najłatwiej byłoby skopiować plik wykonywalny do folderu domowego i uruchomić go od tego miejsca.

Ale…

Wygląda na to, że plik wykonywalny jest zamontowany na zewnętrznej partycji. Upewnij się, że partycja nie jest zamontowana noexec. Próbować:

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

Jeśli zobaczysz wiersz zawierający słowo „noexec”, spróbuj ponownie zamontować partycję bez noexecflagi:

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

Upewnij się także, że Twój nośnik rzeczywiście pozwala ci zmienić uprawnienia, np. Nie możesz tego zrobić na zamontowanym dysku CD lub SD z włączonym przełącznikiem tylko do odczytu.

Attila O.
źródło
Próbowałem Najłatwiejszy sposób, działa teraz. Dzięki dużo @Attila O
Silambarasan
1
Może to być również showexecopcja FAT, która pozwala na wykonanie bitu uprawnień tylko dla rozszerzeń .EXE, .COM i .BAT.
Ortomala Lokni
-1

Zamiast tego chmod 777 filemożesz użyć chmod u+x file. Gdzie uoznacza użytkownika i xoznacza uprawnienia do wykonywania. Zobacz man chmodstrony, aby uzyskać więcej informacji. Wiem, że 777 daje wszystkie uprawnienia do odczytu, zapisu wykonania dla użytkownika, grupy i innych, spróbuj użyć składni z u + x.

rewanż
źródło