本文是《Linux 入门指南》的第八篇文章,以 Ubuntu 21.10 为例,介绍了 Linux 软件管理。

设置软件源

Ubuntu 默认的软件源在中国大陆的访问速度不理想,设置 Ubuntu 的软件源为中国的服务器,可以加快在中国大陆的访问速度。

图形界面(推荐)

依次打开 "软件更新器-Ubuntu 软件-下载自",选择 "其他站点-中国-mirrors.ustc.edu.cn",依次点击 "选择服务器-关闭-重新载入" 按钮。

手动修改配置文件

如果你的时区是中国,则默认的软件源地址是 http://cn.archive.ubuntu.com/ubuntu/

修改配置文件:

sudo sed -i 's/cn.archive.ubuntu.com/mirrors.ustc.edu.cn/g' /etc/apt/sources.list

更新可用软件包列表:

sudo apt update

apt(软件包管理工具)

描述:

"advanced packaging tools(高级软件包工具)" 的缩写,软件包管理工具。

普通用户无法使用 apt,只有 root 用户才能使用 apt

用法:

      apt [选项] [命令] [软件包名]

选项:

  -y:   所有确定询问都选择 Yes,并且不提示
  -f:   尝试纠正 被破坏依赖关系的系统

命令:

  list                              根据名称列出软件包

  search                            搜索软件包描述

  show                              显示软件包细节

  install                           安装软件包

  reinstall                         重新安装软件包

  remove                            移除软件包

  autoremove                        卸载所有自动安装且不再使用的软件包

  update                            更新可用软件包列表

  upgrade                           通过 安装/升级 软件来更新系统

  full-upgrade                      通过 卸载/安装/升级 来更新系统

  edit-sources                      编辑软件源信息文件

  satisfy                           使系统满足依赖关系字符串

实例:

更新可用软件包列表(检查所有的已安装的软件包是否有更新,但不更新软件包)

apt update

通过 安装/升级 软件来更新系统(更新所有的可更新的已安装的软件包)

apt upgrade

搜索软件包描述(搜索软件包 "steam")

apt search steam

安装软件包(安装软件包 "steam")

apt install steam

更新软件包(只升级软件包 "steam")

apt upgrade steam

移除软件包(卸载软件包 "steam")

apt remove steam

移除软件包(卸载软件包 "steam",并删除配置文件)

apt purge steam

卸载所有自动安装且不再使用的软件包

apt autoremove

dpkg(软件包管理工具)

描述:

"Debian package(Debian 软件包)" 的缩写,软件包管理工具。

普通用户无法使用 dpkg,只有 root 用户才能使用 dpkg

用法:

      dpkg [命令] [.deb 文件名]

命令:

  -i|--install                                   安装软件包

  --unpack                                       释放软件包,但是不进行配置

  -A|--record-avail                              从软件包里面读取软件的信息

  --configure                                    重新配置和释放软件包

  --triggers-only                                只触发软件包

  -r|--remove                                    移除软件包(保留其配置信息)

  -P|--purge                                     移除软件包(不保留其配置信息)

  -V|--verify                                    检查包的完整性。

  --get-selections [<表达式> ...]                 把已选中的软件包列表打印到标准输出。

  --set-selections                               从标准输入里读出要选择的软件。

  --clear-selections                             取消选中所有不必要的软件包。

  --update-avail                                 替换现有可安装的软件包信息。

  --merge-avail                                  把文件中的信息合并到系统中。

  --clear-avail                                  清除现有的软件包信息。

  --forget-old-unavail                           忘却已被卸载的不可安装的软件包。

  -s|--status                                    显示指定软件包的详细状态。

  -p|--print-avail                               显示可供安装的软件版本。

  -L|--listfiles                                 列出属于指定软件包的文件。

  -l|--list  [<表达式> ...]                       简明地列出软件包的状态。

  -S|--search <表达式> ...                        搜索含有指定文件的软件包。

  -C|--audit [<表达式> ...]                       检查是否有软件包残损。

  --yet-to-unpack                                列出标记为待解压的软件包。

  --predep-package                               列出待解压的预依赖。

  --add-architecture <体系结构>                   添加 <体系结构> 到体系结构列表。

  --remove-architecture <体系结构>                从体系结构列表中移除 <体系结构>。

  --print-architecture                           显示 dpkg 体系结构。

  --print-foreign-architectures                  显示已启用的异质体系结构。

  --assert-<特性>                                对指定特性启用断言支持。

  --validate-<属性> <字符串>                      验证一个 <属性>的 <字符串>。

  --compare-versions <a> <关系> <b>              比较版本号 - 见下。

  --force-help                                   显示本强制选项的帮助信息。

  -Dh|--debug=help                               显示有关出错调试的帮助信息。

  -?, --help                                     显示此帮助信息并退出。

      --version                                  显示此版本信息。

实例:

安装软件包(安装软件包 "google-chrome-stable_current_amd64.deb")

dpkg -i google-chrome-stable_current_amd64.deb

搜索软件包(搜索软件包 "chrome")

dpkg -l "*chrome*"

移除软件包(卸载软件包 "google-chrome-stable")

dpkg -r google-chrome-stable

移除软件包(卸载软件包 "google-chrome-stable",并删除配置文件)

dpkg -P google-chrome-stable