I am running Ubuntu on computer 1 and computer 2. I compiled a C++ program on computer 1, and I can execute it from the terminal using ./program_name. It runs fine.
However, when I try to do this on computer 2, it says: bash: ./program_name: permission denied
What's wrong and what can I do about it?
Eri*_*hil 350
chmod u+x program_name.然后执行它.
如果不起作用,请将程序从USB设备复制到系统上的本机卷.然后chmod u+x program_name在本地副本上执行它.
Unix和类Unix系统通常不会执行程序,除非它被标记为具有执行权限.将文件从一个系统复制到另一个系统(或安装外部卷)的方式可能已关闭执行权限(作为安全功能).该命令chmod u+x name为拥有该文件的用户添加权限以执行它.
该命令仅更改与文件关联的权限; 它不会更改与整个卷关联的安全控件.如果卷上的安全控件干扰执行(例如,noexec可能为Unix fstab文件中的卷指定了一个选项,表示不允许对卷上的文件执行权限),则可以重新安装卷带有允许执行的选项.但是,将文件复制到本地卷可能是一种更快速,更简单的解决方案.
Vit*_*lar 29
试试这个:
sudo chmod +x program_name
./program_name
Run Code Online (Sandbox Code Playgroud)