Ubuntu官方源和PPA源简介

ubuntu中,软件的安装主要有3种方式:

  • 通过apt包管理工具从官方软件源安装

  • 通过deb格式的软件包安装,以安装搜狗输入法为例:

    1
    2
    3
    4
    下载 sogou.deb
    sudo dpkg -i sogou.deb #出现安装不成功,需要依赖
    sudo apt-get install -f #安装依赖
    sudo dpkg -i sogou.deb
  • 使用软件的源码手动编译安装

下面我们主要介绍第一种安装方式,即apt命令从软件源安装。软件源分为 Ubuntu官方软件源PPA软件源 两种。

1)Ubuntu 官方软件源,其中包含了系统中绝大多数的软件,对应的目录为 /etc/apt/sources.list,如下所示:

一般情况下,我们会将其改成国内的镜像源,因为访问国外的资源太慢了,国内开源镜像站点汇总

安装和卸载软件也非常的简单:

1
2
sudo apt-get install <package-name>    # 安装
sudo apt-get remove <package-name> # 卸载

每当通过 install 命令去安装一个软件时,apt 包管理工具就会从系统中的/etc/apt/sources.list文件或/etc/apt/sources.list.d文件夹中去读取软件源的网址信息,查找可以包含该软件的软件源的网址,然后就从这个网址上把指定的软件给下载下来,然后由 apt 包管理工具在本地进行一些解压和安装的其他操作。

2)PPA(Personal Package Archives)个人软件包集,它出现的原因是:系统自带的源是非常有限的 ,如果通过deb直接安装其他软件的话,得不到更新和维护,所以此时PPA软件源就应运而生。它其实是一个网站,开发者们在上面建立自己的仓库,上传开发的软件供用户安装。

1
2
sudo add-apt-repository ppa:user/ppa-name    # 添加ppa软件源
sudo add-apt-repository --remove ppa:user/ppa-name # 删除ppa软件源

当添加完某个ppa软件源后,会在系统的 /etc/apt/sources.list.d 目录下生成对应的源文件:

可见,此操作就是在文件里添加了一个和软件源一模一样的东西,以 notepad++ 的使用为例:

1
2
3
4
5
6
7
 安装
sudo add-apt-repository ppa:notepadqq-team/notepadqq
sudo apt-get update # 记得此时要更新一下软件源
sudo apt-get install notepadqq
卸载
sudo apt-get remove notepadqq
sudo add-apt-repository --remove ppa:notepadqq-team/notepadqq

3)上面两个东西,其实要实现的功能是一样的,之所以在系统中存在/etc/apt/sources.list/etc/apt/sources.list.d两套东西,是系统为了区分官方源与第三方源,毕竟第三方源存在安全问题的可能性比较大。