Linux——软件包管理

author:XiaoGua
os:ubuntu16.04
sudo su:/root管理员

一、软件包管理的基本概念

整个linux系统都是由许许多多的软件包构成。,ubuntu系统也提供了多个软件包管理工具。

一)、软件包

linux系统中,所有的软件和文档都是以软件包的形式提供的。
软件包主要有两种形式:二进制软件包和源代码软件包。

二进制软件包主要用于封装可执行程序,相关的文档以及配置文件等。
源代码软件包主要包含软件包的源代码以及生成二进制软件包的方法等

1、二进制软件包

用户最常用的软件包形式。二进制软件包是一种压缩形式的文件,里面包含可执行文件、配置文件、文档资料、产品说明和版本信息。用dpkg命令查看软件包所包含的文件列表。

2、在ubuntu系统中,常见的软件包格式主要有以下三种:

DEB格式:该格式是Debian及其派生出来的Linux发行版主要支持的标准软件包格式。包括ubuntu,其扩展名为.deb。
RPM:该格式是RedHat及其派生出来的Linux发行版支持的标准软件包格式。用户可以用rpmd管理该类型的软件包
Tarball:该格式是由tar和其他的压缩命令生成的一类压缩包。大部分的源代码形式的软件包都是由Tarball格式提供的,需要先将包中的文件释放出来,然后根据其中提供的说明文件进行安装

二)、软件仓储

软件仓储通常是一组网站,其中提供了按照一定组织形式存储的软件包以及索引文件。软件包管理工具可以根据用户的需求连接到软件仓储服务器。搜索或者下载某个软件包

ubunutu软件仓储大体上可以分为4种类型:
Main:unbuntu官方提供的软件包,ubuntu的基本软件包
Restricted:ubuntu支持的,但是 没有自由软件版权的软件包
Universe:由Ubuntu社区维护,ubuntu不提供官方支持的软件包
Multiverse:非自由软件

三)、软件包之间的相互依赖

尽管一个软件包是一个相对独立的功能组合,但是软件包中的软件却不可避免依赖于其他的软件包的支持。
有了软件包管理工具,可以自动判断要安装的软件与其他的软件包的依赖关系,并且会自动安装或者更新所要的软件包。

二、软件包管理工具

软件包管理工具大都包含软件包的安装、更新、升级以及删除等基本的功能。
在ubuntu系统中,主要用的软件包管理:APT、aptitude以及synaptic

一)、APT

APT是一个通用的综合软件包管理工具,apt-get和apt提供的前端软件包管理工具
在Ubuntu系统中,APT的配置文件保存在/etc/apt目录下

by XiaoGua

apt.conf.d是主要配置文件
sources.list:保存了当前ubuntu系统的软件仓储的信息,每个软件仓储都含说明、地址及类型等信息。
var/lib/apt目录存储APT本地软件包索引


by XiaoGua

/var/lib/apt/lists都会有一个索引文件与sources.list对应,其中包含了软件仓储中每个软件包的最新信息
/var/cache/apt/archives是APT的本地缓存目录,包含了APT最近下载的软件包。

1、apt-get

apt-get是APT提供的早期软件包管理工具命令。该命令提供了APT软件包的基本管理。
apt-get install 软件包名 :安装软件包
apt-get --reinstall install 软件包:重新安装软件包
apt-get remove 软件包名:删除软件包
apt-get purge 软件包名:彻底删除软件包
apt-get update:更新软件包
apt-get upgrade:升级软件包

2、apt命令

apt提供的子命令
update:从软件仓储更新软件包索引
upgrade:升级软件包,但是不会删除软件包
full-upgrade:升级软件包,并同时会安装或删除其他的软件包以解决依赖关系
install:安装软件包
remove:删除软件包
purge:彻底删除软件包
autoremove:自动删除软件包以及依赖
search:搜索软件包
show:显示软件包的信息
list:--install 选项指定列出已安装的软件包
--upgradeable:指定可以升级的软件包

1)、apt search quota搜索软件包
软件包的搜索依赖于update子命令的更新软件包索引。
所以安装前,或者搜索前,先调用一下update命令
先apt update
然后 apt search quota


by XiaoGua

2)、安装软件包
apt install -y quota


by XiaoGua

-y:直接安装不提示
3)、删除软件包
apt remove quota


by XiaoGua

彻底清除quota软件包
apt purge quota


by XiaoGua

4)、更新和升级软件包
apt update && apt upgrade
通常一同使用


by XiaoGua
二)、aptitude命令

aptitude命令可以完全替代APT本身提供的apt以及apt-get命令。与apt-get和apt是兼容的。不仅提供了一个命令行的使用方式,还提供了一个非常友好的图形界面
1、aptitude <options> [command]

子命令
search:搜索软件包
update:更新软件仓储的软件包列表
upgrade:升级可用的软件 包
full-upgrade:将已安装的软件包升级到最新版本,根据依赖需要安装或者删除其他的依赖包
safe-upgrade:将已安装的软件包升级到最新版本,根据依赖需要安装或者删除其他的依赖包
show:显示软件包的详细信息
source:下载源代码包
install:安装指定软件包
reinstall :重新安装软件包
remove:删除软件包
purge:彻底删除软件包
download:下载指定的软件包到当前目录

1)、搜索软件包与apt相似
aptitude search quota


by XIaoGua

最左侧的字母表示软件包的状态
p 表示该软件包没有在当前系统中安装
c表示该软件包曾在当前系统中安装过,当又删除了,只留下配置文件
i表示该软件包已经安装
v表示当前软件包为虚拟软件包
第二列为软件包的名称,第三列为软件包的备注信息

2)、aptitude search [options]

~T :列出所有的软件包
~U:列出系统可以更新的软件包
~i: 列出当前系统已经安装的软件包

3)、显示zip这个软件包


by XiaoGua

4)、安装,删除,更新和升级软件包命令

aptitude install quota
aptitude remove quota
aptitude update quota
aptitude upgrade quota

2、aptitude启动图形化界面

1)、ubuntu系统默认没有安装aptitude


by XiaoGua

sudo apt install aptitude


by XiaoGua

2)、启动进入图形化界面
aptitude
by XiaoGua

Search——>Find,在search for输入:要搜索的软件包


by XIaoGua

by XiaoGua

安装软件包:搜索到,OK ,——>同时按住shift和加号键,把软件包加到安装列表中,
按住g键开始安装,会需要输入回车键,看到如下已经安装成功了
by XiaoGua

三)、synaptic软件管理工具

synaptic软件是在APT基础上的一款开发工具,用户可以非常方便管理软件
1、在ubuntu系统中,sysnaptic默认是没有安装的


by XiaoGua

2、安装后,启动图形化界面
1)、synaptic


by XiaoGua

2)、搜索软件包
by XiaoGua

3)、找到想要安装的软件包,然后单击复选框,选择Mark for installation
by XiaoGua

4)、Apply——>Summary——>To be installed——>Apply


by XiaoGua

5)、弹出如下对话框,表示安装成功
by XiaoGua

6)、删除软件包
Search ——>输入“软件包名”——>选中左侧的复选框——>Mark for removal 或彻底删除“Mark for complete removal”
by XiaoGua

7)、更新软件包
Reload
by XiaoGua

选择Mark for upgrade
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,530评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 86,403评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 151,120评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,770评论 1 277
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,758评论 5 367
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,649评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,021评论 3 398
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,675评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,931评论 1 299
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,659评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,751评论 1 330
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,410评论 4 321
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,004评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,969评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,203评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,042评论 2 350
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,493评论 2 343

推荐阅读更多精彩内容

  • [TOC] 软件包管理 软件包管理是指系统中一种安装和维护软件的方法。 Linux 系统中几乎所有的软件都可以在互...
    独木舟的木阅读 523评论 0 3
  • # Linux 软件包管理 概述 APT(Advanced Packaging Tool) 是 Debian/Ub...
    忞触动心灵阅读 66评论 0 0
  • 学习完整课程请移步 互联网 Java 全栈工程师 本节视频 【视频】基础设施即服务-Linux-软件的安装与卸载 ...
    撸帝阅读 347评论 0 0
  • 2019-03-28[GeekCoder],linux,ubuntu 历史背景 起初GNU/Linux系统中只有....
    熊丶小伍阅读 1,525评论 0 0
  • 坚持,马上到山顶了 这是我今天听到最多的一句话,老白总是走在我的前面,诱惑我坚持住,走快一些,别泄气……感谢这位登...
    溪谷Y阅读 411评论 2 8