Linux软件包管理系统
Linux 软件包管理系统
软件包管理是指系统中一种安装和维护软件的方法。
大多数发行版分别属于两大包管理技术阵营: Debian 的”.deb”,和红帽的”.rpm”。
| 包管理系统 | 发行版 (部分列表) |
|---|---|
| Debian Style (.deb) | Debian, Ubuntu, Xandros, Linspire |
| Red Hat Style (.rpm) | Fedora, CentOS, Red Hat Enterprise Linux, OpenSUSE, Mandriva, PCLinuxOS |
关于依赖的库
程序很少独立工作;他们需要依靠其他程序的组件来完成他们的工作。程序所共有的活动,如输入/输出, 就是由一个被多个程序调用的子例程处理的。这些子例程存储在动态链接库中。动态链接库为多个程 序提供基本服务。如果一个软件包需要一些共享的资源,如一个动态链接库,它就被称作有一个依赖。 现代的软件包管理系统都提供了一些依赖项解析方法,以确保安装软件包时,其所有的依赖也被安装。
包管理工具
| 发行版 | 底层工具 | 上层工具 |
|---|---|---|
| Debian-Style | dpkg | apt-get, aptitude |
| Fedora, Red Hat Enterprise Linux, CentOS | rpm | yum |
”package_name” 这个术语是指软件包实际名称,而不是指”package_file”,它是包含在软件包中的文件名。
查找、安装、更新资源库中的软件包
使用上层工具来搜索资源库元数据,可以根据软件包的名字和说明来定位它。
软件包查找工具(上层工具****)
| 风格 | 命令 |
|---|---|
| Debian | apt-get update; apt-cache search search_string |
| Red Hat | yum search search_string |
软件包安装命令(上层工具****)
| 风格 | 命令 |
|---|---|
| Debian | apt-get update; apt-get install package_name |
| Red Hat | yum install package_name |
底层软件包安装命令风格命令(底层工具****)
| 风格 | 命令 |
|---|---|
| Debian | dpkg --install package_file |
| Red Hat | rpm -i package_file |
如果已经从一个并非资源库的网站下载了软件包文件 emacs-22.1-7.fc7-i386.rpm, 则可以通过这种方法来安装它:
rpm -i emacs-22.1-7.fc7-i386.rpm
因为这项技术使用底层的 rpm 程序来执行安装任务,所以没有运行依赖解析。 如果 rpm 程序发现缺少了一个依赖,则会报错并退出。
软件包更新命令(上层工具****)
| 风格 | 命令 |
|---|---|
| Debian | apt-get update; apt-get upgrade |
| Red Hat | yum update |
更新安装在 Debian 风格系统中的软件包:
apt-get update; apt-get upgrade
经过软件包文件来升级软件(底层工具****)
**
**rpm 程序安装一个软件包和升级一个软件包所用的选项是不同的,而 dpkg 程序所用的选项是相同的。
| 风格 | 命令 |
|---|---|
| Debian | dpkg --install package_file |
| Red Hat | rpm -U package_file |
rpm -U emacs-22.1-7.fc7-i386.rpm
列出所安装的软件包
| 风格 | 命令 |
|---|---|
| Debian | dpkg --list |
| Red Hat | rpm -qa |
显示所安装软件包的信息
| 风格 | 命令 |
|---|---|
| Debian | apt-cache show package_name |
| Red Hat | yum info package_name |
查找安装了某个文件的软件包
确定哪个软件包对所安装的某个特殊文件负责
| 风格 | 命令 |
|---|---|
| Debian | dpkg --search file_name |
| Red Hat | rpm -qf file_name |
卸载软件
可以使用上层或者底层工具来卸载软件
上层工具软件包删除命令
| 风格 | 命令 |
|---|---|
| Debian | apt-get remove package_name |
| Red Hat | yum erase package_name |
posted on 2025-10-12 20:19 chuchengzhi 阅读(12) 评论(0) 收藏 举报
浙公网安备 33010602011771号