1. 什么是包管理
包管理器又称软件包管理系统,它是在电脑中自动安装、配制、卸载和升级软件包的工具组合,在各种系统软件和应用软件的安装管理中均有广泛应用。
2. Debian 系列dpkg 和 apt-get
2.1 dpkg
**dpkg**
是“Debian Packager ”的简写。为 “Debian” 专门开发的套件管理系统,方便软件的安装、更新及移除。所有源自“Debian”的“Linux ”发行版都使用 “dpkg”,例如 Ubuntu / Linux Mint 等。
命令 | 功能 | 备注 |
---|---|---|
dpkg -i xxxx.deb | 离线安装指定包 | |
dpkg -l | 显示所有已经安装的Deb包,同时显示版本号以及简短说明 | |
dpkg -L xxxx | 显示一个包安装到系统里面的文件目录信息 | |
dpkg -S /path/to/file | 搜索指定包里面的文件(模糊查询) | |
dpkg -s xxxx | 显示包的信息 | |
2.2 apt-get
apt-get,是一条linux命令,适用于deb包管理式的操作系统,主要用于自动从互联网的软件仓库中搜索、安装、升级、卸载软件或操作系统。
仓库地址:
- /etc/apt/sources.list
- /etc/apt.d/xxx.list | apt-setup | 设定/etc/apt/souces.list | | —- | —- | | apt-get update | 软体资料库同步 | | apt-get dist-upgrade | 升级系统的版本(需在/etc/apt/sources.list指定stable,testing或unstable) | | apt-cache search softwarename | 列出所有sofrwarename的套件 | | apt-get install softwarename1 [softwarename2…..] | 安装软体 | | apt-get remove softwarename 1 [softwarename 2…] | 移除软体(保留设定档) | | apt-get —purge remove softwarename 1 [softwarename 2…] | 移除软体(不保留设定档) | | apt-upgrade [softwarename 1 softwarename2…] | 更新套件,不指定套件名则更新所有可更新的套件 | | apt-get clean(autoclean) | 删除系统暂存的deb(autoclean只会将比目前系统旧版的套件删除) | | apt-file search filename | 查找包含特定文档的软件包(不一定是已安装的),这些文档的文档名中含有指定的字符串 | | apt-get build-dep softwarename | 安装软件包对应的编译依赖包 |
3. RedHat 系列rpm 和 yum
3.1 rpm
rpm 是Red-Hat Package Manager(RPM软件包管理器)的缩写,这一文件格式名称虽然打上了RedHat的标志,但是其原始设计理念是开放式的,现在包括OpenLinux、S.u.S.E.以及Turbo Linux等Linux的分发版本都有采用,可以算是公认的行业标准了。
命令 | 功能 | 备注 |
---|---|---|
rpm -i xxxx.rpm | 离线安装指定包 | |
rpm -qa | 显示所有已经安装的Deb包,同时显示版本号以及简短说明 | |
rpm -ql xxxx | 显示一个包安装到系统里面的文件目录信息 | |
rpm -qf /path/to/file | 搜索指定包里面的文件(模糊查询) | |
rpm -qi xxx | 显示包的信息 | |
3.2 yum
yum** (全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及CentOS中的Shell前端软件包管理器。基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装。**
仓库地址:
- /etc/yum.repos.d/xxx.repo | yum install softwarename1 [softwarename2…..] | 安装套件 | | —- | —- | | yum update [softwarename 1 softwarename2…] | 更新套件,不指定套件名则更新所有可更新的套件 | | yum upgrade | 升级操作系统 | | yum list | 列出目前在yum server 上面有的套件 | | yum info | 类似rpm -qi | | yum clean | 移除下载到本机的packages 或headers | | yum remove softwarename1 [softwarename2…..] | 移除已经安装的套件 | | yum deplist softwarename | 列出包依赖 |