SharedIT | 묻고 답하기(AMP)

[리눅스] java 명령어가 먹히지 않는건 java가 설치되지 않아서일까요?

리눅스 초보중의 초보입니다

구글링을 활용해서 리눅스 서버에 설치 된 톰캣의 상세버전을 확인하려 하는데...

(centOS 8 버전) 리눅스가 java 명령어를 이행 못하는거 같습니다.

기초적인 생각으로는 자바가 설치 되지 않아서 명령어를 인식 못하나? 싶은데...
제가 알기론 centOS는 자바가 기본으로 장착이고, 톰캣 설치할 때 자바를 먼저 설치하고 톰캣을 설치하는 것으로 아는데 명령어가 먹히질 않습니다 ;; 폴더를 보면 java 폴더가 있음에도 불과하구요.
java폴더에서 java -version 도 해봤지만 역시 이행이 안되더군요.
(bin 폴더에서 ./version.sh 은 이상한 내용만 출력하고 버전은 출력 X)

회사 개발자들 누구도 리눅스 개발은 한 적이 없어서, 해당 서버의 관리-운영은 외주업체에 일체 맡긴거라 저희측 개발자들도 어깨를 으쓱 할 뿐이구요

간단한 버전 확인하는데 외주업체에 메일 쏘고 받고하는 절차도 시간이 걸리는...(+ 보안담당자라는 녀석이 그 쉬운걸 못하냐는 시선은 덤)

앞으로도 종종 버전 확인이나 다른 유사 작업이 자주 일어날 텐데, 매번 물어볼 수는 없어서 질문글 남깁니다.

Tags : 태그가 없습니다.

4개의 답변이 있습니다.

deerokgo
  0 추천 | 약 3년 전

Cent 설치시 기본적으로 java가 설치되긴 하지만,

openjdk가 설치 됩니다.

일반적으로 버전도 낮고, 서비스에 사용하는 jdk하고는 좀 다릅니다.

명령어도 안되는게 있거나, 프로그램 오류 같은것 발생 하죠.

따라서 별도의 jdk 설치하는 절차를 거쳐야 합니다.

설치된 openjdk 삭제 후에 최신 jdk 설치 해보시기 바랍니다.

Genghis Khan
  0 추천 | 약 3년 전

자바 버전 확인

#java -version (1.7)

#javac -version (1.8)


자바가 어디에 설치 되었는지 확인 해보시구요 


[root@ip-172-31-9-0 ~]# which javac

/usr/bin/javac


[root@ip-172-31-9-0 ~]# readlink -f /usr/bin/javac

/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.151-1.b12.35.amzn1.x86_64/bin/javac


  → javac의 실제 위치는 /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.151-1.b12.35.amzn1.x86_64/bin/

  → 따라서 java의 링크를 /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.151-1.b12.35.amzn1.x86_64/bin/java 로 설정해야 함

빨간신발
  0 추천 | 약 3년 전

find / -name java

자바를 먼저 찾아보세요

wansoo
  0 추천 | 약 3년 전

설치가 안되었을 수도 있고, 설치되어 있으나 설치된 경로를 찾지 못할 수도 있겠고요.

yum install java 

명령으로 설치해보세요.

설치되어 있지 않다면 설치해 줄것이고, 설치되어 있다면 이미 설치되어 있다고 나올거고...

java가 CentOS에서 /usr/bin/ 아래에 설치되어 있는 것 같네요.

/usr/bin/java 라고 한번 실행해 보세요.


그리고 어떤 명령을 실행시켰을때 디스크 안에 지정된 경로를 쭉~ 찾으면서 실행하려는 명령이 있는지 찾게되는데...

그때 사용하는 경로 검색용 환경 변수가 PATH 이고요.

echo $PATH 명령으로 java가 설치된 경로가 PATH 환경 변수에 등록되어 있는지도 확인해 보시고요.ㅣ