답변:
기본적으로 세 가지 방법이 있습니다.
첫째 : 패키지가 설치되어 있어야하며 전체 경로를 지정해야합니다.
apk info --who-owns /path/to/the/file
둘째 : 사용 pkgs.alpinelinux.org의 웹 사이트
셋째 : json 출력을 필터링하여 api.alpinelinux.org API를 사용하십시오. 이를 위해 jq와 같은 json 파서가 필요합니다.
apk add jq
. : 프란체스코
apk info --who-owns /with/th/full/path
패키지가 설치된 경우 도구입니다. 그렇지 않으면 CLI에서 사용할 수 없습니다. [pkgs.alpinelinux.org/contents] ( pkgs.alpinelinux.org/contents ) 웹 사이트를 확인해야합니다 . 바이너리 이름을 작성하면 해당 바이너리가 포함 된 패키지가 반환됩니다.
apk info --who-owns
하여 파일의 전체 경로를 모르는 경우 어떻게합니까?
go get github.com/jessfraz/apk-file
(이 행복하게 비 고산 시스템에서 실행). 바이너리는 정적 일 수 있으므로 도커 컨테이너 등에 복사 될 수 있습니다.
apk info
에 더 가까운 것 같습니다dpkg -S
. 내 경우에는 기존 파일이 어디에서 오는 것이 아니라 "이름을 알고있는이 바이너리를 제공하는 패키지"라는 질문에 대답하려고합니다.