博主呓语:

Debian系统apt-get命令整理修改更新源

Posted by 破冰 on 2013-1-21 13:32 Monday

   软件包管理是区分不同发行版的一大特征,如RedHat使用RPM软件包来管理软件,Debian使用Deb软件包来管理软件。apt-get是Debian的Deb软件包管理工具,它的最低底层还是调用dpkg包管理程序,通过apt-get工具可使我们很好地解决软件包的依赖关系,方便软件的安装和升级。  

   要使用好apt-get就要配置好一个名为sources.list的资源列表,资源列表指向Debian系统的软件库,apt-get会从该软件库安装各种软件包。sources.list文件位于/etc/apt目录下:文件内容如下:

#deb-src http://debian.cn99.com/debian/ etch main
deb http://mirrors.163.com/debian/ stable main
deb-src http://mirrors.163.com/debian/ stable main


说明:
  1:deb/deb_src 表示获取安装包和源代码
  2:http://mirrors.163.com/debian/ 国内一般使用这个,Debian软件资源库
  3:stable 表示Debian系统的版本类型。stable/testing/unstable 三种
一:apt-get
apt-get命令格式:
# apt-get
用法: apt-get [选项] 命令
       apt-get [选项] install|remove 包甲 [包乙 ...]
       apt-get [选项] source 包甲 [包乙 ...]
apt-get 提供了一个用于下载和安装软件包的简易命令行界面。最常用命令是 update 和 install。

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

   2:apt-get upgrade package_name1 package_name2 package_name3 ...
      升级指定软件包至最新版本
   3:apt-get dist-upgrade
      更新整个Debian系统
   4:apt-get install package_name1 package_name2 package_name3 ...
      安装新的软件包,安装的软件包默认会存放在/var/cache/apt/archives目录下,以便以后重新安装。
      如果已安装的软件包损坏了,你可通过--reinstall选项来重新安装。如:
      # apt-get --reinstall install package_name
      使用--dry-run选项可使apt-get在安装软件包前进行测试,如:
      # apt-get install package_name --dry-run
   5:apt-get remove package_name1 package_name2 package_name3 ... 
      卸载指定软件包。
      如果你想把该软件的配置文件也删除,可以用--purge选项,如:
      # apt-get --purge remove package_name
   6:apt-get source package_name1 package_name2 package_name3 ... 
      下载指定软件包的源码包文件
   7:apt-get build-dep
      为源码包配置所需的构建依赖关系
   8:apt-get dselect-upgrade
      通过dselect的“建议”和“推荐”功能更新系统。dselect是Debian中一个功能强大的包管理工具。它可帮助用户选择软件包来安装,其中一个有用功能是它会建议和推荐安装其它相关软件包。我们可在APT中使用它这个功能。

   9:apt-get clean
      删除下载了的软件包,当我们通过apt-get安装软件包时,APT会把软件包下载到本地/var/cache/apt/archives/目录。该命令会删除该文件夹内的除锁住外的所有软件包。
   10:apt-get autoclean
      删除已下载的旧版本的软件包。该命令类似于上面的命令,但它会有选择地删除旧版本的软件包
   11:apt-get check
      检查系统中已安装软件包的依赖性。  

二:apt-cache
apt-cache 命令格式
# apt-cache
用法: apt-cache [选项] 命令
       apt-cache [选项] add 文件甲 [文件乙 ...]
       apt-cache [选项] showpkg 软件包甲 [软件包乙 ...]
       apt-cache [选项] showsrc 软件包甲 [软件包乙 ...]

命令参数:
   1: apt-cache add package_name
      往源缓存加入一个软件包文件

   2: apt-cache gencaches 
      一并生成软件包和源代码包的缓存

   3: apt-cache showpkg pkgname
      显示软件的信息,包括版本号,安装状态和包依赖关系等。

   4: apt-cache showsrc
      显示源文件的各项记录

   5: stats 

       显示一些基本的统计信息
   6: dump
      简要显示整个缓存文件的内容
   7: dumpavail 

      把所有有效的包文件列表打印到标准输出
   8: unmet - 显示所有未满足的依赖关系

   9: apt-cache search pkgname
      搜索软件包,可用正则表达式(apt-cache search libc*)

   10: apt-cache show pkgname
      以便于阅读的格式介绍该软件包

   11: apt-cache depends pkgname
      显示指定软件包所依赖的软件包

   12: apt-cache rdepends pkgname
      显示软件包的反向依赖关系,即有什么软件包需依赖你所指定的软件包

   13: apt-cache pkgnames 
      列出所有软件包的名字

   14: apt-cache dotty 
      生成可用 GraphVis 处理的软件包关系图

   15: apt-cache xvcg 
      生成可用 xvcg 处理的软件包的关系图

   16: apt-cache policy package_name
      显示软件包的安装设置状态
三:aptitude
该命令是调用交互模式,进行包的管理操作,和apt-get命令类似。
# aptitude --help
aptitude 0.4.4
用法: aptitude [-S 文件名] [-u|-i]
       aptitude [选项] <动作> ...
  
 install      - 安装/升级软件包
 remove       - 卸载软件包
 purge        - 卸载软件包并删除其配置文件
 hold         - 将软件包置于保持状态
 unhold       - 取消对一个软件包的保持命令
 markauto     - 将软件包标记为自动安装
 unmarkauto   - 将软件包标记为手动安装
 forbid-version - 禁止 aptitude 升级到某一特定版本的软件包。
 update       - 下载新/可升级软件包列表
 upgrade      - 执行一次安全的升级
 dist-upgrade - 执行升级,可能会安装和卸载软件包
 forget-new   - 忘记哪些软件包是“新”的
 search       - 按名称 和/或 表达式搜索软件包
 show       - 显示一个软件包的详细信息
 clean        - 删除已下载的软件包文件
 autoclean    - 删除旧的已下载软件包文件
 changelog    - 查看一个软件包的变更日志
 download     - 下载软件包的 .deb 文件
 reinstall    - 下载并(可能)重新安装一个现在已经安装了的软件包
 
 四:apt-key
 apt-key是Debian软件包的安全管理工具。每个发布的deb包,都是通过密钥认证的,apt-key用来管理密钥。
apt-key命令格式:
    apt-key [command] [arguments]
 参数:
    1:apt-key list
       列出已保存在系统中key。
    2:apt-key add keyname
       把下载的key添加到本地trusted数据库中。
    3:apt-key del keyname
       从本地trusted数据库删除key。
    4:apt-key update
      更新本地trusted数据库,删除过期没用的key。

发表评论: