Ubuntu dice “bash: ./program Permiso denegado”

Estoy ejecutando Ubuntu en la computadora 1 y la computadora 2. Recopilé un progtwig C ++ en la computadora 1, y puedo ejecutarlo desde la terminal usando ./program_name . Funciona bien

Sin embargo, cuando trato de hacer esto en la computadora 2, dice: bash: ./program_name: permission denied

¿Qué pasa y qué puedo hacer al respecto?

chmod u+x program_name . Entonces ejecútalo.

Si eso no funciona, copie el progtwig del dispositivo USB a un volumen original en el sistema. Luego, chmod u+x program_name en la copia local y ejecútelo.

Los sistemas Unix y similares a Unix generalmente no ejecutarán un progtwig a menos que esté marcado con permiso para ejecutarse. La forma en que copió el archivo de un sistema a otro (o montó un volumen externo) puede haber desactivado el permiso de ejecución (como una característica de seguridad). El comando chmod u+x name agrega permiso para que el usuario que posee el archivo lo ejecute.

Ese comando solo cambia los permisos asociados con el archivo; no cambia los controles de seguridad asociados con todo el volumen. Si se trata de controles de seguridad en el volumen que interfieren con la ejecución (por ejemplo, se puede especificar una opción noexec para un volumen en el archivo fstab Unix, que dice no permitir el permiso de ejecución para archivos en el volumen), puede volver a montar el volumen con opciones para permitir la ejecución. Sin embargo, copiar el archivo a un volumen local puede ser una solución más rápida y fácil.

Prueba esto:

 sudo chmod +x program_name ./program_name 

Parece que no tiene el indicador de ejecución establecido en los permisos del archivo, intente:

 chmod u+x program_name