-
rpm和yum的关系
-
RPM是包管理机制。适用于RedHat,Fedora,CentOS,SuSE。
-
rpm包中记录了自己的依赖软件。
-
rpm包安装完成后,软件信息会记录在主机数据库中,以便将来的查询,验证和卸载。
-
-
YUM是在线安装(升级)机制。
-
-
*.rpm无须编译,可直接安装;*.src.rpm需要编译,但是可适配自己的主机平台。
-
x86 cpu硬件是向下兼容的,一般i386或i686平台上编译出来的rpm包在x86_64平台上可以正常使用。
-
RPM
-
安装:
-
rpm -ivh xxx.rpm // 安装本地的rpm包。
-
rpm -ivh ip/path/xxx.rpm // 安装网络的rpm包。
-
常用参数:
-
rpm -ivh xxx.rpm --test // 检查rpm包是否可以安装到当前linux环境,是否有依赖软件。
-
rpm -ivh xxx.rpm --prefix newpath // 指定安装路径。
-
rpm -ivh xxx.rpm --nosignature // 不检查数字证书。
-
--force // 强制安装
-
--nodeps //不检查依赖性。
-
-
-
升级与更新
-
rpm -Uvh xxx.rpm // 升级(若没有安装,则安装)软件。
-
rpm -Fvh xxx.rpm // 仅升级软件。
-
可以使用安装时提供的参数。
-
-
查询:
-
rpm安装的软件信息会被写入/var/lib/rpm/目录下的数据库文件中。
-
大致分为两类:查询已安装的软件的信息和查询未安装的指定rpm包的信息。
-
查询的选项为:-q(query)。
-
详细示例:
-
查询已安装的软件信息:
-
rpm -qa // query all,查询系统中所有已安装的软件。
-
rpm -q openssl // 查询系统中是否安装了openssl。
-
rpm -ql openssl // query list,查询openssl软件包中的文件都安装到系统哪些路径了。
-
rpm -qi openssl // query information,查询openssl软件的详细信息
-
rpm -qc openssl // query config,查询openssl的配置文件。
-
rpm -qd openssl // 查询openssl的帮助文件。
-
rpm -qR openssl // query Required,查询openssl的依赖软件。
-
rpm -rf filename // query file,查询系统中的某个文件属于哪个已安装的软件包。
-
-
查询未安装的指定rpm包的信息:
-
rpm -qp[licdR] xxx.rpm // query package,其中licdR的含义同上文。
-
-
-
-
验证:
-
-V // Verify
-
命令示例:
-
rpm -Va // 列出系统上所有被改动过的文件。
-
rpm -V openssl
-
功能:验证openssl这个已安装的软件的相关文件是否被改动过。
-
原理:将系统中openssl相关文件与/var/lib/rpm数据库中的内容相比较。
-
-
rpm -Vf filename // 检查系统中某个指定的文件是否被改动过。
-
-
-
卸载:rpm -e openssl // 卸载openssl软件。
-
重建rpm数据库/var/lib/rpm:rpm --rebuild。
-
-
YUM:
-
查询
-
yum list // 列出yum服务器上提供的所有的软件名称。
-
yum list updates // 列出yum服务器上可供本机升级的软件。
-
yum search mysql // 查询yum服务器上mysql相关的软件。
-
yum info mysql-server // 查询mysql-server的详细信息,类似于rpm -qi。
-
yum provides filename // 查询提供本机指定文件的软件包有哪些,类似于rpm -qaf。
-
-
安装/升级/删除
-
yum install mysql-server // 安装mysql-server
-
yum update mysql-server // 升级mysql-server
-
yum remove mysql-server // 删除mysql-server
-
-
yum的配置文件:
-
/etc/yum.repos.d/CentOS-Base.repo
-
base:容器名称。不能存在两个名称一样的容器。
-
mirrorlist: 容器可以使用的镜像站点。
-
baseurl: 容器的实际网址。我们修改这个字段就行。
-
enabled: 是否启动这个容器。
-
gpgcheck: 是否检验数字证书。
-
gpgkey: 数字证书公钥所在位置。
-
查看当前有哪些yum容器:
-
yum repolist all
-
-
修改容器可能的问题:
-
yum首先下载容器的清单到/var/lib/yum数据库中。
-
如果仅改变了baseurl,而没有改变容器名称,则可能造成本机清单和yum服务器清单不同步。
-
解决方式为清除本机的旧数据:
-
yum clean packages // 删除已下载的软件文件。
-
yum clean headers // 删除已下载的软件的文件头信息。
-
yum clean all // 将所有容器数据删除。
-
-
-
-
yum软件组功能:
-
安装大型软件(如GNOME桌面)等大型软件时,大型软件需要很多rpm软件包,此时可是使用yum提供的软件组功能。
-
yum grouplist // 显示yum服务器上的所有可用软件组。
-
yum groupinfo GNOME // 显示某个软件组的信息。
-
yum groupinstall GNOME // 安装软件组。
-
-
RPM和YUM
最新推荐文章于 2020-10-17 08:48:40 发布