루트로서도 다양한 폴더에 있는 특정 프로그램을 실행할 수 없습니다. 이러한 프로그램에는 올바른 권한이 있습니다. 예를 들어 아래 그림을 참조하세요.
[root@ODHI01VMA02 bin]# ls -la java*
-rwxr-xr-x 1 root root 56056 May 10 2013 java
-rwxr-xr-x 1 root root 16674 May 10 2013 java_vm
-rwxr-xr-x 1 root root 56056 May 10 2013 javaw
-rwxr-xr-x 1 root root 78842 May 10 2013 javaws
Java를 실행하면 다음 오류가 발생합니다.
[root@ODHI01VMA02 bin]# ./java -version
bash: ./java: Permission denied
[root@ODHI01VMA02 bin]# ldd java
not a dynamic executable
이건 안 돼,
[root@ODHI01VMA02 bin]# file java
java: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.2.5, not stripped
정말 효과가 있어요.
# file java
java: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.4.0, not stripped
이것은 단지 위의 프로그램이 아니라 단지 예로서 사용한 것입니다. 다른 드라이브의 다른 프로그램에도 동일한 문제가 있습니다. 다른 많은 프로그램도 잘 작동합니다.
이것은 RedHat 6.7에 있습니다. Linux 전문가를 도와주세요.
재기
답변1
출력 결과에 따르면 설정되지 않은 64비트 컴퓨터에서 32비트 실행 파일을 실행하려고 하는 것이 문제일 수 있습니다. 작동하는 버전은 64비트이고 작동하지 않는 버전은 32비트임을 알 수 있습니다.
두 개의 실행 파일을 실행하십시오 ldd java
. 그리고 댓글이 아닌 질문에 결과를 올려주세요.
(거의 사기인게 확실합니다...)