Odpowiedzi:
Zasadniczo masz trzy sposoby.
Po pierwsze: pakiet powinien zostać zainstalowany i musisz podać pełną ścieżkę:
apk info --who-owns /path/to/the/file
Po drugie: skorzystaj z witryny pkgs.alpinelinux.org
Po trzecie: użyj interfejsu API api.alpinelinux.org, filtrując dane wyjściowe json. Do tego potrzebny jest parser json, taki jak jq:
apk add jq
następnie użyj interfejsu API zgodnie z instrukcjami tutaj podanymi
.: Francesco
apk info --who-owns /with/th/full/path
jest narzędziem, jeśli masz zainstalowany pakiet, w przeciwnym razie z CLI nie jest możliwe. Powinieneś sprawdzić stronę [pkgs.alpinelinux.org/contents] ( pkgs.alpinelinux.org/contents ). Zapisujesz tam nazwę binarną, a ona zwraca pakiet zawierający ten plik binarny.
apk info --who-owns
, jak się masz, jeśli nie znasz pełnej ścieżki do pliku?
Szukasz odpowiednika Debiana apt-file
dla Alpine. Wyszukanie tego daje plik apk .
Zasadniczo apt-file, ale dla alpejskich.
go get github.com/jessfraz/apk-file
(na szczęście działa na systemach innych niż alpejskie). Plik binarny jest prawdopodobnie statyczny, więc prawdopodobnie można go skopiować do kontenerów dokerów itp.
apk info
wydaje się być bliżejdpkg -S
. W moim przypadku próbuję odpowiedzieć na pytanie „Jaki pakiet zawiera ten plik binarny, którego nazwę znam”, a nie skąd pochodzi ten wcześniej istniejący plik.