apt/dpkg로 설치된 패키지의 빌드 정보를 검색할 수 있는 방법이 있습니까?

apt/dpkg로 설치된 패키지의 빌드 정보를 검색할 수 있는 방법이 있습니까?

checkinstall나는 git 소스에서 직접 빌드된 것으로 생각되는 .deb 패키지를 가지고 있었습니다 libmypackage1_0.10.7-1_armhf.deb. 그런 다음 몇 달 후에 git pull동일한 소스에서 하나를 만들고 .deb의 새 버전을 빌드했지만 이름이 libmypackage1_0.10.7-1_armhf.deb다시 생겼습니다. .

몇 달이 지난 지금, 내가 만든 커밋의 git 해시가 파일 이름이나 버전에 포함되어 있지 않기 때문에 어떤 deb가 첫 번째 빌드인지 두 번째 빌드에 설치되었는지 더 이상 확신할 수 없습니다.

그러나 두 실행의 빌드 출력을 모두 유지했으며 libmypackage1_0.10.7-1_armhf.buildinfo. 또는 다른 도구를 사용하여 쿼리 할 dpkg -i ...수 있도록 종료하시겠습니까 ? 기본적으로 "현재 설치의 빌드 날짜는 언제입니까 ?" 또는 두 버전을 구별하는 데 도움이 되는 기타 정보를 쿼리하고 싶습니다 .aptdpkglibmypackage1_0.10.7-1

예제에서 약간 벗어나야 한다면 패키지에 대한 동일한 정보를 libmypackage검색하고 싶다고 가정해 보겠습니다 bash. 예를 들면 다음과 같습니다.

$ apt-show-versions bash
bash:armhf/stretch 4.4-5 uptodate

이 패키지의 빌드 날짜를 알려 주는 명령을 실행할 수 있습니까?

답변1

buildinfo현재 정보는 deb패키지와 함께 저장되지 않습니다.

필요한 정보를 결정하는 다른 방법도 많이 있습니다. deb패키지는 타임스탬프를 유지하므로 신뢰할 수 있다고 가정하면(여기서는 그럴 것 같습니다), 패키지에 의해 설치된 파일의 타임스탬프를 보면 빌드 타임스탬프에 대한 대략적인 정보를 얻을 수 있습니다.

ls -ldtR $(dpkg -L libmypackage) | grep -v ^d | head

아직 s 가 있는 경우 deb설치된 파일을 체크섬과 비교하여 어떤 파일이 설치되어 있는지 확인할 수 있습니다.

debsums libmypackage1_0.10.7-1_armhf.deb

파일을 빌드 정보에 연결 하려면 deb해당 파일의 체크섬을 사용할 수 있습니다 changes.

관련 정보