`
fudehai001
  • 浏览: 497086 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Chapter 4. 软件包管理工具APT(for Debian)

阅读更多

APT

from : http://www.ringkee.com/note/opensource/debian/ch04s02.html

 

软 件包管理是区分不同发行版的一大特征,如RedHat使用RPM软件包来管理软件,Debian使用deb软件包来管理软件。apt是Debian的 deb软件包高级管理工具,由一组以apt开头的命令组成,如apt-get、apt-cache和apt-setup等。它的最低底层还是调用dpkg 程序来处理软件包的。通过apt-get工具可自动解决软件包的依赖关系,方便软件的安装和升级。它是Debian发行版的最大特色,一定要好好掌握。

要 使用好apt-get就要配置好一个名为sources.list的资源列表,资源列表指向Debian系统的软件库,apt-get会从该软件库安装各 种软件包。sources.list文件位于/etc/apt目录下,下面是Sarge、Etch和Sid三个版本的写法,你可任选一种,最好不要多版本 混用:

#sources.list for Sarge(stable):
deb http://http.us.debian.org/debian stable main contrib non-free
deb http://non-us.debian.org/debian-non-US stable/non-US main contrib non-free
deb http://security.debian.org stable/updates main contrib non-free
#Uncomment if you want the apt-get source function to work
#deb-src http://http.us.debian.org/debian stable main contrib non-free
#deb-src http://non-us.debian.org/debian-non-US stable/non-US main contrib non-free

#sources.list for Etch(testing):
deb http://http.us.debian.org/debian testing main contrib non-free
deb http://non-us.debian.org/debian-non-US testing/non-US main contrib non-free
deb http://security.debian.org testing/updates main contrib non-free
#Uncomment if you want the apt-get source function to work
#deb-src http://http.us.debian.org/debian testing main contrib non-free
#deb-src http://non-us.debian.org/debian-non-US testing/non-US main contrib non-free

#sources.list for Sid(unstable):
deb ftp://ftp.us.debian.org/debian unstable main contrib non-free
deb ftp://non-us.debian.org/debian-non-US unstable/non-US main contrib non-free
#Uncomment if you want the apt-get source function to work
#deb-src http://http.us.debian.org/debian unstable main contrib non-free
#deb-src http://non-us.debian.org/debian-non-US unstable/non-US main contrib non-free

sources.list文件的内容决定了Debian的版本。安全更新只存在于stable和testing版中,unstable 没有安全更新。进入stable的软件都经过严格的依赖测试和安全测试,所以如果你想系统稳定,用于工作,最好使用stable,如果你想使用最新版的软 件,就使用testing或unstable。Woody、Sarge和Sid是Debian 3.x三个版本中的代号,我们一般都是以代号来称呼debian不同版本。所有Debian发行版的代号全都取自电影Toy Story,Woody是那个牛仔,Sarge是绿色塑胶军队的领导,Sid是破坏玩具的小孩。

我们也可把Debian的发行光盘做为软件库,直接在光盘上安装软件。这时就要用到apt-cdrom命令。命令格式如下:

debian:~# apt-cdrom --help
apt 0.6.46.4 for linux i386 ,编译于 Dec  4 2006 17:48:23
Usage: apt-cdrom [options] command

apt-cdrom is a tool to add CDROM's to APT's source list. The
CDROM mount point and device information is taken from apt.conf
and /etc/fstab.

Commands:
   add - 增加一个CDROM安装源到sources.list列表
   ident - 报告CDROM的验证信息

Options:
  -h   帮助
  -d   指定CDROM挂装点
  -r   为一个已经识别的光盘改名
  -m   不挂装
  -f   快速模式,不检查软件包文件
  -a   完整扫描模式
  -c=? 指定读取的配置文件
  -o=? 设置附加选项
See fstab(5)

还有一种是使用硬盘上的目录做为源。我们把下载的iso文件挂载到系统的一个目录下,如挂载到/mnt/disk中。

deian:~# mount -o loop debian-testing-dvd-1.iso /mnt/disk

配置sources.list使用硬盘上的文件作为安装源。

deb file:///mnt/disk testing main

使用硬盘上的目录做为安装源的优势是安装速度快很多。安装一个gnome系统只要几分钟时间,如果上网下载可能要几十分钟。

  • apt-get update

    更 新软件包信息库。在Debian中,软件包是通过一个数据库来管理的,通过这个数据库中可跟踪你系统中已安装、没有安装和现在可安装的软件包信息。 apt-get安装软件包时就是依靠这个数据库来解决软件包间的依赖关系,从而可自动安装相关软件。我们需定期运行该命令,从而保持数据库的信息为最新。

  • apt-get install package_name1 package_name2 package_name3 ...

    安 装软件包。如果软件包需其它软件包支持,apt-get会通过搜索软件包数据库找到这种依赖关系,一起下载相关软件。在一个命令行中可同时安装多个软件 包,中间用空格隔开即可。安装的软件包默认会存放在/var/cache/apt/archives目录下,以便以后重新安装。如果已安装的软件包损坏 了,你可通过--reinstall选项来重新安装。如:

    # apt-get --reinstall install package_name
    

    Note

    在需安装的软件包名后加一个减号会删除软件包,如:apt-get install package_name-。

    只是下载软件,不解包和安装使用-d选项,如:

    # apt-get -d install package_name
    

    使用--dry-run选项可使apt-get在安装软件包前进行测试,如:

    # apt-get install package_name --dry-run
    

    Debian软件包的名字和软件名不同,所以在安装前如不知道软件包的名字,可到Debian的官方软件库查询,网址是:http://www.debian.org/distrib/packages/ 。或者用下面介绍的apt-cache search package_name命令来查询。

  • apt-get remove package_name1 package_name2 package_name3 ...

    删除软件包。如果你想删除软件包,只要使用该命令即可。如果你想把该软件的配置文件也删除,可以用--purge选项,如:

    # apt-get --purge remove package_name
    

    Note

    类似地,在删除软件包名后加一个加号会安装软件包,如:apt-get remove package_name+。

  • apt-get source package_name1 package_name2 package_name3

    下载软件包的的源码版本。

  • apt-get build-dep package_name

    构造软件包的源码的编译环境,为编译软件包下载必须的其它软件包。

  • apt-get upgrade package_name1 package_name2 package_name3 ...

    软 件包升级功能是APT系统这么成功的主要原因。通过该命令,我们就可把软件升级到最版本。在使用该命令前,最好先运行apt-get update命令,以更新软件包数据库。但该方案不是更新系统最好的方法,一些包会因为包依赖问题而保留(kept back)一些旧的软件包。Debian提供了一个更好的升级方案,就是用dis-upgrade。下面一节会详细介绍。

  • apt-get dist-upgrade

    更新整个Debian系统。可从网络或本地更新整个系统。它会重新安排好包的依赖性。如果有些包由于一些原因实在不能更新,我们可通过以下命令查询原因:

    # apt-get -o Debug::pkgProblemResolver=yes dist-upgrade
    

    Note

    用apt-show-versions -u可获得可升级软件包的列表。该命令还有一些有用的选项,可用-h选项查看详细帮助,了解更多功能。

  • apt-get clean

    删除下载了的软件包,当我们通过apt-get安装软件包时,APT会把软件包下载到本地/var/cache/apt/archives/目录。该命令会删除该文件夹内的除锁住外的所有软件包。该文件夹下的文件不可用rm命令删除,一定要使用apt-get命令来删除。

  • apt-get autoclean

    删除已下载的旧版本的软件包。该命令类似于上面的命令,但它会有选择地删除旧版本的软件包。

  • apt-get autoremove

    自动移除随其它软件自动安装但又不再有用的软件。

  • apt-get dselect-upgrade

    通过dselect的“建议”和“推荐”功能更新系统。dselect是Debian中一个功能强大的包管理工具。它可帮助用户选择软件包来安装,其中一个有用功能是它会建议和推荐安装其它相关软件包。我们可在APT中使用它这个功能。

  • apt-get check

    检查系统中已安装软件包的依赖性。

  • apt-get的secret cow powers

    debian:~# apt-get moo
             (__)
             (oo)
       /------\/
      / |    ||
     *  /\---/\
        ~~   ~~
    ...."Have you mooed today?"...
    
分享到:
评论

相关推荐

    Linux软件包管理工具-apt.pdf

    在基于Debian和Ubuntu的发行版中,apt(Advanced Package Tool)是一个非常流行和强大的工具。apt不仅可以帮助用户方便地查找、安装、升级和卸载软件包,还能自动处理依赖关系,使得整个过程变得简单而高效。 1. ...

    为redhat增加apt软件包管理工具.pdf

    ### 为RedHat增加APT软件包管理工具:深入解析与实践 #### 一、引言:探索RedHat的包管理新途径 RedHat Linux作为一款广泛使用的Linux发行版,其默认采用RPM(Red Hat Package Manager)作为软件包管理器。尽管RPM...

    Linux软件包管理工具-dpkg.pdf

    dpkg是Debian和Ubuntu等Linux发行版中用于管理软件包的基本包管理工具。它提供了一些常用命令,通过这些命令,你可以有效地管理你的Linux系统上的软件包。然而,需要注意的是,在使用dpkg时需要谨慎,因为它不会自动...

    debian软件包sources.list

    路径 /etc/apt # deb cdrom:[Debian GNU/Linux 8.2.0 _Jessie_ - Official amd64 CD Binary-1 20150906-11:13]/ jessie main # deb cdrom:[Debian GNU/Linux 8.2.0 _Jessie_ - Official amd64 CD Binary-1 ...

    Linux软件包管理简介

    ### Linux软件包管理知识点 #### 一、软件包基本类型 在Linux系统中,软件包主要分为两大...通过对源码包和二进制包的理解,以及掌握各种软件包管理工具的使用方法,可以大大提高工作效率并避免许多常见问题的发生。

    debian-reference.zh-cn.rar_Debian linux_debian

    Debian的核心是dpkg(Debian Package)系统,而Apt(Advanced Package Tool)则是在dpkg基础上构建的高级包管理工具,允许用户方便地安装、更新和卸载软件包。Apt通过维护软件源列表,自动处理依赖关系,使得软件...

    掌握linux软件包管理方法。熟悉图形模式下软件管理工具的使用。

    本话题将深入探讨如何在Linux环境下管理软件包,尤其是通过RPM(Red Hat Package Manager)命令来操作,同时也会提及图形模式下的软件管理工具。 首先,RPM是Linux世界中最常见的软件包管理器之一,尤其在基于Red ...

    kpackage4:Kpackage4:用于管理RPM,Debian ...软件包的GUI工具-开源

    也可以使用“管理”模式来检查软件包文件(源文件或二进制文件)。 在构建过程中会创建一本手册。Build需要CMake,KDE4和Qt4。 代码由Git存储库托管; 还提供了用于Mandriva和Mageia发行版的tarball文件(.xz)和源...

    Debian apt-get 使用指南

    `apt-get` 是 Debian 及其衍生系统(如 Ubuntu)中的一个强大的包管理工具,它可以帮助用户安装、升级、卸载软件包,并且能够自动解决依赖关系。本文将详细介绍 `apt-get` 的常用命令及其用法,并提供一些实用的技巧...

    Linux软件包管理器.pdf

    apt-get是基于Debian系列(如Debian、Ubuntu等)的软件包管理工具,提供了类似yum的自动下载和安装软件包的功能。与yum不同的是,apt-get使用的是deb格式的软件包。常用的apt-get命令包括“apt-get install [软件包...

    Debian Packer 1.2.1 For Windows x86 (Windows 平台下首款能对 Debian 数据包直接解包、封包的工具软件)

    **Debian Packer 1.2.1 for Windows x86** 是一款专为Windows用户设计的工具,它填补了Windows平台下处理Debian数据包的空白,允许用户直接对Debian包进行解包和封包操作。这款软件是Windows环境下的首创,极大地...

    Debian APT HOWTO.pdf

    - **dselect的使用**:除了APT之外,《Debian的软件包管家: dselect用法小结》文章中提到了dselect工具,它是Debian早期用于管理软件包的一个前端界面,对于理解Debian早期软件包管理的历史背景有一定帮助。...

    debian10安装qq、微信、迅雷、winrar等(2020.3.16)

    debian10安装qq、微信、迅雷、winrar等(2020.3.16)1.加key2.vi /etc/apt/sources.list 加入新源3.安装deepin wine环境,https://gitee.com/wszqkzqk/deepin-wine-for-ubuntu4.安装QQ、微信、迅雷、winrar等 1.加...

    简介ubuntu(debian)的软件包管理

    本文将深入介绍Ubuntu(Debian)的软件包管理机制,帮助用户更好地理解和利用这一强大的工具。 首先,我们要了解的是`.deb`文件,这是Debian及其衍生系统如Ubuntu使用的软件包格式。`.deb`文件包含了软件的所有组件...

    Debian GNULinux 图形安装教程、网络配置、软件源、基本配置.docx

    1. 软件包管理系统:APT,亦有图形界面的 synaptic 和 aptitude 可供使用。 2. 软件选择:Debian 带来了超过 25,000 个软件包,全都是开源的。 四、Debian 的网络配置 1. 网络安装镜像:官方下载 /distrib/ 网络...

    Debian 常用命令

    ### Debian常用命令详解...通过以上命令的详细解读,我们可以看出Debian系统提供了丰富的工具来管理软件包和维护系统。熟练掌握这些命令,可以显著提高系统管理员和开发人员的工作效率,同时确保Debian系统的稳定运行。

    rstudio-1.3.1093-amd64-debian.tar.gz

    `rstudio-1.3.1093-amd64-debian.tar.gz` 是一个针对AMD64架构的Debian系统的RStudio版本,版本号为1.3.1093。 **R语言介绍:** R是一种统计计算和图形展示的强大语言,由统计学家和计算机科学家共同开发。它提供了...

    Linux软件包管理工具-rpm.pdf

    Linux操作系统中的RPM(Red Hat Package Manager)是一个强大的软件包管理工具,广泛应用于基于RPM的发行版,如Red Hat Enterprise Linux、CentOS、Fedora等。RPM系统提供了便捷的方式来安装、升级、查询和卸载...

    可靠可重复地构建Debian软件包1

    本节将详细介绍 Debian 软件包的现状、存在的问题、目标描述、工作重点、核心问题、问题分类、工作思路、辅助工具、阶段性成果、效果展示、工作进度、其他项目和未来展望。 1. Debian 软件包的现状 Debian 软件包...

Global site tag (gtag.js) - Google Analytics