GNU 어셈블러를 사용하여 어셈블한 프로그램을 실행하려고 하면 권한이 거부되었습니다.

GNU 어셈블러를 사용하여 어셈블한 프로그램을 실행하려고 하면 권한이 거부되었습니다.

나는 gcc에 의해 생성된 중간 코드를 사용하여 GNU 어셈블러를 테스트하고 있습니다. 나는 GNU 어셈블리 구문을 전혀 이해하지 못하지만 어느 시점에서는 배울 수 있습니다. 나는 명령을 실행 as hello.s한 다음 as hello.s -o hello. 실행 파일을 실행하면 "권한이 거부되었습니다"라고 표시됩니다. 루트로 실행하려고 해도 여전히 같은 메시지가 나타납니다. ls -l파일 권한을 확인하러 달려갔더니 권한이 정상( rw-r--r--)이었습니다. 어떻게 되어가나요? 이 문제를 어떻게 해결할 수 있나요?

답변1

rw-r--r--소스 코드 파일을 컴파일할 때 새로 생성된 출력 바이너리에는 권한이 있지만 문자열에 권한이 없으므로 실행할 수 없습니다 .x

다음을 실행하여 실행 가능하게 만드세요.

chmod +x hello

sudo필요한 경우 명령 앞에 추가합니다. 그런 다음 ./hello.

관련 정보