rpm与yum区别
rpm是由红帽公司开发的软件包管理方式,使用rpm我们可以方便的进行软件的安装、查询、卸载、升级等工作。但是rpm软件包之间的依赖性问题往往会很繁琐,尤其是软件由多个rpm包组成时。
Yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及SUSE中的Shell前端软件包管理器。基於RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软体包,无须繁琐地一次次下载、安装。
rpm与yum的主要区别在于rpm在4.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
--nodeps 取消包与包之间的依赖关系 可以正常的按装但是按装后不能正常使用
--replacefiles 覆盖冲突的文件
--replacepkgs 替换已经安装的软件包可以避免交互
--prefix 指明安装路径
-
查询)
查询也是有很多的组合命令的如:
-q 查询 -a 所有的--》-qa 查看所有已按装的软件包
当你直接执行 rpm –qa 你会看见很多信息 而你又想找到你想要的某条信息是你可以使用 筛选命令
-i 作用 --》-qi+包名 查看已安装软件包的作用
qip+文件名+路径 查看没有安装的软件信息
-l 位置--》-ql+包名 查看已按装软件包的位置
-qlp+包名+路径 查看没有安装的包文件
-f --》-qf 查看文件属于哪个包的
如果你误删了一个服务文件 你可以现在另一台redhat操作系统下查看该文件属于哪个包中 在重新按装一下软件包 就可以再次使用了
卸载) -e+包名
升级) 升级是在原有软件的基础之上更新一些新的操作 所有更新必须要有老的软件包
-Uvh 升级和安装
-Fvh 升级
校验) 所有的按装软件包的校验文件都会放置在 /var/lib/rpm 下在该目录下会有很多的库文件,任何按装软件都会留下信息当进行比对的时候没有出现消息就是最好的结果
-Va 这个参数会跟所有的库文件进行比对但是这样非常耗费时间
-V+软件包的名字
rpm –V httpd 不会出现任何提示信息
更改他的配置文件 /etc/httpd/conf/httpd.conf 后执行 rpm –V httpd
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 +公钥文件 将公钥文件导入
-K +包名 检测数字
Yum有两种工作方式一种是基于C/S模式的另一种是基于本地
在一台虚拟机上配置ftp server
由于可以直接匿名访问ftp server 故可以将光盘上的软件包拷到/var/ftp 目录下
打开另一个虚拟机将其作为yum的客户机
由于网络上有很多的服务器所有我们可以在/etc/ym.repos.d 目录下建立多个服务器文件
编辑 rhel-debuginfo.repo 文件
编写后的脚本
查看服务仓库 yum repolist
yum list all 列出所有的软件包
可以使用ctrl +z 终止查看
yum install+包名 直接安装 -y(确认)
如果直接使用 rpm来按装会有提示信息
查看依赖关系
yum info 包名 查看包信息
remove 删除 -y(确认)
kde gnome 桌面系统
yum grouplist 查看包组
yum groupinstall 安装组
yum groupremove 删除包组
yum groupinfo 查看包组信息
当你将文件拷到仓库中没有看见的时候你可以先将缓存清空一下
yum clean all 清除缓存文件
在再次查找的时候会有一个缓存动作 且缓存动作只在第一个出现以后不会再出现
yum install +包名 + --nogpgcheck 安装时不在作数字检测
在更新文件时可以使用createrepo 命令来更新但是在最开始的时候他是没有按装服务的我们可以使用rpm来按装createrepo服务
rpm -ivh createrepo
先安装指令服务)createrepo -g 更新的文件 哪个目录
如果你没有向yum server 中放入文件就会出现×××的部分放入文件就会出现红色部分
本地yum模式于C/S模式最大的区别在于:本地模式是将yum server建立在本地主机上供自己使用当有人想要使用yum 时 也可以供其使用。