を使用して C ソースをコンパイルしたところ、ファイルcc test.c
が生成されました。a.out
ただし、実行するとこのエラーが発生します-
bash: ./a.out: Permission denied
私のソースはホーム ディレクトリになく、別の FAT-32 パーティションにあるため、次のコマンドを使用してコードが使用されているドライブをマウントしました -
$ udisks --mount /dev/sda7 --mount-options umask=022
Mounted /org/freedesktop/UDisks/devices/sda7 at /media/48E9-FD53
$ cd /media/48E9-FD53/C
次に、次を使用してコードをコンパイルしますcc
私も試しgcc
ました。しかし、それでも同じエラーが発生します。
それから私は - chmod +x a.out
、それでも同じ問題をしました。また、( chmod 755 a.out
) とchmod u+x a.out
.
また、を使用してプログラムをコンパイルして実行しようとしましたsudo
。
私も試しました - sudo chown sannidhya:sannidhya a.out
。
グーグルで見つけたすべてのことを試しましたが、まだ機能しませんでした。
.out
ファイルを (ホーム ディレクトリに移動せずに)実行するにはどうすればよいですか?
注- Ubuntu 12.04 LTS を使用しています。
しかし、ここで奇妙なことchmod +x a.out
は、 を実行した後でも、実行中に - ls -l a.out
、私は-
-rw-r--r-- 1
また、のプロパティを確認するとa.out
、 [アクセス許可] タブでチェックAllow executing file as program
すると、チェックマークが表示され、すぐに消えます。