我在vim中编写了一些代码,每当我尝试运行代码时它会显示:
coolmego@coolmego-PC:~/coolmego/cprograms$ gcc dfs8puzz.c
/usr/bin/ld: cannot open output file a.out: Permission denied
collect2: ld returned 1 exit status
coolmego@coolmego-PC:~/coolmego/cprograms$ ./a.out
bash: ./a.out: No such file or directory
我该怎么办?
移动到允许写入的目录。
运行sudo时,实际上是以root用户身份运行命令。可能你最终弄乱了权限,以便root拥有文件。因此,当你运行sudo时,它只是工作(root可以在这些目录中写入)。你需要coolmego来拥有这些文件。例如:
sudo chown coolmego /home/coolmego/coolmego/cprograms/
chmod 700 /home/coolmego/coolmego/cprograms/
删除/ etc / fstab中的选项用户。除非在fstab中明确给出了exec,否则fstab中有用户的任何内容都会自动挂载noexec。
尝试为您要定位的目录提供读写权限以获取输出。如果您使用的是个人系统,可以执行“sudo chmod 777”
试试chmod -R 777 ~/coolmego/cprograms