rpm은 패키지가 설치되어 있는지 알 수 없습니다.

rpm은 패키지가 설치되어 있는지 알 수 없습니다.

rpm -i jdk-6u45-linux-amd64.rpm계속 달리다 보니 CentOS 7.0.1406다음과 같은 결과가 나왔습니다.

package jdk-2000:1.6.0_45-fcs.x86_64 is already installed

그러나 실행하면 rpm -ql jdk-6u45-linux-amd64.rpm다음이 제공됩니다.

package jdk-6u45-linux-amd64.rpm is not installed

Java참고: 이 컴퓨터에는 최신 버전이 이미 설치되어 있습니다.

답변1

올바른 구문은 다음과 같습니다.

rpm -ql jdk-6u45-linux-amd64

그래도 작동하지 않으면 실제로 설치된 것은 jdk-2000:1.6.0_45-fcs.x86_64.

말씀하신 파일을 어디서 구하셨는지는 잘 모르겠지만, Java 웹사이트에 가보니 실제로는 파일 이 jdk-6u45-linux-amd64.rpm아니고 .jdk-6u45-linux-amd64.rpm.binrpm

답변2

rpm -ia를 인수로 받아들인다파일 이름.

rpm -qa를 인수로 받아들인다패키지 이름.

파일 이름은 패키지 이름을 강제하지 않으며 그 반대의 경우도 마찬가지입니다.

당신은 할 수 있습니다:

mv jdk-6u45-linux-amd64.rpm some-fancy-name.rpm
rpm -i some-fancy-name.rpm

여전히 같은 오류가 발생합니다. 파일 이름은 파일 내부의 패키지 데이터를 변경하지 않기 때문입니다. 그것이 패키지 이름입니다.

다음 명령을 사용하여 패키지 이름을 쿼리할 수 있습니다 -qp.

rpm -qp jdk-6u45-linux-amd64.rpm

또는 -i추가 정보를 추가할 수 있습니다.

귀하의 경우 출력은 jdk-2000.

다음을 사용하여 쿼리할 수 있습니다.

rpm -ql jdk-2000

관련 정보