Podczas pracy w systemie Ubuntu 8.04 często brakuje mi programu, strony podręcznika lub innego pliku. Czy istnieje prosty sposób sprawdzenia, który pakiet zawiera dany plik (czy jest już zainstalowany, czy nie)? Może jakaś niejasna opcja dla apt lub dpkg?
299
dpkg -S /path/to/file
jeśli masz zainstalowany pakiet.Odpowiedzi:
lub
Aby zainstalować
apt-file
, użyj:Będziesz musiał zaktualizować jego bazę danych, zanim będziesz mógł z niej korzystać:
źródło
dpkg -S
działa jak opisano poniżej.(Debian / Ubuntu) Odkryj, do którego pakietu należy plik :
źródło
apt-file
tego znajduje to również pakiet do pliku, jeśli został zainstalowany ręcznie za pośrednictwemdpkg -i
!dpkg -S "$(readlink -fn "$(which rename)")"
.dpkg-query: no path found matching pattern /usr/bin/java
, choć nie jest to plik w/usr/bin/java
Package.debian.org jest tym, czego zawsze używam do wykonania tego zadania. Jest lepszy od apt-file, ponieważ może także znaleźć części nazw plików. Jest również powiązany z główną listą pakietów, która zawiera opisy, błędy itp. W sumie dobra strona internetowa. Nie tak przydatne z linii poleceń, ale wciąż całkiem przydatne.
Ze względu na szybkość dodałem do zakładek adres URL:
w Firefoksie i dodałem słowo kluczowe „debfind” jako słowo kluczowe (kliknij „więcej” w menedżerze zakładek z podświetleniem), więc mogę po prostu wpisać „debfind” i zadziała. Możesz zmienić „pakiet” z niestabilnego na stabilny lub testowy, jeśli chcesz, dla innych wersji dystrybucji.
źródło
Możesz także użyć dlocate. Ze strony podręcznika;
źródło
dlocate
to także moja ulubiona metoda, bardzo niezawodna.dlocate
nie znajdzie ostatnio zainstalowanego pakietu, chyba że uruchomisz go jakosudo update-dlocatedb
pierwszy. Polecenie jest uruchamiane codziennie codziennie w /etc/cron.daily/dlocateZnalazłem Wajiga ...
na przykład.
Wajig to przydatne narzędzie wiersza poleceń lub konsoli, które otacza wszystkie zalety apt-get, dpkg, których nigdy nie chciałeś się uczyć. .
Aby zainstalować Wajig użyj:
Samo polecenie „Który pakiet” zależy od apt-file
nadal będziesz musiał zaktualizować bazę danych, zanim będziesz mógł z niej korzystać: - Nie wiem jeszcze, czy aktualizacja wajig, która wykonuje aktualizację apt-get, aktualizuje również pamięć podręczną plików, ale spodziewam się, że tak.
(i Super Cow, Wielkanocny egss?!)
źródło
Podobnie do odpowiedzi Jamuraa dla Debiana, możesz także przejść do http://packages.ubuntu.com/ dla Ubuntu. Musisz przewinąć nieco w dół, aby znaleźć pole wyszukiwania „Przeszukaj zawartość paczek”, w którym możesz wpisać ścieżkę do pliku.
źródło
Spróbuj wyszukać pliki przy użyciu http://www.kodkast.com/applications/find-which-package-file-belongs-to
Jest to aplikacja do wyszukiwania plików zawartych w różnych pakietach rpms / linux, i jest bardzo przydatna, gdy nawet nie masz zainstalowanej rpm na twoim komputerze.
źródło
Pakiet „nie znaleziono komendy” zawiera wskazówki na temat potencjalnych komend i nazwy pakietu debian. Działa poprzez wpisanie polecenia w powłoce bash i sprawdzenie jego wyniku.
Na przykład, jeśli nazwa polecenia jest znana:
a jeśli polecenie nie jest znane, stosowane są pewne domysły:
źródło
-h
lub--help
na końcu trochę by pomogło. Jeśli dodanie-h
na końcu zapewniłoby to bezpieczeństwo, zaleciłbym to, ale mimo to nie jest to dobry sposób na osiągnięcie tego, o co prosi OP.