apt-get命令:

apt-get是debian,ubuntu发行版的包管理工具,与红帽中的yum工具非常类似,适用于deb包管理式的操作系统,主要用于自动从互联网的软件仓库中搜索、安装、升级、卸载软件或操作系统。apt-get在安装包的时候是根据/etc/apt/sources.list文件中指定的源来寻找的安装包,你可以根据自己的需要对这个文件进行修改。

apt-get命令一般需要root权限执行,所以一般跟着sudo命令。

  • sudo apt-get install package 安装包
  • sudo apt-get install package - - reinstall 重新安装包
  • sudo apt-get -f install 修复安装"-f = ——fix-missing"
  • sudo apt-get remove package 删除包
  • sudo apt-get remove package - - purge 删除包,包括删除配置文件等
  • sudo apt-get autoremove package 删除包及其依赖的软件包
  • sudo apt-get update 更新源
  • sudo apt-get upgrade 更新已安装的包
  • sudo apt-get dist-upgrade 升级系统
  • sudo apt-get dselect-upgrade 使用 dselect 升级
  • sudo apt-get build-dep package 安装相关的编译环境
  • sudo apt-get source package 下载该包的源代码
  • sudo apt-get clean && sudo apt-get autoclean 清理无用的包
  • sudo apt-get check 检查是否有损坏的依赖

apt-get包含的常用的一些工具:

工具 说明
install 其后加上软件包名,用于安装一个软件包
update 从软件源镜像服务器上下载/更新用于更新本地软件源的软件包列表
upgrade 升级本地可更新的全部软件包,但存在依赖问题时将不会升级,通常会在更新之前执行一次update
dist-upgrade 解决依赖关系并升级(存在一定危险性)
remove 移除已安装的软件包,包括与被移除软件包有依赖关系的软件包,但不包含软件包的配置文件
autoremove 移除之前被其他软件包依赖,但现在不再被使用的软件包
purge 与remove相同,但会完全移除软件包,包含其配置文件
clean 移除下载到本地的已经安装的软件包,默认保存在/var/cache/apt/archives/
autoclean 移除已安装的软件的旧版本软件包

apt-get常用的参数:

参数 说明
-y 自动回应是否安装软件包的选项,在一些自动化安装脚本中使用这个参数将十分有用
-s 模拟安装
-q 静默安装方式,指定多个q或者-q=#,#表示数字,用于设定静默级别,这在你不想要在安装软件包时屏幕输出过多时很有用
-f 修复损坏的依赖关系
-d 只下载不安装
--reinstall 重新安装已经安装但可能存在问题的软件包
--install-suggests 同时安装APT给出的建议安装的软件包

apt-cache命令:

apt-cache主要用于搜索包。

  • sudo apt-cache search package 搜索包
  • sudo apt-cache show package 获取包的相关信息,如说明、大小、版本等
  • sudo apt-cache showpkg package 显示软件包信息,包括包的依赖关系,包的提供者,
  • sudo apt-cache pkgnames 打印软件包列表中所有包的名字
  • sudo apt-cache dumpavail 打印软件包列表中所有包的简介信息
  • sudo apt-cache depends package 了解使用依赖
  • sudo apt-cache rdepends package 是查看该包被哪些包依赖

dpkg命令:

dpkg是Debian系统的后台包管理器,类似RPM。也是Debian包管理系统的中流砥柱,负责安全卸载软件包,配置,以及维护已安装的软件包。由于ubuntu和Debian乃一脉相承,所以很多命令是不分彼此的。

Ubuntu中所有packages的信息都在/var/lib/dpkg/目录下,其中子目录”/var/lib/dpkg/info”用于保存各个软件包的配置文件列表.不同后缀名代表不同类型的文件,如:

.conffiles 记录了软件包的配置文件列表。

.list 保存软件包中的文件列表,用户可以从.list的信息中找到软件包中文件的具体安装位置。

.md5sums 记录了软件包的md5信息,这个信息是用来进行包验证的。

.prerm 脚本在Debian报解包之前运行,主要作用是停止作用于即将升级的软件包的服务,直到软件包安装或升级完成。

.postinst脚本是完成Debian包解开之后的配置工作,通常用于执行所安装软件包相关命令和服务重新启动。

/var/lib/dpkg/available文件的内容是软件包的描述信息,该软件包括当前系统所使用的Debian安装源中的所有软件包,其中包括当前系统中已安装的和未安装的软件包。

命令:

  • dpkg –l | grep package 查询deb包的详细信息,没有指定包则显示全部已安装包
  • dpkg -s package 查看已经安装的指定软件包的详细信息
  • dpkg -L package 列出一个包安装的所有文件清单
  • dpkg -S file 查看系统中的某个文件属于哪个软件包,搜索已安装的软件包
  • dpkg -i 安装指定deb包
  • dpkg -R 后面加上目录名,用于安装该目录下的所有deb安装包
  • dpkg -r remove,移除某个已安装的软件包
  • dpkg -P 彻底的卸载,包括软件的配置文件
  • dpkg -c 查询deb包文件中所包含的文件
  • dpkg -L 查看系统中安装包的的详细清单,同时执行 -c

ubuntu包管理命令apt和dpkg的用法的更多相关文章

  1. Ubuntu包管理命令 dpkg、apt和aptitude

    起初GNU/Linux系统中仅仅有.tar.gz.用户 必须自己编译他们想使用的每个程序.在Debian出现之後,人们觉得有必要在系统 中加入一种机 制用来管理 安装在计算机上的软件包.人们将这套系统 ...

  2. 笔记-Linux包管理命令

    一.apt, apt-get, dpkg命令 apt-get是一条linux命令,适用于deb包管理式的操作系统,主要用于自动从互联网的软件仓库中搜索.安装.升级.卸载软件或操作系统.使用apt-ge ...

  3. Linux各主要发行版的包管理命令对照

    Linux各主要发行版的包管理命令对照 Debian使用的是apt和dpkg,Gentoo则用的是emerge,Redhat的yum.Suse的zypper.Arch的pacman.Slackware ...

  4. ubuntu包管理机制

    1 ubuntu包管理机制 跟大家分享一下ubuntu的软件管理机制.如果你们有过: apt-get install 或者 apt-get update 失败的经历. 在众多的apt命令中迷失. 疑惑 ...

  5. visual studio NuGet 常用包管理命令

    visual studio NuGet 常用包管理命令 查找包 Find-Package [包名] Find-Package [包名] -AllVersions 安装包 Install-Package ...

  6. Linux之包管理工具总结[RPM/DPKG]-[YUM/APT]

    0.关键词解释 RPM:Red Hat Package Manager(原名),RPM Package Manager(现名,递归缩写,类似于GNU的命名); 解释:RPM软件包管理器 YUM:Yel ...

  7. ubuntu软件管理工具的使用——dpkg和apt

    deb.rpm.tar.gz三种Linux软件包的区别在哪里呢,这种区别可能使安装进行不下去,那么我们应该下载什么格式的包呢?下面具体讲解一下. rpm包是在Redhat.Suse和Fedora可以直 ...

  8. 常用包管理三类工具:dpkg、apt和aptitude

    常用的包管理包含三类工具:dpkg.apt和aptitude.人们总是对前面的两个工具用得比较多,而对 aptitude 用得比较少,事实上 aptitude 是很强大的. 在这里,对这三个工具做一点 ...

  9. ubuntu包管理

    查看某个文件属于哪个包dpkg -S add-apt-repository 包名software-properties-common命令名/usr/bin/add-apt-repository/usr ...

随机推荐

  1. poj3648 Wedding

    Wedding Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 10975   Accepted: 3355   Specia ...

  2. Ubuntu在vncviewer下Tab键失效

    打开命令行,运行如下命令即可解决: xfconf-query -c xfce4-keyboard-shortcuts -p /xfwm4/custom/'<'Super'>'Tab -r ...

  3. HDU1536:S-Nim(sg函数)

    S-Nim Time Limit: 5000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submi ...

  4. shell函数使用

    函数定义格式: 和js有点类似,不过在 shell 中 function 关键字是可选的. 如: sum { // shell 语句 } function sum() { // shell 语句 } ...

  5. 手脱ASPack v2.12变形壳2

    1.PEID载入 ASPack v2.12 2.载入OD,跟之前帖子的入口特征相同,都是一个pushad,但是请不要怀疑这是同一个壳,绝对不是,pushad下一行ESP定律下硬件断点,然后shift+ ...

  6. mysql 自动记录数据插入及最后修改时间

    总结: `uptime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP 原文 应用场景: 1.在数据 ...

  7. 通过jquery.validate.js校验表单字段是否合法

    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/ ...

  8. 【洛谷 P2900】 [USACO08MAR]土地征用Land Acquisition(斜率优化,单调栈)

    题目链接 双倍经验 设\(H\)表示长,\(W\)表示宽. 若\(H_i<H_j\)且\(W_i<W_j\),显然\(i\)对答案没有贡献. 于是把所有点按\(H\)排序,然后依次加入一个 ...

  9. Arm-kernel 内存收集【转】

    转自:http://blog.csdn.net/linyt/article/details/6627664 Linux kernel的内存管理子系统非常复杂,为了深入了解内存管理系统,我打算分多篇文章 ...

  10. python基础===将Flask用于实现Mock-server

    from flask import Flask from flask import request, Response, jsonify import random import string app ...