如何徹底刪除PPA軟體庫

來源:互聯網
上載者:User

標籤:http   os   使用   ar   strong   for   檔案   資料   art   

添加一個PPA源

sudo add-apt-repository ppa:user/ppa-name

如添加cairo-dock到weekly update源

sudo add-apt-repository ppa:cairo-dock-team/weekly/ubuntu

 

刪除

rm對應檔案

/etc/apt/sources.list.d

 

為什麼要刪除某個PPA軟體庫?
1. 這個軟體因為其優秀的特性,已經被收錄進官方倉庫;
2. 因為不再需要這個軟體或對其失去了喜愛;
3. 一些位於國外的PPA軟體庫因為網路原因,有時會拖慢我們的升級過程。

常規步驟

要使一個PPA軟體庫失效,做法很簡單,只需要使用add-apt-repository加上移除的參數-r (–remove) 即可。但是,這個命令總是有那麼點不人性化的地方。試想,如果我們忘記了一個PPA軟體庫的名稱該怎麼辦?

下面以Bazaar這個軟體的PPA為例,來看一看如何移除它。出於講解和實做的需要,我們先來再系統中添加它:


$ sudo add-apt-repository ppa:bzr/p
[sudo] password for user:
你將向系統添加如下 PPA:
This archive contains the latest release or release candidate of bzr, bzr-gtk and bzrtools, built for all currently supported Ubuntu releases.


更多資訊: https://launchpad.net/~bzr/+archive/ppa
按斷行符號繼續或者 Ctrl+c 取消添加

gpg: 鑰匙環‘/tmp/tmp_h2_5p/secring.gpg’已建立
gpg: 鑰匙環‘/tmp/tmp_h2_5p/pubring.gpg’已建立
gpg: 下載密鑰‘8C6C1EFD’,從 hkp 伺服器 keyserver.ubuntu.com
gpg: /tmp/tmp_h2_5p/trustdb.gpg:建立了信任度資料庫
gpg: 密鑰 8C6C1EFD:公開金鑰“Launchpad PPA for Bazaar Developers”已匯入
gpg: 沒有找到任何絕對信任的密鑰
gpg: 合計被處理的數量:1
gpg: 已匯入:1 (RSA: 1)
OK

首先我們來看一下移除軟體包名要使用的完整命令:

$ sudo add-apt-repository -r ppa:repository-name/subdirectory

添加成功後,我們假設並不知道這個PPA軟體庫的名稱,看一看如何來擷取ppa:repository-name/subdirectory這個格式的內容。我們可以查看/etc/apt/sources.list.d/下面,有一個相應的PPA倉庫的檔案:
$ ls /etc/apt/sources.list.d
bzr-ppa-raring.list

我們來看一下bzr-ppa-raring這個檔案,raring表示添加於我們當前系統的版本代號分支,這一部分我們用不上。我們繼續看它的前一部分,叫做ppa,這一部分,是相當於ppa:repository-name/subdirectory這個格式中的subdirectory (子目錄) 部分,我們這時就可以將ppa這幾個字元套用進去,這時還差package (名稱) 部分了。除去directory部分,再向前面的所有內容,都屬於PPA名稱的內容,在這裡,PPA的名稱為bzr。所以,我們需要執行以下命令:

$ ls /etc/apt/sources.list.d
bzr-ppa-raring.list
[email protected]:~$ sudo add-apt-repository -r ppa:bzr/ppa
[sudo] password for user:
即將從系統中刪除以下 PPA:
This archive contains the latest release or release candidate of bzr, bzr-gtk and bzrtools, built for all currently supported Ubuntu releases.

更多資訊: https://launchpad.net/~bzr/+archive/ppa
按 [ENTER] 可繼續操作,按 ctrl-c 可取消其刪除操作

$

註:如果name部分有多個單詞,就會出現這樣的形式

maarten-baert-simplescreenrecorder-raring.list

此時我們需要採取相同的做法,凡除子目錄名稱的部分,其前面都屬於PPA軟體庫的名稱,這樣,刪除的命令就是:

$ sudo add-apt-repository -r ppa:maarten-baert/simplescreenrecorder

刪除完名bzr的PPA軟體庫後,我們會發現系統中還有兩處殘餘。一是與這個PPA相應的apt密鑰環:

$ sudo apt-key list | grep -B 1 Bazaar
pub 1024R/8C6C1EFD 2009-01-19
uid Launchpad PPA for Bazaar Developers

另一處是/etc/apt/sources.list.d目錄下的兩個空檔案:

$ cd /etc/apt/sources.list.d/
[email protected]:/etc/apt/sources.list.d$ ls
bzr-ppa-raring.list bzr-ppa-raring.list.save
$ cat bzr-ppa-raring.list bzr-ppa-raring.list.save
$

我們下面來清理這些殘餘。由這面的命令我們可以得知,bzr這個軟體庫的密鑰ID為8C6C1EFD,通過這個keyid,我們就可以刪除它。

$ sudo apt-key del 8C6C1EFD
OK

另外兩個殘餘的檔案,就可以直接通過rm命令來刪除了。

$ sudo rm bzr-ppa-raring.list*

簡單步驟

寫到這裡,聰明的你也許會發現,我們還可以使用另一種更為簡單的方式還清除PPA軟體庫,即只需要刪除/etc/sources.list.d/中相應的檔案bzr-ppa-raring.list和apt的密鑰環就可以了。因此,上面的步驟可簡化為:

$ sudo rm bzr-ppa-raring.list

$ sudo apt-key del 8C6C1EFD

到這裡,完整刪除PPA軟體庫的步驟就全部介紹完了。小編要開始吐槽了,由Ubuntu建立的用來添加PPA軟體庫的命令add-apt-repository可以將PPA及密鑰環匯入,卻無法將他們完整刪除。這就好比一個軟體有安裝程式,卻無卸載程式,實在讓我等潔癖症患者無法忍受啊!

如何徹底刪除PPA軟體庫

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.