Cách nhận biết gói công cụ Ubuntu nào


23

Như một ví dụ cụ thể, tôi muốn có thể sử dụng một công cụ cụ thể chưa được cài đặt (giả sử nslookup) và có thể cho biết gói nào tôi cần cài đặt khi thất bại sau:

apt-get install nslookup
E: Unable to locate package nslookup

Rõ ràng tôi có thể google để tìm câu trả lời cho một gói cụ thể (dnsutils) nhưng tôi muốn biết cách tự tìm nó.


Đây là tìm kiếm apt-cache nhanh và bẩn nslookup
Unix Janitor

apt-cache chỉ tìm kiếm các mô tả. Tôi đang tìm tập tin cụ thể, ErikA chỉ ra: tìm kiếm tập tin apt FOO
ErebusBat

Câu trả lời:


23

Có hai cách tôi biết để làm điều này:

host ~ # apt-file update
host ~ # apt-file search nslookup
dnsutils: /usr/bin/nslookup
dnsutils: /usr/share/man/man1/nslookup.1.gz
gajim: /usr/share/gajim/src/common/nslookup.py
kaptain: /usr/share/kaptain/nslookup.kaptn
kvirc2-data: /usr/share/kvirc2/help/en/nslookup.kvihelp
libgnet2.0-0: /usr/share/doc/libgnet2.0-0/examples/dnslookup.c.gz
manpages-ja: /usr/share/man/ja/man8/nslookup.8.gz
procmail-lib: /usr/share/procmail-lib/pm-janslookup.rc
rbot: /usr/share/rbot/plugins/nslookup.rb
scrollz: /usr/share/scrollz/help/nslookup
zsh: /usr/share/zsh/4.3.4/functions/Completion/Unix/_nslookup
zsh: /usr/share/zsh/4.3.4/functions/Misc/nslookup
zsh-beta: /usr/share/zsh-beta/functions/Completion/Unix/_nslookup
zsh-beta: /usr/share/zsh-beta/functions/Misc/nslookup

và ...

host ~ # apt-cache search nslookup
host - utility for querying DNS servers
dnsutils - Clients provided with BIND

1
apt-cachechỉ tìm kiếm các gói bạn đã cài đặt, trong khi apt-filetìm kiếm TẤT CẢ các gói trong đó sources.list, bao gồm các gói chưa được cài đặt. Vì vậy, trong trường hợp này, apt-filelà một để sử dụng.
Steven Thứ Hai

1
@Steven, tôi sẽ không đồng ý với điều đó. Tôi vừa thực hiện một thử nghiệm tìm kiếm "vlc" trên VPS ub Ubuntu của mình bằng cách sử dụng apt-cache và nó cho thấy tất cả các gói liên quan đến vlc, không có gói nào tôi đã cài đặt.
EEAA

@Steven Monai, điều đó không đúng. apt-cachenhìn vào các mô tả gói (tìm kiếm /var/lib/apt/lists/*_Packages). Có một cái gì đó được cài đặt không thành vấn đề. Các mô tả gói không bao gồm một danh sách các tập tin. Tôi đồng ý rằng đó apt-filecó thể là công cụ để sử dụng, nếu mở trình duyệt web không phải là một tùy chọn.
Zoredache

Ngoài ra còn có tự động apt, như là một thay thế cho tập tin apt. Tôi không có một sở thích mạnh mẽ. auto-apt có thể nghe các cuộc gọi exec không thành công, có thể hữu ích khi chạy tập lệnh cấu hình có tính năng phát hiện.
Tobu

1
@EricA, Zoredache: Tôi đứng chính xác. Hãy để tôi nói lại: Nếu bạn cần biết gói đã gỡ cài đặt nào chứa một tệp cụ thể (ví dụ /usr/bin/nslookup), thì hãy sử dụng apt-file. Nếu bạn chỉ muốn tìm kiếm tên gói và mô tả, thì apt-cachehoạt động tốt.
Steven Thứ Hai

3

Bạn đã command-not-foundcài đặt chưa?

Chỉ cần gõ lệnh trong bash hoặc zsh và nó sẽ cho bạn biết gói nào có gói đó và nếu bạn cần kích hoạt repos không chính hoặc sửa PATH của bạn. Hoặc gọi command-not-found $command_name.

Hoặc bạn có thể truy cập http://packages.ubfox.com/file:bin/nslookup , nhưng điều đó mặc định cho các gói nghiệp.



Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.