软件安装
包管理系统PMS(package management system)
控制软件和库的安装
软件仓库
软件包存储在服务器上,可使用PMS通过互联网访问,这些服务器成为仓库。
软件包通常依赖其他软件包,被依赖的包必须提前安装在系统上
常见的两种PMS工具
- dpkg(基于Debian发行版)
- rpm(基于RedHat发行版)
dpkg
基于Debian发行版的核心工具
配置文件在/etc/apt/sources.list
且包含如下前端工具
- apt-get
- apt-cache
- aptitude
使用aptitude管理软件包
输入命令直接回车,可以看到几组软件包,每组后面的数字显示这个组包含多少个软件包
aptitude
常用参数
aptitude update 更新可用的包列表 aptitude upgrade 升级可用的包 aptitude dist-upgrade 将系统升级到新的发行版 aptitude install pkgname 安装包 aptitude remove pkgname 删除包 aptitude purge pkgname 删除包及其配置文件 aptitude search string 搜索包(每个包名字前i或u表示已安装,p或v表示包可用但未安装) aptitude show pkgname 显示包的详细信息 aptitude clean 删除下载的包文件 aptitude autoclean 仅删除过期的包文件
列出某个软件包所安装的全部文件
dpkg -L vim-common
查找某个特定文件属于哪个包,文件路径必须是绝对路径
dpkg --search /usr/bin/ssd
更新软件包
检查依赖关系并进行保守更新
aptitude safe-upgrade
不检查依赖关系强制更新(慎用)
aptitude full-upgrade
atpitude dist-upgrade
卸载软件
aptitude remove xx 只删除软件包
aptitude purge xx 删除软件包的数据和配置文件
再次使用aptitude search查看,如果软件包名称前c表示软件已删除,配置文件还存在,如果是p表示配置文件已删除
RedHat
基于rpm工具管理软件包
配置文件存放在/etc/yum.repos.d目录下
包含如下前端工具
- yum(Centos,redhat中使用)
- urpm(Mandriva中使用)
- zypper(openSUSE中使用)
列出已安装的软件包
yum list installed
查看单个软件包是否安装
yum list xterm yum list installed xterm
找出系统某个文件属于哪个软件包
yum provides /etc/yum.conf
安装软件
yum install xxx
本地安装,需要提前下载好软件包
yum localinstall package_name.rpm
列出已安装软件包的可用更新
yum list updates
更新软件包
yum update xx 更新某个包 yum update 更新所有
卸载软件
yum remove xx yum erase xx 删除软件和他所有的文件
处理损坏包依赖关系
当安装多个软件包时,某个包的软件依赖关系可能会被另一个包的安装覆盖掉,称为损坏的包依赖关系
先清理
yum clean all
再更新
yum update
如果还不行,使用如下命令
yum deplist xx
这个命令显示了所有包的库依赖关系以及什么软件可以提供这些库依赖关系,然后重装依赖包
如果还不行,则使用终极杀手锏
yum update --skip-broken
忽略依赖关系损坏的包,继续更新其他软件包
显示从哪些仓库获取软件
yum repolist
从源码安装
先从网站下载tar.gz软件包并解压
tar -zxvf xx.tar.gz
进入解压目录,阅读README或AAAREADME文件
执行配置脚本文件
./configure
查看报错信息,处理报错
最后使用make构建各种二进制文件,编译源码,生成最终的可执行文件
make 会将软件安装到当前目录下 make install 会将软件安装到常用目录下 #两者都可使用建议使用第二种