linux下软件包管理,我个人认为分为两种,一种是redhat系的软件包管理;另一种是debian系的软件包管理;再加上一些源代码包安装和脚本安装,这基本上就组成了我们学习任何linux所需要掌握的关于软件包管理的知识!

二进制软件包管理主要分为两种:rpm和yum

一、rpm

举个RPM软件包的例子:
sudo-1.7.2p1-5.el5.i.386.rpm

其中包括软件名 sudo   版本号 1.7.2pl  发行号5.el5和硬件平台(i386)

1.卸载
rpm -e sudo
注意:如果与其他软件包有依赖关系,卸载时会产生提示信息,可以使用–nodeps强行卸载

2.安装
rpm -ivh sudo-1.7.2p1-5.el5.i.386.rpm
i表示install  v表示显示命令执行信息  h表示进度 ,其实只需要一个i选项即可安装!

这儿附加的一个知识是:关于挂载光盘

首先新建一个文件夹,mkdir /mnt/cdrom

然后将光盘挂载到这个目录下面  mount /dev/cdrom/ /mnt/cdrom

查询是否已经安装:rpm -q sudo
     rpm -qa |grep samba 
其他安装选项:
 –excludedocs  不安装软件包中的文档文件
 –prefix PATH 将软件包安装到由PATH指定的路径下
    注意的是大多数rpm包不允许改变安装目录
 –test 只对安装进行测试,并不实际安装
   常见的是测试依赖关系和是否安装
 –replacepkgs  执行覆盖安装的过程,常见于发生文件冲突时使用
 –nodeps  未解决依赖关系 可以强行安装  不考虑依赖关系,但是十又八九用不了

3.升级
rpm -Uvh 软件包名称

4.查询
选项:
-a 查询所有已安装的软件包
-f 查询文件所属软件包
-p 查询软件包
-i 显示软件包信息
-l 显示软件包中的文件列表
-d 显示被标注为文档的文件列表
-c 显示被标注为配置文件的文件列表

RPM查询应用案例:
1.查询文件隶属的软件包 rpm -qf
2.查询软件包的信息:   rpm -qi rpm -qip 前面的表示查询已经安装的包,后面表示还没安装包
3.查询软件包安装文件:rpm -ql rpm -qlp  前面的表示查询已经安装的包,后面表示还没安装包
4.查询软件包帮助文档:rpm -qd rpm -qdp
5.查询软件包配置文件:rpm -qc

5 校验:
rmp -V 软件名称
 5 文件的md5校验值
 S 文件大小改变
 L 链接文件
 T 文件的创建时间
 M 文件的权限
 U 文件的用户
 G 文件的用户组
 D 设备文件

举个例子:md5sum 文件名 可以加md5校验值,只要你改变内容 校验值就改变

6.软件包文件提取
首先定位所属软件包rpm -qf
解压所有文件到当前目录
rpm2cpio 软件包名|cpio -idv
解压指定文件到当前目录
rpm2cpio 软件包名|cpio -idv ./etv/inittab

二、yum

应用YUM的好处:
自动解决软件包依赖关系   方便的软件包升级

安装 yum install
检测升级  yun check-update
升级 yum update
软件包查询 yum list   一般结合grep使用
软件包信息 yum info
卸载 yum remove
帮助 yum-help  man yum

在后面直接跟上软件名即可完成安装 升级

 

 

linux软件包管理(一):二进制软件包管理

发表评论

电子邮件地址不会被公开。 必填项已用*标注

This site uses Akismet to reduce spam. Learn how your comment data is processed.