一、流行的两种软件管理包机制
1、Debian Linux 首先提出“软件包” 的管理机制 —— Deb软件包。
将应用程序的二进制文件、配置文档、man/info帮助页面等文件合并打包在一个文件中,用户使用软件包管理器直接操作软件包,完成获取、安装、卸载、查询。
2、Redhat Linux 基于这个理念推出了自己的软件包管理机制 —— Rpm软件包。
- 随着Linux操作系统规模的不断扩大,系统中软件包间复杂的依赖关系,导致Linux用户麻烦不断。
- Debian Linux 开发出了 APT 软件包管理器。
— 检查和修复软件包依赖关系。
— 利用Internet 网络帮助用户主动获取软件包。
- APT工具再次促进了Deb软件包更为广泛地使用,称为Debian Linux 的一个无法代替的亮点。
二、 软件包的类型
- Ubuntu 有两种类型的软件包: 二进制软件包(deb)和 源码包(deb-src)
— 二进制包(Binary Packages):它包含可执行文件、库文件、配置文件、man/info页面、版权声明和其他文档。
— 源码包(Source Packages):包含软件源代码、版本修改说明、构建指令以及编译工具等。先有tar工具归档为 .tar .gz 文件,然后在打包成 .dsc文件。
- 在用户不确定一个软件包类型时,可以使用file命令查看文件类型。
linux@ubuntu:~$file g++_4.1.2-9ubuntu2_i386.deb
g++_4.1.2-9ubuntu2_i386: Debian binary package(format 2.0)
三、 软件包的命名
- Filename_Version-Reversion_Architecture.deb
—— Filename :软件包名称。
—— Version:软件版本
—— Version:修订版本
—— Architecture:体系架构
例如 : g++_4.1.2-9ubuntu2_i386.deb
四、 软件包管理工具分类
- 根据用户交互方式的不同,可以将常见的软件包管理工具分为三类。
—— 命令行 : 例如(dpkg-deb、dpkg、apt) 在命令行的模式下完成软件包管理任务。
—— 文本窗口界面 : 例如(dselect、aptitude、tasksel) 在文版窗口界面模式中,使用窗口和菜单可以完成软件包管理任务。
—— 图形界面 : 例如(synaptic) 在X-Window图形桌面环境中运行,具有更好的交互性、可读性、易用性等特点。
五、 dpkg相关命令
- dpkg -i <package> :安装一个在本地文件系统上存在的Debian软件包。
- dpkg -r <package> :移除一个已经安装的软件包。
- dpkg -P <package> :移除已安装软件包及配置文件。
- dpkg -L <package> : 列出安装的软件包清单。
- dpkg -s <package> :显示软件包的安装状态。
dpkg 与 apt 软件包管理有什么区别?
dpkg : 安装软件是不会管 软件与软件之间的依赖关系,需要自己提前下好各安装包自行下载。
apt : 安装软件时会借助网络 安装 软件的同时安装与该软件有依赖关系的网络。