dpkg 和 rpm 的常用方法比较
2012-05-12 22:06
232 查看
rpm vs. dpkg 常用參數對照
安裝目的 | rpm 用法 | dpkg 用法 |
安裝指定套件 | rpm -i pkgfile.rpm | dpkg -i pkgfile.deb |
目的 | rpm 用法 | dpkg 用法 |
顯示所有已安裝的套件名稱 | rpm -qa | dpkg -l (小寫 L) |
顯示套件包含的所有檔案 | rpm -ql pkgname (小寫 L) | dpkg -L pkgname |
顯示特定檔案所屬套件名稱 | rpm -qf /path/to/file | dpkg -S /path/to/file |
查詢套件檔案資訊 | rpm -qip pkgfile.rpm (顯示套件資訊) rpm -qlp pkgfile.rpm (小寫 L, 顯示套件內所有檔案) | dpkg -I pkgfile.deb (大寫 I ) dpkg -c pkgfile.deb |
顯示指定套件是否安裝 | rpm -q pkgname (只顯示套件名稱) rpm -qi pkgname (顯示套件資訊) | dpkg -l pkgname (小寫 L, 只列出簡潔資訊) dpkg -s pkgname (顯示詳細資訊) dpkg -p pkgname (顯示詳細資訊) |
目的 | rpm 用法 | dpkg 用法 |
移除指定套件 | rpm -e pkgname | dpkg -r pkgname (會留下套件設定檔) dpkg -P pkgname (完全移除) |
alien 可處理 .deb、.rpm、.slp、.tgz 等檔案格式, 進行轉檔或安裝.
於 Debian 安裝非 Debian 套件時, 可使用 alien 進行安裝.
安裝 alien 套件: apt-get install alien
在 Debian 安裝 RPM 套件: alien -i quota-3.12-7.i386.rpm
製作成 deb 的套件格式: alien -d quota-3.12-7.i386.rpm
製作成 rpm 的套件格式: alien -r quota_3.12-6_i386.deb
一、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
相关文章推荐
- [转]dpkg 和 rpm 的常用方法比较
- Python合并两个字典的常用方法与效率比较
- Jquery与JS常用方法比较
- VBA比较常用共通方法(一)写文本文件续
- 常用存储过程分页实现方法的性能比较
- 六种比较常用的SEM方法
- NGUI 比较常用的几个方法
- Linux下dpkg命令常用方法整理
- C# 比较常用的方法总结
- javascript数组去重的三种常用方法,及其性能比较
- Python合并两个字典的常用方法与效率比较
- JavaScript 与JQuery 常用方法比较
- NSObject一些比较常用的方法和简单的反射
- ios 开发,通讯录信息调用常用方法,这个比较全,不用再整理了;
- java queue中队列的使用示例及常用方法示例和比较
- 数据库主键设计—常用方法及比较(转载)
- JAVA之旅(十六)——String类,String常用方法,获取,判断,转换,替换,切割,子串,大小写转换,去除空格,比较
- R语言实现常用多重比较方法
- linux下查看yum/rpm/dpkg某软件是否已安装的方法
- string 比较常用的方法