linux学习笔记之软件包管理RPM

27 篇文章 0 订阅

软件包的分类
1.源码包(特殊的源码包:脚本安装包 一般是install.sh运行后就会进入和windows的setup.exe类似的安装界面)
2.二进制包(系统默认包,Redhat-RPM包,debian-deb包)

1.源码包就是网站上面下载下来的包,安装需要编译,比较耗费时间,但是可以查看源码。
2.二进制包不需要编译,安装速度快,但是不能查看源码。

兄弟们,注意以下,从这一课开始redhat和debian要分家了,参考这篇文章:debian与redhat的区别

RPM命令管理(在ubuntu中是dpkg)

RPM包命名规则:
范例:httpd-2.1.2-13-el6.centos.l.i686.rpm
httpd:软件包的名字
2.1.2:版本号
13:发布次数
el6.centos:适合的linux平台
i686:适合的硬件平台
rpm:包的扩展名

依赖问题:
1.树形依赖:a->b->c这个好解决,先安装c,后b,最后a。
2.环形依赖:a->b->c->a 把a,b,c一条命令一起安装。
3.模块依赖
这个问题一般是在碰到so.数字结尾的依赖时出现
这种一般是库依赖,这种依赖他是某一个包中的一个软件,所以这种情况需要把这个包装上即可解决。
问题来了,我们怎么知道这个依赖是哪一个模块的,查询网站:www.rpmfind.net。(听说已经倒闭了,哦耶,但是我还是能用)

如果想要不天天被依赖的问题恶心,用yum(debian中是apt)

RPM命令

1.包全名:如果操作的是没有安装的RPM包,必须使用包全名,还要注意路径。
一般在:安装或者升级的时候使用。
2.包名:使用已经安装好的包时只要写包名。实际是搜索/var/lib/rpm数据库。

安装命令:rpm -ivh 包全名

-i 安装
-v 显示详细信息
-h显示进度
–nodeps不检测依赖项(一般不用)

升级命令:rpm -Uvh 包全名 -U(upgrade)升级
卸载命令:rpm -e 包名 -e卸载

安装等功能用rpm非常麻烦,一般用yum,但是查询命令一定要用rpm

查询:(ubuntu对应命令
1.查询一个包是否安装:rpm -q 包名 -q(query):查询

2.查询所有包:rpm -qa -a:all所有

3.查询包信息:rpm -qi 包名 -q(query) #-i(information)
如果这个包没有安装选项中加个p,并且是输入包全名

4.查询包中文件安装位置:rpm -ql 包名 #-l:list
如果这个包没有安装选项中加个p,并且是输入包全名

5.查询系统文件是属于包的:rpm -qf 路径/文件名 #-f:file

6.查询包的依赖性:rpm -qR 包名 #-R:requires
如果这个包没有安装选项中加个p,并且是输入包全名

RPM包校验

校验:rpm -V 包名
具体验证信息参考:RPM包验证信息详解

从RPM包中提取文件:rpm2cpio 包全名 | cpio -idv .绝对路径

rpm2cpio:将RPM文件转换为cpio文件
cpio是一个工具,用于创建软件档案文件或从档案文件中提取文件
此处的.绝对路径是说把文件安装到当前目录,和之前碰到的./不是一个意思,要特别注意。
估计很多人看不懂这个,记住命令格式就好,记不住就每次要用来查询以下就好
范例:rpm2cpio 包全名 cpio -idf ./bin/ls
之后再将ls复制到 /bin/ls 即可。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值