debiain类系统包管理器命令说明

debain系统apt、apt-get、aptitude包管理器命令说明

debian类内核的系统经常使用apt、apt-get包管理器来处理系统中的包依赖问题。常见的debian类内核的系统有debain、ubuntu、Linux Mint、deepin、elementary OS等等。

1 apt包管理器简介

高级包装工具(英语:Advanced Packaging Tools,简称:APT)是Debian及其衍生发行版(如:ubuntu)的软件包管理器。APT可以自动下载,配置,安装二进制或者源代码格式的软 件包,因此简化了 Unix系统上管理软件的过程,apt-get命令一般需要root权限执行,所以一般跟着sudo命令。注意:apt-get与apt命令不是同一个东西。
apt命令的由来
如果你已阅读过我们的 apt-get 命令指南,可能已经遇到过许多类似的命令,如apt-cache、apt-config 等。如你所见,这些命令都比较低级又包含众多功能,普通的 Linux 用户也许永远都不会使用到。换种说法来说,就是最常用的 Linux 包管理命令都被分散在了 apt-get、apt-cache 和 apt-config 这三条命令当中。apt 命令的引入就是为了解决命令过于分散的问题,它包括了 apt-get 命令出现以来使用最广泛的功能选项,以及 apt-cache 和 apt-config 命令中很少用到的功能。
在使用 apt 命令时,用户不必再由 apt-get 转到 apt-cache 或 apt-config,而且 apt 更加结构化,并为用户提供了管理软件包所需的必要选项。

简单来说就是:apt = apt-get、apt-cache 和 apt-config 中最常用命令选项的集合。

它们之间常见命令的区别可以参考博文apt与apt-get命令的区别

2 经常使用到的命令

apt-cache

apt-cache search packagename 安装包搜索命令
apt-cache show packagename获取包的相关详细信息,例如包的大小、说明、版本信息等等
apt-cache depends packagename了解包的依赖关系
apt-cache rdepends packagename查看该包被那些包所依赖
apt-cache madison package 查看指定包的详情
apt-cache search packagename 安装包搜索命令

apt-get

sudo apt-get install packagename 安装包
sudo apt-get install packagename=version 指定包的版本进行安装
sudo apt-get install packagename --reinstall 重新安装包的命令
sudo apt-get -f install
sudo apt-get --fix-broken install修复安装包命令
sudo apt-get source package下载该包的源代码
sudo apt-get remove package删除在系统中安装的包
sudo apt-get remove package --purge删除包,包括删除配置文件等
sudo apt-get update更新apt软件源数据库
sudo apt-get upgrade更新已经安装的软件包
sudo apt-get dselect-upgrade 使用dselect升级
sudo apt-get build-dep package安装相关的编译环境
sudo apt-get clean 删除所有已下载的包文件
sudo apt-get autoclean 删除已下载的旧包文件
sudo apt-get autoremove 卸载所有自动安装且不再使用的软件包
sudo apt-get check 检查是否有损坏的依赖

apt-key

主要是用于管理系统中的软件包密钥。每个发布的deb包,都是通过密钥认证的,apt-key用来管理密钥。
apt-key list列出已保存在系统中key。
apt-key add keyname 把下载的key添加到本地trusted数据库中。
apt-key add - 从标准输入中将key添加到本地trusted数据库中,-表示标准输入。
apt-key del keyname 从本地trusted数据库删除key。
apt-key update 更新本地trusted数据库,删除过期没用的key。

apt-add-repository

首先来介绍一下ppa
PPA 全称为 Personal Package Archives(个人软件包档案),是 Ubuntu Launchpad 网站提供的一项服务,当然不仅限于 Launchpad 。它允许个人用户上传软件源代码,通过 Launchpad 进行编译并发布为二进制软件包,作为 apt/新立得源供其他用户下载和更新。在Launchpad网站上的每一个用户和团队都可以拥有一个或多个PPA。
通常 PPA 源里的软件是官方源里没有的,或者是最新版本的软件。相对于通过 Deb 包安装来说,使用 PPA 的好处是,一旦软件有更新,通过 sudo apt-get upgrade 这样命令就可以直接升级到新版本。
那么怎么样来通过ppa源来安装呢?通常可以通过google来搜索一些常用到的软件源,通常的方法是软件名称关键字+ppa,或者是直接到lanunchpad.net上搜索。搜索到之后直接使用这个命令讲ppa源添加到source list 当中
apt-add-repository ppa:xxxxxx/ppa 添加仓库源,例如添加Firefox源并安装

sudo apt-add-repository ppa:ubuntu-mozilla-daily/ppa
sudo apt update
sudo apt-get install firefox-40 

apt

apt一般包含有上述中的所有命令,下面说明几个上述缺少的命令

apt list 列出本地仓库中所有的软件包名
apt list packagename 从本地仓库中查找指定的包名,支持通配符,比如"apt list zlib*"就能列出以zlib开头的所有包名
apt list --installed 列出系统中所有已安装的包名
apt purge packagename 卸载包,同时删除相关配置文件。包名支持通配符

3 aptitude包管理器

aptitude与 apt-get 一样,是 Debian 及其衍生系统中功能极其强大的包管理工具。与 apt-get 不同的是,aptitude在处理依赖问题上更佳一些。
包管理器的安装方法

sudo apt install aptitude

常见到的命令
aptitude install packagename 安装包或者更新包
aptitude remove packagename 删除已经安装的包
aptitude purge packagename 删除已经安装的包和他们所依赖的配置文件
aptitude update 更新可用的包列表
aptitude upgrade 升级可用的包
aptitude dist-upgrade将系统升级到新的发行版本
aptitude search packagename 搜索包
aptitude show packagename 显示包的详细信息
aptitude clean 删除下载的包文件
aptitude autoclean 仅仅删除过期的包文件
aptitude reinstall packagename 重新安装包文件

4 dpkg包管理器命令

dpkg 是Debian package的简写,为”Debian“ 操作系统 专门开发的套件管理系统,用于软件的安装,更新和移除。
所有源自"Debian"的Linux的发行版都使用 dpkg, 例如"Ubuntu"。
dpkg -i <deb file name>表示安装deb包文件
dpkg -L package安装完成包之后,列出软件安装的位置
dpkg -l package显示包的版本信息
dpkg -r package将软件包文件移除(保留配置)
dpkg -P package将软件包文件移除(不保留配置)
dpkg -s package查找包的详细信息
dpkg -c <deb file name>列举出deb包内的内容信息
dpkg --unpack <deb file name>解开deb包的内容
dpkg -S keyword搜索所属的包内容
dpkg --configure package配置包

5. apt包管理器源换为国内源加速

一般包管理器默认源是http://cn.archive.ubuntu.com/ubuntu/。当然也可以配置国内源,设置为国内源的好处是能够在下载包的时候加速下载,下载速度较为快,镜像地址详细见文章国内外开源镜像服务器站点汇总。笔者使用的是ubuntu19.10系统,默认的源文件在/etc/apt/source.list。可以由以下的方法进行修改apt源文件,首先进行备份处理

sudo mv /etc/apt/source.list /etc/apt/source.list.bak

然后将文件中的信息修改为以下的内容,此处使用的是清华镜像源地址

# 默认注释了源码镜像以提高 apt update 速度,如有需要可自行取消注释
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ eoan main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ eoan main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ eoan-updates main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ eoan-updates main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ eoan-backports main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ eoan-backports main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ eoan-security main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ eoan-security main restricted universe multiverse

# 预发布软件源,不建议启用
# deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ eoan-proposed main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ eoan-proposed main restricted universe multiverse

保存文件,不同版本的Ubuntu系统可以参考网站Ubuntu 镜像使用帮助

sudo nano /etc/apt/source.list
sudo apt update

参考

[1] apt与apt-get命令的区别
[2] 包管理器使用指南

猜你喜欢

转载自blog.csdn.net/Zhang_Pro/article/details/107066651