Ubuntu Linux删除/删除PPA apt-get命令

时间:2020-01-09 10:40:37  来源:igfitidea点击:

之前测试时,在Ubuntu Linux 16.04/18.04 LTS服务器上使用add-apt-repository命令添加了太多的PPA。
如何删除这些PPA?
是否有列出所有PPA的命令?
是的,您可以在Ubuntu Linux中删除PPA。
您必须具有root特权才能完成此任务。
本教程说明"如何使用各种命令行选项在Ubuntu Linux中删除PPA"。

什么是PPA?

PPA是"个人包装档案(Personal Package Archive)"的首字母缩写。
它不过是apt软件包的预构建二进制软件存储库。
作者上传源代码,并使用Launchpad在线构建软件包。

如何添加PPA并安装软件包?

语法为:

sudo add-apt-repository ppa:name/her
sudo apt update
sudo apt install package

例如,使用PPA安装一个名为peek的简单动画GIF屏幕录像机:

$ sudo add-apt-repository ppa:peek-developers/stable
$ sudo apt update
$ sudo apt install peek

如何列出所有已安装的PPA

Ubuntu Linux列出所有已安装的PPA命令
执行以下命令:

$ grep ^ /etc/apt/sources.list.d/*

Ubuntu Linux删除PPA

语法为:

sudo add-apt-repository --remove ppa:name/here

删除名为ppa:gluster/glusterfs-3.9的PPA。
但是,在删除PPA之前,请使用apt-get命令/apt命令删除从同一PPA安装的所有软件包:

$ sudo apt-get --purge remove glusterfs-server
$ sudo apt-get --purge autoremove

现在删除PPA:

$ sudo add-apt-repository --remove ppa:gluster/glusterfs-3.9

输出示例:

This archive is EOL. Please use a supported version.
More info: https://launchpad.net/~gluster/+archive/ubuntu/glusterfs-3.9
Press [ENTER] to continue or ctrl-c to cancel removing it

最后更新您的仓库:

$ sudo apt-get update

输出示例:

Hit:1 http://ppa.launchpad.net/saiarcot895/myppa/ubuntu xenial InRelease
Hit:2 http://download.nus.edu.sg/mirror/mariadb/repo/10.1/ubuntu xenial InRelease         
Get:3 http://security.ubuntu.com/ubuntu xenial-security InRelease [102 kB]                     
Hit:4 http://mirror.lstn.net/mariadb/repo/10.1/ubuntu xenial InRelease                                    
Hit:5 http://in.archive.ubuntu.com/ubuntu xenial InRelease              
Hit:6 http://in.archive.ubuntu.com/ubuntu xenial-updates InRelease
Get:7 http://in.archive.ubuntu.com/ubuntu xenial-backports InRelease [102 kB]
Fetched 204 kB in 1s (185 kB/s)    
Reading package lists... Done

PPA清除工具

ppa-purge工具不过是一个bash shell脚本,它能够将给定PPA中的所有软件包降级到原始的Ubuntu版本。
它禁用PPA。
首先安装ppa-purge:

$ sudo apt-get install ppa-purge

ppa-purge语法

语法为:

$ sudo ppa-purge ppa:repo-name/dirname

例如,删除用于在Ubuntu Linux上加速apt-get的apt-fast命令存储库:
使用ppa-purge脚本删除PPA

$ sudo ppa-purge ppa:saiarcot895/mypp

要删除https://launchpad.net/~saiarcot895/+archive/ubuntu/myppa,您也可以使用以下语法:

$ sudo ppa-purge -o myppa
$ sudo ppa-purge -o saiarcot895 -p myppa

其中:

-p [ppaname]		PPA name to be disabled (default: ppa)
	-o [ppaowner]		PPA owner
	-s [host]		Repository server (default: ppa.launchpad.net)
	-d [distribution]	Override the default distribution choice.
	-y 			Pass -y --force-yes to apt-get or -y to aptitude
	-i			Reverse preference of apt-get upon aptitude.
	-h			Display this help text

Ubuntu Linux删除PPA

在最后一个示例中,您将学习如何在Ubuntu中删除Ansible的PPA:

sudo ppa-purge -o ansible