rpmyum区别

rpm是由红帽公司开发的软件包管理方式,使用rpm我们可以方便的进行软件的安装、查询、卸载、升级等工作。但是rpm软件包之间的依赖性问题往往会很繁琐,尤其是软件由多个rpm包组成时。
Yum(全称为 Yellow dog Updater, Modified)是一个在FedoraRedHat以及SUSE中的Shell前端软件包管理器。基於RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软体包,无须繁琐地一次次下载、安装。

   rpmyum的主要区别在于rpm4.0以上版本不在支持软件包按装过程中出现的依赖关系,这就导致rpm按装增加了一些重复的操作而yum依然很好的支持依赖关系。

rpm 的全称叫做redhat packet manager它的作用是实现软件包的,安装,卸载,升级,校验。

redhat  fedora(redhat的一个免费的社区)  centos等经常使用rpm来安装软件包。

在虚拟机上搭建环境

1.先建立挂载点    mkdir  /mnt/cdrom

2 . 将光盘挂载到挂载点上   mount  /dev/cdrom  /mnt/cdrom

按装)

rip的常用按装参数有 –i  -v -h

-i 按装

       -v 详细信息

       -h 显示按装进度条

通常我们会组合使用这三个参数就够成了 ivh

211058929.png

--nodeps  取消包与包之间的依赖关系   可以正常的按装但是按装后不能正常使用         

 --replacefiles   覆盖冲突的文件

 --replacepkgs   替换已经安装的软件包可以避免交互  

 --prefix    指明安装路径

                   - 

  查询)

     查询也是有很多的组合命令的如:

-q 查询  -a 所有的---qa 查看所有已按装的软件包

                    当你直接执行 rpm qa 你会看见很多信息 而你又想找到你想要的某条信息是你可以使用 筛选命令

211123724.png

 -i 作用  ---qi+包名 查看已安装软件包的作用

211140467.png

 qip+文件名+路径   查看没有安装的软件信息

211200693.png

  -l  位置---ql+包名 查看已按装软件包的位置    

                         -qlp+包名+路径 查看没有安装的包文件

 

             -f ---qf 查看文件属于哪个包的

        如果你误删了一个服务文件  你可以现在另一台redhat操作系统下查看该文件属于哪个包中 在重新按装一下软件包 就可以再次使用了

211230322.png

  卸载)   -e+包名

211257743.png

升级) 升级是在原有软件的基础之上更新一些新的操作 所有更新必须要有老的软件包

 -Uvh  升级和安装

          -Fvh  升级

211316384.png

校验) 所有的按装软件包的校验文件都会放置在 /var/lib/rpm 下在该目录下会有很多的库文件,任何按装软件都会留下信息当进行比对的时候没有出现消息就是最好的结果

           -Va 这个参数会跟所有的库文件进行比对但是这样非常耗费时间

  -V+软件包的名字   

  rpm V  httpd 不会出现任何提示信息

 更改他的配置文件 /etc/httpd/conf/httpd.conf 后执行 rpm V  httpd

211337330.png

   S file Size differs

       MMode differs (includes permissions and file type)

       5 MD5 sum differs

       D Device major/minor number mismatch

       LreadLink(2) path mismatch

       U User ownership differs

       G Group ownership differs

       T mTime differs

 在网络上文件的传输要经过MD5的加密产生哈希值然后再将文件发送出去而如果要打开文件就必须有证书签发机构的公钥,将加密后的文件进行解密。 这样看来 每一个文件都有属于自己读一无二的数字签名

      公钥会存放在 /etc/pki/rpm-gpg 目录下

      在检测前要先用pm --import +公钥文件 将公钥文件导入

211403231.png

 -K +包名   检测数字

211426407.png

Yum有两种工作方式一种是基于C/S模式的另一种是基于本地

211453646.png

在一台虚拟机上配置ftp server

211517184.png

由于可以直接匿名访问ftp server 故可以将光盘上的软件包拷到/var/ftp 目录下

211538954.png

打开另一个虚拟机将其作为yum的客户机

由于网络上有很多的服务器所有我们可以在/etc/ym.repos.d 目录下建立多个服务器文件

编辑 rhel-debuginfo.repo 文件

211610528.png

编写后的脚本

211642206.png

查看服务仓库  yum repolist

211704533.png

yum  list all   列出所有的软件包

211728420.png

可以使用ctrl +z 终止查看

 

   yum  install+包名   直接安装  -y(确认)

 如果直接使用 rpm来按装会有提示信息

211750336.png

查看依赖关系

211832952.png

yum info  包名    查看包信息

211859594.png

remove         删除 -y(确认)

  kde gnome  桌面系统

  yum  grouplist  查看包组

211925399.png

yum groupinstall  安装组 

211948218.png

212008292.png

212020472.png

yum  groupremove 删除包组

  yum groupinfo  查看包组信息

212043853.png

当你将文件拷到仓库中没有看见的时候你可以先将缓存清空一下 

  yum clean  all  清除缓存文件

在再次查找的时候会有一个缓存动作 且缓存动作只在第一个出现以后不会再出现

   yum  install +包名 + --nogpgcheck   安装时不在作数字检测

 在更新文件时可以使用createrepo 命令来更新但是在最开始的时候他是没有按装服务的我们可以使用rpm来按装createrepo服务

   rpm  -ivh  createrepo 

212112454.png

先安装指令服务)createrepo  -g 更新的文件  哪个目录

 如果你没有向yum server 中放入文件就会出现×××的部分放入文件就会出现红色部分

212135553.png

212145487.png

 

本地yum模式于C/S模式最大的区别在于:本地模式是将yum server建立在本地主机上供自己使用当有人想要使用yum 时 也可以供其使用。