linux 安装rp-ppoe rpm,Linux基础篇 十二 (RPM 与 SRPM 套件管理员)

标签: rpm/srpm管理/安装/更新/升级, 后面补充了rmp的网络安装与升级方式yum

1. RPM : 以一种数据库记录的方式来将你所需要的套件安装到你的 Linux 主机的一套管理程序。最大的特点就是将要安装的套件先编译过,并且打包好了,透过包装好的套件里头预设的数据库记录,记录这个套件要安装的时候必须要的相依属性模块(就是你的 Linux 主机需要先存在的几个必须的套件)。缺点是安装的环境必须与打包时的环境需求一致或相当, 且有套件的属性相依问题,此时就要从上到下,依次把相依套件安装好才可安装当前套件。

xxxxxxxxx.rpm   

2. SRPM: 是原始码的格式,可以透过修改SRPM 内的参数设定档,然后重新编译产生能适合我们 Linux 环境的 RPM 档案,因此可以将该套件安装到我们的系统当中,而不必与原作者打包的 Linux 环境相同了!

xxxxx.src.rpm   

3. RPM相关指令

[root@linux ~]# rpm -ivh package_name   -i :install 的意思

-v :察看更细部的安装信息画面

-h :以安装信息列显示安装进度

[root@linux ~]# rpm -qa[root@linux ~]# rpm -q[licdR]    已安装的套件名称

[root@linux ~]# rpm -qf    存在于系统上面的某个档案

[root@linux ~]# rpm -qp[licdR] 未安装的某个文件名称:

-q : 仅查询,后面接的套件名称是否有安装;                     

-qa :列出所有的,已经安装在本机 Linux 系统上面的所有套件名称;

-qi : 列出该套件的详细信息 (information),包含开发商、版本与说明等;

-ql : 列出该套件所有的档案与目录所在完整文件名 (list);

-qc :列出该套件的所有设定档 (找出在 /etc/ 底下的檔名而已)

-qd :列出该套件的所有说明档 (找出与 man 有关的档案而已)

-qR :列出与该套件有关的相依套件所含的档案 (Required 的意思) (可看出安装这个套件需要哪些套件的支持)

-qf :由后面接的文件名称,找出该档案属于哪一个已安装的套件;

-qp[icdlR]:注意 -qp 后面接的所有参数以上面的说明一致。但用途仅在于找出某个 RPM 档案内的信息,而非已安装的套件信息!注意!

[root@linux ~]# rpm -e logrotate      

[root@linux ~]# rpm --rebuilddb       

4. SRPM的使用 (默认路径:/usr/src/redhat)

>设定档的主要内容

因为SRPM提供源码,所以可以更改一些设定的内容,编译生成适合我们平台和要求的RPM包,然后再安装。以rp-pppoe-3.5-30.src.rpm为例,具体过程如下:

[root@linux ~]# rpm -i /root/rp-pppoe-3.5-30.src.rpm

[root@linux ~]# cd /usr/src/redhat/SPECS     

[root@linux SPECS]# vi rp-pppoe.spec         

#1. 整个档案的开头以Summary为开始,这部份的设定都是最基础的说明内容;

#2. 然后每个不同的段落之间,都以%来做为开头,例如%prep与%install等

>设定文档修改完毕,接下来就是将它编译成可安装的RPM档案

--rebuild:    将后接的SRPM 进行编译与打包,并产生RPM的档案,但是产生的RPM档案并没有安装到系统上,安装的时候请加绝对路径来安装即可!

--recompile: 这个动作会直接的编译打包并且安装!

在/usr/src/redhat/SPECS目录下直接执行:

[root@linux ~]# rpmbuild -bb rp-pppoe.spec   

[root@linux ~]# rpmbuild -ba rp-pppoe.spec   

>RPM的升级和更新

[root@linux ~]# rpm -Fvh *.rpm ---->若后接套件未安装到您的 Linux 系统上,则该套件不会被安装;亦即只有安装至您 Linux 系统内的套件会被升级!

[root@linux ~]# rpm -Uvh *.rpm ---->后面接的套件即使没有安装过,则系统将予以直接安装;若后面接的套件有安装过旧版,则系统自动更新至新版!

-----------------------------------------------------------------------------------------------------------------------------------

@ linux上RPM的依赖关系手动整理非常恼火,如果安装某个.rpm时提示找不到某个依赖文件,最好的办法是让系统联通网络,执行网络安装命令: yum localinstal ****.rpm, 让它自己网上搜索合适的依赖文件安装。使用过,非常有效,具体命令格式如下:

查询信息(以包含foo字段为例):yum info foo   (或先rpm -q foo 查看rpm是否已经安装)

搜索软件:yum search foo

安装软件(以foo-x.x.x.rpm为例):yum install foo-x.x.x.rpm

升级软件:yum upgrade foo或者yum update foo

删除软件:yum remove foo-x.x.x.rpm或者yum erase foo-x.x.x.rpm

其它参数参见man yum

(shmily_soc)

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值