自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

了解 Ubuntu 的軟件存儲(chǔ)庫系統(tǒng)

系統(tǒng) Linux
了解 Ubuntu 軟件倉庫系統(tǒng)的基本機(jī)制,更好地處理軟件包管理問題,避免常見的更新錯(cuò)誤。

當(dāng)你開始使用 Ubuntu 或者其它基于 Ubuntu 的發(fā)行版時(shí),你很快就會(huì)學(xué)會(huì)使用 apt 命令安裝軟件包:

sudo apt install package_name

你可能還會(huì)使用這三條 PPA 命令安裝其它軟件:

sudo add-apt-repository ppa:PPA_Name/ppa
sudo apt update
sudo apt install package_from_ppa

但當(dāng)你添加一些外部的軟件存儲(chǔ)庫時(shí),很可能會(huì)遇到一些更新錯(cuò)誤。

盡管你可以在互聯(lián)網(wǎng)上搜索到同樣的報(bào)錯(cuò)以及對(duì)應(yīng)的解決方案,但在大多數(shù)情況下,你并不知道這些錯(cuò)誤為什么會(huì)出現(xiàn),也不知道它們是怎么被解決的。

如果你了解了 Ubuntu 軟件存儲(chǔ)庫的運(yùn)行機(jī)制,你就會(huì)很清楚這些問題的根源是什么,進(jìn)而對(duì)癥下藥地給出處理方式。

在技術(shù)論壇上,你可以找到很多相關(guān)的零散內(nèi)容,但那些碎片化的信息并不能讓你對(duì)其產(chǎn)生一個(gè)全面的理解。

因此我寫出了這篇文章,以便讓你全面了解軟件存儲(chǔ)庫是如何運(yùn)作的。

本文的內(nèi)容適用于 Linux Mint、Elementary OS 以及其它基于 Ubuntu 的發(fā)行版(Debian 或許也適用)。

本文主要面向終端用戶而不是開發(fā)者,我只會(huì)介紹維護(hù)系統(tǒng)軟件存儲(chǔ)庫所需要的知識(shí),不會(huì)展示如何在 Ubuntu 中打包應(yīng)用程序。

我們會(huì)先從關(guān)鍵部分開始,了解軟件包管理器和軟件存儲(chǔ)庫的基本概念。這可以為了解它們的底層運(yùn)作方式奠定基礎(chǔ)。

1、什么是包管理器?

簡(jiǎn)單地說,包管理器就是讓用戶在操作系統(tǒng)上安裝、移除、升級(jí)、配置、管理軟件包的工具。

Ubuntu 通過軟件存儲(chǔ)庫為用戶提供軟件。軟件存儲(chǔ)庫中包含了各種不同類型的軟件包以及它們的元數(shù)據(jù)文件,元數(shù)據(jù)文件中記錄了軟件包的信息,包括軟件包名稱、版本號(hào)、軟件包描述和軟件存儲(chǔ)庫名稱等。

軟件包管理器與元數(shù)據(jù)進(jìn)行交互,并在你的系統(tǒng)上創(chuàng)建本地的元數(shù)據(jù)緩存。當(dāng)你需要安裝軟件時(shí),軟件包管理器會(huì)引用這些緩存來獲取信息,通過互聯(lián)網(wǎng)連接到對(duì)應(yīng)的存儲(chǔ)庫下載軟件包,然后再將軟件包安裝到系統(tǒng)上。

下面這篇文章詳細(xì)介紹了軟件包管理器的工作原理,歡迎查閱。

Linux 上的軟件包管理器

2、Ubuntu 的默認(rèn)軟件存儲(chǔ)庫

在上一節(jié)中,你可能已經(jīng)對(duì)軟件存儲(chǔ)庫有了一些認(rèn)識(shí)。

你可能已經(jīng)猜到,沒有哪個(gè)軟件存儲(chǔ)庫會(huì)包含所有軟件包。因?yàn)檐浖鼤?huì)被分類放置在不同的軟件存儲(chǔ)庫中,這樣就可以方便地啟用或禁用部分軟件存儲(chǔ)庫。

每個(gè) Ubuntu 版本都有自己的一組四個(gè)官方存儲(chǔ)庫:

  • Main – Canonical 支持的自由開源軟件
  • Universe – 社區(qū)維護(hù)的自由開源軟件
  • Restricted – 設(shè)備的專有驅(qū)動(dòng)程序
  • Multiverse – 受版權(quán)或法律問題限制的軟件

下面這篇文章介紹了如何在 Ubuntu 中啟用 Universe 和 Multiverse 軟件存儲(chǔ)庫。

如何啟用 Universe 和 Multiverse 軟件存儲(chǔ)庫

3、了解 sources.list

sources.list 是 Ubuntu 軟件存儲(chǔ)庫機(jī)制的一個(gè)組成部分。sources.list 文件中存在的錯(cuò)誤條目常常是引發(fā)一些與更新問題的根本原因。

因此,了解 sources.list 很重要。

sources.list 是一個(gè)記錄了軟件存儲(chǔ)庫信息的文本文件,每一行未被注釋的內(nèi)容都代表一個(gè)單獨(dú)的軟件存儲(chǔ)庫。

sources.list in Ubuntusources.list in Ubuntu

但這些內(nèi)容需要遵循特定的格式,并且不應(yīng)出現(xiàn)重復(fù)的行。下面這篇文章中介紹了 sources.list 的更多詳細(xì)內(nèi)容。

sources.list 的用法

4、深入了解 PPA

盡管 Ubuntu 最近在大力推廣 Snap,但 PPA 仍然是獲取 Ubuntu 最新軟件的一個(gè)可靠途徑。

然而很多 Ubuntu 用戶都只是刻板地直接運(yùn)行上面的三條命令來使用 PPA,自然很容易會(huì)遇到諸如“repository does not have release file”這樣的問題。

下面這篇文章是一篇深入詳盡的 PPA 指南。

PPA 詳盡指南

5、添加外部軟件存儲(chǔ)庫

除了默認(rèn)軟件存儲(chǔ)庫和 PPA,你還可以從第三方軟件存儲(chǔ)庫中添加軟件。比如 Brave 瀏覽器、Docker 等軟件都專門為 Ubuntu 提供了軟件存儲(chǔ)庫。

你可以通過下面這篇文章了解使用外部軟件存儲(chǔ)庫的機(jī)制。

通過外部存儲(chǔ)庫安裝軟件

6、排查常見錯(cuò)誤

現(xiàn)在你已經(jīng)了解了底層機(jī)制,現(xiàn)在可以熟悉一下在使用 Ubuntu 時(shí)可能遇到的典型更新錯(cuò)誤了。

當(dāng)你看到出現(xiàn)錯(cuò)誤之后,你會(huì)得到一些關(guān)于它的根本原因的提示。在了解根本原因后,你就能知道某個(gè)解決方案是如何解決問題的了。

這就是本文的目的。讓你充分了解軟件包管理系統(tǒng)的底層知識(shí),從而避免常見錯(cuò)誤或者直接有效修復(fù)這些錯(cuò)誤。

你不僅要知其然,還要知其所以然。

下載軟件存儲(chǔ)庫信息失敗

如果遇到了這種情況,就可以開始調(diào)查了。

Failed to download repository informationFailed to download repository information

在某些情況下,可能是網(wǎng)絡(luò)連接的問題,但也有可能是因?yàn)槟阕孕刑砑恿四承┸浖鎯?chǔ)庫,或者 sources.list 中的條目有誤。

這個(gè)時(shí)候應(yīng)該在終端中嘗試刷新軟件包緩存。

sudo apt update

檢查輸出結(jié)果的最后幾行,它會(huì)給出錯(cuò)誤信息(也就是以 “E:” 開頭的行)。有了錯(cuò)誤信息之后,就可以開始故障排除了。

軟件存儲(chǔ)庫中沒有發(fā)布文件

如果 Ubuntu 用戶未檢查某個(gè) PPA 是否支持其 Ubuntu 版本,就盲目向系統(tǒng)中添加該 PPA 時(shí),就很可能會(huì)遇到這樣的錯(cuò)誤。

E: The repository ‘http://ppa.launchpad.net/numix/ppa/ubuntu focal Release’ does not have a Release file.

原因很可能就是這個(gè)軟件存儲(chǔ)庫沒有針對(duì)所使用的 Ubuntu 版本進(jìn)行配置。

下面這篇文章對(duì)此做了詳細(xì)解釋。

軟件存儲(chǔ)庫中沒有發(fā)布文件

MergeList 問題

如果你看到這樣的錯(cuò)誤:

E:Encountered a section with no Package: header,
E:Problem with MergeList /var/lib/apt/lists/archive.ubuntu.com_ubuntu_dists_precise_universe_binary-i386_Packages,
E:The package lists or status file could not be parsed or opened.

這表明第二行中提到的緩存文件已經(jīng)損壞。對(duì)應(yīng)的解決方法是清空緩存并重試。

下面這篇文章對(duì)此做了詳細(xì)解釋。

MergeList 問題

目標(biāo)軟件包被多次配置

好吧!嚴(yán)格來說,這不是一個(gè)錯(cuò)誤。它只是一個(gè)警告。但它仍然很常見,可能會(huì)給許多 Ubuntu 新用戶帶來麻煩。

這是一個(gè)能讓你把新學(xué)到的知識(shí)用在這里的好例子。

出現(xiàn)這個(gè)問題是因?yàn)?nbsp;sources.list 文件中有重復(fù)的條目。解決辦法是將所有重復(fù)的行刪除至只保留一行。

下面這篇文章對(duì)此做了詳細(xì)解釋。

目標(biāo)軟件包被多次配置

7、繼續(xù)學(xué)習(xí)

在讀完這篇文章后,希望你對(duì) Ubuntu 的軟件存儲(chǔ)庫機(jī)制能有更深入的了解。下一次當(dāng)你遇到錯(cuò)誤并尋找解決方案時(shí),你就更有可能理解發(fā)生了什么。

接下來,你應(yīng)該學(xué)會(huì)使用 apt 的各種命令管理軟件包,不僅僅只是 apt install 或 apt remove。

apt 命令詳盡指南

你還可以詳細(xì)了解一下關(guān)于軟件包管理的其它知識(shí)。

完全指南:在 Ubuntu 安裝和刪除軟件

由于 Ubuntu 比以往任何時(shí)候都更推崇 Snap,所以你也應(yīng)該學(xué)習(xí)一些必要的 Snap 命令。

完全指南:在 Ubuntu 上使用 Snap 安裝包

Flatpak 應(yīng)用程序也越來越受歡迎,你也很可能會(huì)接觸到它們。

在 Ubuntu 上安裝和使用 Flatpak

希望你喜歡學(xué)習(xí)軟件存儲(chǔ)庫的機(jī)制,并對(duì)軟件包管理有更清晰的認(rèn)識(shí)。

責(zé)任編輯:龐桂玉 來源: Linux中國
相關(guān)推薦

2010-01-05 18:20:39

Ubuntu軟件庫

2022-11-29 16:27:59

Ubuntu軟件包

2010-01-06 13:18:07

Ubuntu訪問

2018-05-24 08:37:30

2010-01-05 10:21:45

Ubuntu硬盤

2018-09-19 10:15:45

塊存儲(chǔ)文件存儲(chǔ)對(duì)象存儲(chǔ)

2009-02-19 15:06:00

UbuntuOffice實(shí)用

2010-01-08 14:45:26

Ubuntu VMwa

2009-12-29 17:52:40

Ubuntu serv

2009-12-29 13:30:23

Ubuntu操作系統(tǒng)

2009-03-06 15:03:39

LinuxUbuntu軟件

2010-02-07 09:51:22

2014-12-05 10:51:57

軟件定義存儲(chǔ)閃存云應(yīng)用

2011-08-01 09:49:55

虛擬桌面存儲(chǔ)

2020-01-21 19:44:03

云存儲(chǔ)數(shù)據(jù)塊存儲(chǔ)

2010-03-15 10:40:56

Ubuntu Linu

2010-06-05 12:15:14

光纖布線

2011-03-02 15:10:43

國產(chǎn)數(shù)據(jù)庫

2020-04-28 18:20:04

Ubuntu 20.0UbuntuLinux

2016-08-30 13:59:28

點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)