這篇文章將為大家詳細(xì)講解有關(guān)怎么在基于Ubuntu或Debian的Linux 發(fā)行版中查看一個(gè)軟件包的依賴,小編覺得挺實(shí)用的,因此分享給大家做個(gè)參考,希望大家閱讀完這篇文章后可以有所收獲。
網(wǎng)站建設(shè)哪家好,找創(chuàng)新互聯(lián)建站!專注于網(wǎng)頁設(shè)計(jì)、網(wǎng)站建設(shè)、微信開發(fā)、微信平臺小程序開發(fā)、集團(tuán)企業(yè)網(wǎng)站建設(shè)等服務(wù)項(xiàng)目。為回饋新老客戶創(chuàng)新互聯(lián)還提供了興城免費(fèi)建站歡迎大家使用!
當(dāng)你在 Linux 中安裝一個(gè)軟件包,有時(shí)這個(gè)軟件包還需要其他的軟件包來使它工作正常。這些額外的軟件包就叫作這個(gè)包的依賴。假如這些軟件包之前沒有在系統(tǒng)中被安裝,那么這些依賴在安裝這個(gè)軟件包的同時(shí)會(huì)被自動(dòng)安裝上。
舉個(gè)例子,用來轉(zhuǎn)換視頻格式的 GUI 工具 HandBrake 需要 FFmpeg、GStreamer 軟件包。所以對于 HandBrake 來說, FFmpeg 和 GStreamer 就是它的包依賴。
假如在你的系統(tǒng)上這些軟件包沒有被安裝,則當(dāng)你 在 Ubuntu 上安裝 HandBrake 時(shí),就會(huì)自動(dòng)安裝上它們。
正如在 Linux 上經(jīng)常發(fā)生的那樣,有多種方法來達(dá)到相同的目標(biāo)。下面讓我們一起瞧瞧查看一個(gè)軟件包依賴的多種方法。
你可以使用 apt show 命令 來展示一個(gè)包的詳細(xì)信息。其中依賴信息就是其中一部分,你可以在以 “Depends” 打頭的那些行中看到它們。
例如,下面展示的是使用 apt show
展示 ubuntu-restricted-extras 這個(gè)包的詳細(xì)信息:
abhishek@itsfoss:~$ apt show ubuntu-restricted-extras Package: ubuntu-restricted-extrasVersion: 67Priority: optionalSection: multiverse/metapackagesOrigin: UbuntuMaintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>Bugs: https://bugs.launchpad.net/ubuntu/+filebugInstalled-Size: 14.3 kBDepends: ubuntu-restricted-addonsRecommends: libavcodec-extra, ttf-mscorefonts-installer, unrarDownload-Size: 3,200 BAPT-Manual-Installed: yesAPT-Sources: http://us.archive.ubuntu.com/ubuntu focal/multiverse amd64 PackagesDescription: Commonly used media codecs and fonts for Ubuntu This collection of packages includes: - MP3 and other audio codec software to play various audio formats (GStreamer plugins) - software to install the Microsoft Web fonts - the Adobe Flash plugin - LAME, software to create compressed audio files. . This software does not include libdvdcss2, and will not let you play encrypted DVDs. For more information, see https://help.ubuntu.com/community/RestrictedFormats/PlayingDVDs . These software packages are from the Multiverse channel, restricted by copyright or legal issues in some countries. For more information, see http://www.ubuntu.com/ubuntu/licensing
如你所見,ubuntu-restricted-extras
包依賴于 ubuntu-restricted-addons
這個(gè)軟件包。
但你得小心的是依賴包還可能依賴于其他包,這樣一直循環(huán)往復(fù)直到盡頭。但幸好 APT 包管理器可以為你處理這些復(fù)雜的依賴關(guān)系,自動(dòng)地安裝所有的依賴(大多數(shù)情況下)。
什么是推薦包?
你注意到了上面結(jié)果輸出中以 “Recommends” 開頭的那些行了嗎?
推薦包不是軟件包的直接依賴,但它們可以開啟軟件包的一些額外功能。
正如你上面看到的那樣,
ubuntu-restricted-extras
包有ttf-mscorefonts-installer
這個(gè)推薦包,用來在 Ubuntu 上安裝 Microsoft 的字體。這些推薦包也會(huì)默認(rèn)被一同安裝上,假如你想顯式地禁止這些推薦包的安裝,你可以像下面這樣使用
–-no-install-recommends
選項(xiàng)。sudo apt install --no-install-recommends package_name
上面通過 apt show
的方式會(huì)獲取到大量信息,假如你想在腳本中獲取到依賴信息,那么 apt-cache
命令將會(huì)給你一個(gè)更好且更簡潔的輸出結(jié)果。
apt-cache depends package_name
下面的輸出看起來更加干凈,不是嗎?
apt
和 apt-cache
都作用于軟件倉庫中的軟件包,但假如你下載了一個(gè) DEB 文件,那么這兩個(gè)命令就不起作用了。
在這種情形下,你可以使用 dpkg
命令的 -I
或 --info
選項(xiàng)。
dpkg -I path_to_deb_file
依賴信息就可以在以 “Depends” 開頭的那些行中找到。
假如你想查看更多關(guān)于依賴的信息,那么你可以使用 apt-rdepends
工具。這個(gè)工具可以創(chuàng)建完整的依賴樹。這樣你就可以得到一個(gè)軟件包的依賴以及這些依賴的依賴。
它不是一個(gè)常規(guī)的 apt
命令,所以你需要從 universe 軟件倉庫中安裝上它:
sudo apt install apt-rdepends
這個(gè)命令的輸出通常很多,取決于依賴樹的大小。
Reading package lists... DoneBuilding dependency treeReading state information... Doneshutter Depends: procps Depends: xdg-utilsimagemagick Depends: imagemagick-6.q16 (>= 8:6.9.2.10+dfsg-2~)imagemagick-6.q16 Depends: hicolor-icon-theme Depends: libc6 (>= 2.4) Depends: libmagickcore-6.q16-6 (>= 8:6.9.10.2) Depends: libmagickwand-6.q16-6 (>= 8:6.9.10.2)hicolor-icon-themelibc6 Depends: libcrypt1 (>= 1:4.4.10-10ubuntu4) Depends: libgcc-s1libcrypt1 Depends: libc6 (>= 2.25)
apt-rdepends
工具的功能非常多樣,它還可以用來計(jì)算反向依賴。這意味著你可以查看某個(gè)特定的包被哪些軟件包依賴。
apt-rdepends -r package_name
輸出可能會(huì)非常多,因?yàn)樗鼘⒋蛴〕龇聪蛞蕾嚇洹?/p>
abhishek@itsfoss:~$ apt-rdepends -r ffmpegReading package lists... DoneBuilding dependency tree Reading state information... Doneffmpeg Reverse Depends: ardour-video-timeline (>= 1:5.12.0-3ubuntu4) Reverse Depends: deepin-screen-recorder (5.0.0-1build2) Reverse Depends: devede (4.15.0-2) Reverse Depends: dvd-slideshow (0.8.6.1-1) Reverse Depends: green-recorder (>= 3.2.3)
關(guān)于“怎么在基于Ubuntu或Debian的Linux 發(fā)行版中查看一個(gè)軟件包的依賴”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,使各位可以學(xué)到更多知識,如果覺得文章不錯(cuò),請把它分享出去讓更多的人看到。
文章標(biāo)題:怎么在基于Ubuntu或Debian的Linux發(fā)行版中查看一個(gè)軟件包的依賴
分享地址:http://jinyejixie.com/article30/ipicso.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供App開發(fā)、Google、企業(yè)網(wǎng)站制作、小程序開發(fā)、電子商務(wù)、網(wǎng)站營銷
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)