쉘 명령을 사용하여 라이브러리 이름과 버전별로 패키지 이름과 버전을 찾는 방법은 무엇입니까?

쉘 명령을 사용하여 라이브러리 이름과 버전별로 패키지 이름과 버전을 찾는 방법은 무엇입니까?

패키지 이름과 라이브러리 버전을 알려주는 명령이 있나요?

예를 들어, 현재 설치되어 있지 않지만 필수인 라이브러리 버전을 가져오고 싶습니다 mariadb-libs.libmysqlclient_r.so.16

답변을 읽은 후 업데이트하세요.

yum whatprovides "*libmysqlclient*"libmysqlclient_r.so.16나열된 라이브러리가 없다고 표시됩니다 . ol7_latest다양한 버전의 mariadb-libs( 5.5.60-1.el7_5.x86_64)에 5.5.56-2.el7.x86_64,대한 저장소에는 so.18 라이브러리만 표시됩니다 , 5.5.64-1.el7.x86_64.

운영 체제: 오라클 리눅스 7.7

답변1

당신은 그것을 사용할 수 있습니다yum whatprovides:

공급또는무엇을 제공할 것인가

특정 기능이나 파일을 제공하는 패키지를 찾는 데 사용됩니다. 해당 기능이나 파일을 제공하는 사용 가능하거나 설치된 패키지를 나열하려면 특정 이름이나 파일 전역 구문 와일드카드를 사용하기만 하면 됩니다.

예를 들어:

yum whatprovides "*libmysqlclient*"

답변2

죄송합니다. 단순한 쉘 명령만으로 이전 버전의 라이브러리를 얻는 것은 불가능하다고 생각합니다. 그것을 찾기 위해 나는 사용했다rpmfind.net rpmfind.net을 검색하려면 라이브러리 이름을 입력하세요.

이는 라이브러리 버전이 el6시스템에서 사용 가능하고 에서 사용 가능하지 않음을 보여줍니다. 저장소를 활성화하여 이러한 정보를 얻는 el7것이 가능할 수도 있지만 이는 의미가 없습니다. 잘못된 저장소에서 설치하면 시스템이 손상될 수 있습니다. rpmfind를 사용하는 것은 추가 저장소를 활성화해야 하는 명령을 사용하는 것보다 쉽습니다. 따라서 이 라이브러리가 필요하다면 설치하는 것이 좋습니다.el7el6오라클 리눅스 6이 버전이나 다른 버전의 경우 rpmfind에서 인쇄하세요.

관련 정보