Ubuntu 软件包管理详解
一、Ubuntu 采用 Debian 的软件包管理器 dpkg 来管理软件包, 类似 RPM. 系统中所有 packages 的信息都在 /var/lib/dpkg/
目录下, 其子目录 /var/lib/dpkg/info 用于保存各个软件包的配置文件列表:
(1).conffiles 记录了软件包的配置文件列表
(2).list 保存软件包中的文件列表, 用户可以从 .list 的信息中找到软件包中文件的具体安装位置.
(3).md5sums 记录了软件包的md5信息, 这个信息是用来进行包验证的.
(4).prerm 脚本在 Debian 包解包之前运行, 主要作用是停止作用于即将升级的软件包的服务, 直到软件包安装或升级完成.
(5).postinst 脚本是完成 Debian 包解开之后的配置工作, 通常用于执行所安装软件包相关命令和服务重新启动.
/var/lib/dpkg/available 文件的内容是软件包的描述信息, 该软件包括当前系统所使用的 Debian 安装源中的所有软件包,
其中包括当前系统中已安装的和未安装的软件包.
/var/cache/apt/archives 目录是在用 apt-get install 安装软件时,软件包的临时存放路径
/etc/apt/sources.list 存放的是软件源站点, 当你执行 sudo apt-get install xxx 时,Ubuntu 就去这些站点下载软件包到本地并执行安装
二、相关命令使用示例:
(1)查看某软件包的安装内容
dpkg -L xxx
(2)查找软件库中的软件包
apt-cache search 正则表达式
(3)显示系统安装包的统计信息
apt-cache stats
(4)显示系统全部可用软件包的名称
apt-cache pkgnames
(5)显示某软件包的详细信息
apt-cache show xxx
(6)查找某文件属于哪个包
apt-file search xxx
(7)查看已经安装了哪些软件包
dpkg -l
(8)查询某软件依赖哪些软件包
apt-cache depends xxx
(9)查询某软件被哪些软件包依赖
apt-cache rdepends xxx
(10)增加一个光盘源
sudo apt-cdrom add
注: 顾名思义, 就是安装更新软件包时让其优先从Ubuntu 光盘上找(如果你不能上网安装/更新, 但有 Ubuntu 的 DVD ISO, 这会对你非常有用)
(11)系统升级
sudo apt-get update
(12)清除所有已删除软件包的残馀配置文件
dpkg -l |grep ^rc|awk '{print $2}' |sudo xargs dpkg -P
(13)编译时缺少h文件的自动处理
sudo auto-apt run ./configure
(14)查看安装软件时下载软件包的临时存放目录
ls /var/cache/apt/archives
(15)备份当前系统安装的所有软件包的列表
dpkg --get-selections | grep -v deinstall > ~/somefile
(16)从上面备份的安装包的列表文件恢复所有包
dpkg --set-selections < ~/somefile
sudo dselect
(17)清理旧版本的软件缓存
sudo apt-get autoclean
(18)清理所有软件缓存
sudo apt-get clean
(19)删除系统不再使用的孤立软件
sudo apt-get autoremove
(20)查看软件包在服务器上面的地址
apt-get -qq --print-uris install ssh | cut -d\' -f2
转载于:https://www.cnblogs.com/papam/archive/2009/08/26/1554733.html
Ubuntu 软件包管理详解相关推荐
- linux软件包管理详解
linux软件包管理 在windows下安装软件很简单,大多数软件都只需要按照提示完成安装操作.但是,在linux下安装软件稍微复杂了一点,需要用到命令行工具.下面通过在Red Hat Enterpr ...
- Linux账号和权限管理详解(超详细示例操作)!
Linux账号和权限管理详解 一.用户账号和组账号概述 1.1 Linux基于用户身份对资源访问进行控制 1.2 用户账号 1.3 组账号 二.用户账号文件 2.1 用户账号文件 /etc/passw ...
- Linux系统中的软件管理详解(下)—搭建网络软件仓库及第三方软件仓库
Linux系统中的软件管理详解(下) 5.软件仓库管理命令 a)dnf 命令: 管理软件仓库中的安装包 dnf repolist ##列出仓库信息clean all ##清除系统中已经加载的仓库缓存信 ...
- 项目log4j日志管理详解
项目log4j日志管理详解 项目log4j日志管理详解 log4j日志系统在项目中重要性在这里就不再累述,我们在平时使用时如果没有特定要求,只需在log4j.properties文件中顶入输出级别就行 ...
- Linux操作系统的进程管理详解
Linux操作系统的进程管理详解 pkill & pgrep pkill & pgrep 是两个很方便的命令.省去了要先ps auwx | grep xxxx然后再根据pid kill ...
- 基于Kubernetes构建Docker集群管理详解
from: 基于Kubernetes构建Docker集群管理详解 Kubernetes是Google开源的容器集群管理系统,基于Docker构建一个容器的调度服务,提供资源调度.均衡容灾.服务注册.动 ...
- php事件和行为,Yii框架组件和事件行为管理详解
Yii框架组件和事件行为管理详解 来源:中文源码网 浏览: 次 日期:2018年9月2日 [下载文档: Yii框架组件和事件行为管理详解.txt ] (友情提示:右键点上行txt文档名- ...
- linux输入一个用户看是否在工作,linux下的用户管理详解
linux下的用户管理详解 useradd 命令详解 添加用户 想要对linux下面的帐号了解的话首先必须要了解的4个配置文件[root@localhost /]# cat /etc/passwd 首 ...
- Spring事务管理详解_基本原理_事务管理方式
Spring事务管理详解_基本原理_事务管理方式 1. 事务的基本原理 Spring事务的本质其实就是数据库对事务的支持,使用JDBC的事务管理机制,就是利用java.sql.Connection对象 ...
最新文章
- 正则表达式匹配多个字符(*、+、?、{m}、{m,n})
- 「每周CV论文推荐」 初学深度学习单图三维人脸重建需要读的文章
- 如何使用其他文件中定义的类Python
- SQL Server索引设计 第五篇
- 《kafka中文手册》-快速开始(二)
- 你也可以设计简单的内容管理系统
- 在Windows下搭建Android开发环境及遇到的问题
- Python之深入解析Vulture如何一键找出项目中所有无效的代码
- 上线到凌晨4点半 pagehelper的bug?
- 无需SherlockActionbar的SlidingMenu使用详解(二)——向Fragment中添加ViewPager和Tab
- ORA-39171: 作业出现可恢复的等待
- java final static
- 将图片嵌入程序文件的一点研究
- oracle11存储过程,oracle 存储过程执行报错ORA-12828
- python3解析库BeautifulSoup4
- 由浅入深,汇编语言详解与二进制漏洞初阶
- C#实现多功能记事本
- python下载百度文库文档
- 遥感图像处理之计算植被覆盖度公式
- 如何用python爬虫薅羊毛_拼多多现重大BUG被“薅羊毛”,教你如何用Python简单褥羊毛...
热门文章
- DOS 中for遍历文件内容
- Index of c#
- Spring事务管理TransactionManager
- Windows Server 2008 R2安装Zune 4.0解决方法
- .NET访问PI数据库
- Android WebView 开发详解(二)
- 多网卡下如何配置指定IP走某个路由器(适用于外网不通,但是钉钉服务器通的情况)...
- VK Cup 2017 - Round 2
- iOS10权限设置问题以及xcdoe8更新细节问题
- linux中send函数MSG_NOSIGNAL异常消息