13 linux软件包管理
二进制软件包管理(RPM,YUM)
源代码包安装
脚本安装(Shell/Java)
Debian系linux软件包管理简介
13.1 RPM 包管理
RPM软件包的一个例子:
sudo-
1.7.2pl-
5.el5.
i386.rpm
其中包括软件名(
sudo),版本号(
1.7.2pl),发行号(
5.el5),和硬件平台(
i386)。
(1)卸载
# rpm
-e sudo %注意:如果其他软件包有依赖关系,卸载时会产生提示信息,可以使用 --nodeps 强行卸载。
(2)安装
# rpm
-ivh sudo-1.7.2pl-5.el5.i386.rpm
挂载光盘:
mkdir /mnt/cdrom
mount /dev/cdrom /mnt/cdrom
查询软件包是否被安装:
rpm
-q sudo
rpm
-qa | grep 【软件包的名称的关键字】 % 查找所有-qa【软件包的名称的关键字】的软件包安装信息
其他安装命令:
--excludedocs % 不安装软件包中的文档软件
--prefix PATH %将软件包安装到有PATH指定的路径下
--test %只对安装进行测试,并不实际安装
范例:
rpm -ivh --test sudo-1.7.2pl-5.el5.i386.rpm
其它常见情况:
A.软件包已经安装。 如果想覆盖安装该软件包,可以使用命令:--replacepkgs
B.文件冲突。 如果要安装的软件包中有一个文件已在安装其他软件时安装,会出现错误信息。要想忽略该信息。使用:-replacefiles。
C.未解决依赖关系。RPM软件包可能依赖于其他软件包,在安装特定软件包之后才能安装该软件包。你必须安装所依赖的软件包才能解决。如要强行安装,使用--nodeps。
(3)升级
# rpm -Uvh sudo-1.7.2pl-5.el5.i386.rpm % -U (-update)
(4)
查询
选项:
-a 查询所有已经安装的软件包 (all)
-f 查询文件所属软件包
-p 查询软件包
-i 显示询软件包信息
-l 显示软件包中的文件列表
-d 显示被标注为文档的文件列表
-c 显示被标注为配置文件的文件列表
案例:
1.查询文件隶属的软件包: rpm -qf
2.查询软件包信息: rpm -qi 、rpm -qip
3.查询软件包安装信息: rpm -ql 、 rpm -qlp
4.查询软件包帮助文档 rpm -qd
5.查询软件包配置文档 rpm -qc
(5)校验 (用于 查看软件包是否被修改过,修改了什么)
# rpm -V 【软件名称】
输出信息解释: 5 文件的md5校验值
S 文件大小
L 连接数
T 文件的创建时间
D 设备文件
U 文件用户
G 文件的用户组
M 文件的权限
(6)软件包文件提取
解压所有文件到指定目录: # rpm2cpio initscripts-8.45.30-2.el5.centos.i386.rpm | cpio -idv
解压指定文件到指定目录: # rpm2cpio initscripts-8.45.30-2.el5.centos.i386.rpm | cpio -idv
./etc/inittab
13.2 YUM包管理
应用YUM的好处:自动解决软件包的依赖问题
方便软件包升级
(1) 安装: yum install [软件包名称] 例如:# yum install sudo
(2) 检查升级: yum check-update 例如:# yum check-update sudo
(3) 升级: yum update 例如:# yum update sudo
(4) 软件包查询:yum list 例如:# yum list | grep sudo % 列出sudo的软件包的查询信息
(5) 软件包信息:yum info 例如:# yum info sudo
(6) 卸载: yum remove 例如:# yum remove sudo
(7) 帮助: yum -help、 man yum
13.3 源代码包安装
应用举例(proftpd):
# tar -xzvf proftpd-1.3.3d.tar.gz %解压文件包,在当前目录下会有proftpd-1.3.3d文件夹
# cd proftpd-1.3.3d %进入proftpd-1.3.3d文件夹
# ./configure --prefix=/usr/local/proftpd % 配置,在文件夹proftpd-1.3.3d文件夹下进行配置,指定安装目录: --prefix=/usr/local/proftpd。如果出错,注意提示信息。
# make %编译,调用GCC等编译器将源代码编译成可执行文件
# make install % 安装,将编译的文件拷贝到指定目录里。
%软件下载地址:http://www.proftpd.org
13.4 脚本安装
应用举例(webmin一种功能强大的远程管理软件)
# tar -xzfv webmin-1.530.tar.gz %解压文件包,在当前目录下会有webmin-1.530文件夹
# cd webmin-1.530 %在该文件夹里,你会发现没有configure文件,这说明这不是源代码包,这是找找有没有README,看看可是脚本文件
# vi README %阅读README,根据说明的安装方法进行安装。
# ./setup.sh %运行脚本,期间可能会要回答一些简单的设置问题。
软件下载地址:http://www.webmin.com
13.5 APT包管理
搜索软件包 apt-cache search
软件包信息 apt-cache show
安装 apt-get install (reinstall, -f)
删除 apt-get remove (autoremove, --pruge)
更新软件源 apt-get update
更新已安装包 apt-get upgrade