Em primeiro lugar, há muitas perguntas como essa na UA. Ainda assim, nenhum deles resolveu o meu problema.
Eu compilei minha fonte C usando cc test.c
e ela gerou a.out
file.
No entanto, quando eu executo, recebo este erro -
bash: ./a.out: Permission denied
Minha origem não está no diretório inicial, ela está em uma partição FAT-32 diferente, então montei a unidade na qual o código está usando o seguinte comando -
$ udisks --mount /dev/sda7 --mount-options umask=022
Mounted /org/freedesktop/UDisks/devices/sda7 at /media/48E9-FD53
$ cd /media/48E9-FD53/C
Depois eu compilo meu código usando cc
Eu também tentei gcc
. Mas ainda recebo o mesmo erro.
Então eu fiz - chmod +x a.out
, ainda o mesmo problema. Também com ( chmod 755 a.out
) e chmod u+x a.out
.
Eu também tentei compilar e executar o programa usando sudo
.
Eu também tentei - sudo chown sannidhya:sannidhya a.out
.
Eu tentei tudo o que encontrei na AU, mas ainda não consegui fazê-lo funcionar.
Como posso executar o arquivo .out
(sem movê-lo para o diretório pessoal)?
Nota - Estou usando o Ubuntu 12.04 LTS.
Mas uma coisa estranha aqui está, mesmo depois de executar chmod +x a.out
, na execução - ls -l a.out
, eu recebo -
-rw-r--r-- 1
também quando verifico as propriedades de a.out
, na guia Permissões , existem apenas dois modos disponíveis Read only
e Read and Write
.