`
cloudtech
  • 浏览: 4611493 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
文章分类
社区版块
存档分类
最新评论

apt-get命令工作原理简介

 
阅读更多

众所周知,在linux操作系统下,利用apt-get来安装软件是非常方便的。只要一个sudo apt-get install 软件名;就可以轻易的解决软件的安装,最关键的是他可以解决其中存在的各种复杂的依赖关系,让你不用为此头疼,而在apt-get出现之前,利用dpkg或者更早之前的./configure;make;make install来安装软件真是无法想象,安装完软件A,提示你要安装软件B,好不容易安装完了,又提示要安装软件C。。。。各种纠结!所以说apt这个高级包管理工具极大的方便了广大的linux用户,更降低了linux用户的入门的门槛。好了,零零碎碎说了这么多废话,咱们回归正题。

为了搞清其中原理,我在网上折腾了半天,最后自己摸索了好久,终于有点头绪,每当执行命令进行软件的安装或着更新,或者软件源的更新时,apt会访问/etc/apt/sources.list内的地址,并在该网站中找到对应系统的包信息例如我的操作系统是ubuntu,网站是deb http://mirrors.163.com/ubuntu/ precise main restricted universe multiverse网易的,那么当我们执行安装的命令时,他就会对应的访问http://mirrors.163.com/ubuntu/dists/lucid/main/binary-i386/的packages.gz,这个文件是服务器上软件包及其依赖关系的清单,并且用gzip压缩过了。apt-get update使用这个清单来确定能够获得哪些补充的软件包且他的内容会被保存在/var/lib/apt/lists内,通过访问这个lists确定该软件是否已安装,是否是最新版本,依赖关系是否满足,从而确定要更新内容,并进行更新,其安装过程主要是由dpkg来完成。

总体上来说apt是倾向于下载的一个管理工具。


转载地址:http://www.cnblogs.com/kulin/archive/2012/07/31/2616490.html

分享到:
评论

相关推荐

    Web应用安全:XSS通过JavaScript攻击(实验).docx

    XSS通过JavaScript攻击 一、实验目的 了解XSS的有关知识; 了解XSS通过JavaScript实际操作; 了解XSS的攻击原理。...1.3、输入命令:apt-get update,更新apt。 1.4、然后再命令行输入:sudo apt-get instal

    理解Docker(1):Docker安装和基础用法详细介绍

    Docker是一个用了一种新颖方式实现的超轻量虚拟机,在实现的原理和应用上还是和VM有巨大差别,专业的叫法是应用容器(Application Container)。(我个人还是喜欢称虚拟机) 1. 安装 1.1 在 Ubuntu 14.04 上安装 ...

    ubuntu15.10下hadoop2.7.2的安装与配置详解

    网上和很多书上都有不少的hadoop在linux系统下的安装教程,但是尝试过的读者会发现,就算是按照这些教程一步步的操作,还是会在...1.1 更新apt-get:在命令行窗口中使用apt-get安装软件很方便; sudo apt-get update

    详解Docker镜像提交命令commit的工作原理和使用方法

    在本地创建一个容器后,可以依据这个容器创建本地镜像,并可把这个镜像推送到Docker hub中,以便在网络上下载使用。 下面我们来动手实践。 docker pull nginx:1.15.3 ...apt-get update && apt-g

    ctfhub:一些用于CTF环境的Docker

    CTFhub — 基于Docker的CTF学习环境0x00 前言CTFhub是面向所有学习CTF的朋友的环境,不用了解docker原理及知识,仅仅简单执行几条命令即可完成整个平台的搭建。0x01 搭建环境使用CTFhub中的环境的前提条件需要在本地...

    Docker学习之常用的基础命令总结

    $ sudo apt-get install docker.io # 查看docker的版本信息 $ docker version # 查看安装docker的信息 $ docker info # 查看本机Docker中存在哪些镜像 $ docker images # 检索image $ docker search ubuntu:

    homebridge-LEDStrip::horizontal_traffic_light:用于通过Raspberry Pi控制LED的Homebridge插件

    安装Pigpio apt-get install pigpio 使用以下命令安装此插件: npm install -g homebridge-LEDStrip 更新您的配置文件。 有关示例,请参见此存储库中的sample-config.json。 以root身份运行Homebridge 组态 配置...

    badges:在P2PU中,学习是由人,热情和项目指导的。 我们创建了这个Badge平台,以激发专家和学习者之间关于他们的学习项目的反馈。 徽章是这些对话中精通的象征。 在这里,您将了解徽章的工作原理,以及一些用于构建自己的徽章的资源

    PostgreSQL要在Ubuntu Linux上安装其他依赖项,请在终端中使用图形包管理器或以下命令: sudo apt-get install postgresql postgresql-server-dev-allvirtualenv / virtualenvwrapper sudo pip install virtualenv ...

    echoprint-codegen:用于Echoprint的Codegen

    回声编码 Echoprint是由提供支持的开源音乐指纹和解析框架。 (将麦克风或文件中的PCM样本转换为Echoprint代码的库)是开源的(MIT许可),并且免费使用。 存储和解析查询的是开源的(Apache 2... sudo apt-get instal

    KiCAD_Partslist_editor

    KiCad零件清单编辑器 KiCad零件清单编辑器(PLE)允许您从分层KiCad原理图文件向CSV导出/导入自定义字段。 加载项目的根表 ... 在Linux上,您必须使用以下命令安装python3和python3-tk sudo apt-get install p

    icefloorplan:iCE40平面图查看器

    sudo apt-get install qtbase5-dev qtbase5-dev-tools 一旦有了依赖项,就可以使用以下命令构建项目: mkdir build cd build qmake .. make 可以使用icefloorplan ( icefloorplan.exe , icefloorplan.app )二...

    TemperatureNotifier-IoT

    简单的温度测量 Temperature Notifier示例演示了如何使用IoT来创建“智能”温度计,该温度计可随时随地向您发送...安装pigpio运行命令sudo apt-get install pigpio终端 安装pushbullet运行commnad pip install pushbu

    SynergyInstaller-1.3.1

    sudo apt-get install quicksynergy 2、Quicksynergy guide:https://help.ubuntu.com/community/SynergyHowto 3、服务端和客户端的理解。 鼠标和键盘是由服务端控制的。 客户端需要接受服务端的鼠标、键盘控制的话...

    Ubuntu权威指南(2/2)

    12.2 利用apt-get管理软件包 321 12.2.1 安装软件包 323 12.2.2 系统的更新与升级 324 12.2.3 删除软件包 325 12.2.4 安装本地存储介质中的 ??软件包 325 12.2.5 sources.list配置文件 325 12.3 利用aptitude管理...

    Ubuntu权威指南(1/2)

    12.2 利用apt-get管理软件包 321 12.2.1 安装软件包 323 12.2.2 系统的更新与升级 324 12.2.3 删除软件包 325 12.2.4 安装本地存储介质中的 ??软件包 325 12.2.5 sources.list配置文件 325 12.3 利用aptitude管理...

    在 Linux 命令行发送邮件的 5 种方法(推荐)

    工作原理 我先从整体上来解释下 Linux 中邮件命令怎么把邮件传递给收件人的。邮件命令撰写邮件并发送给一个本地邮件传输代理(MTA,如 sendmail、Postfix)。邮件服务器和远程邮件服务器之间通信以实际发送和接收...

Global site tag (gtag.js) - Google Analytics