RPM
rpm全名是[redhat package manager],缩写则为rpm。它的最大特点就是将你要安装的软件先编译过,并且打包成为RPM机制的文件,通过打包好的软件里面默认的数据库,记录这个软件要安装的时候必须具备的依赖属性软件。
-
特点:
- 由于已经编译完成并且打包完毕,所以软件传输与安装上很方便(不需要再重新编译);
- 由于软件的信息都已经记录在Linux主机的数据上,很方便查询、升级与反安装;
- 软件安装的环境必须与打包时的环境需求一致或相当;
- 需要满足软件的依赖属性需求;
- 反安装时需要特别小心,最底层的软件不可先删除,否则可能造成整个系统的问题;
格式:
rpm [--setgids] [package]+
安装:
-i:install安装的意思;
-v:查看详细的安装信息;
-h:显示安装进度;
--nodeps:强制安装,而不考虑软件的属性依赖;
--replacefiles:将已经存在的文件进行覆盖安装;
--replacepkgs:重新安装某个已经安装过的软件;
--force:强制性;
--test:测试是否可以被安装到当前环境而不真的进行安装;
--nosignature:跳过签名验证;
--prefix:将软件安装到指定的目录下,后面跟路径名;
--noscripts:不想让该软件在安装过程中自行执行某些系统命令,例如初始化设置;升级:
-Uvh:后面接的软件即使没有安装过,则系统将予以直接安装;若后面接的软件有安装过旧版,则系统自动更新至新版;
-Fvh:如果后面阶段软件并未安装到系统上,则该软件不会被安装;即只有已经安装在系统上的软件才会被升级;查询:
-q:仅查询,后面接的软件名称是否有安装;
-qa:列出已经安装的所有软件名称;
-qi:列出软件的详细信息(information),包含开发商,版本与说明等;
-ql:列出该软件所有的文件与目录所在的完整文件名(list);
-qc:列出该软件的所有配置文件(找出在/etc/下面的文件名而已);
-qd:列出该软件的所有说明文件(找出与man有关的文件而已);
-qR:列出与该软件有关的依赖软件所含的文件;
-qf:由后面接的文件名,找出该文件属于哪一个已安装的软件;
-q --scripts:列出是否含有安装后需要执行的脚本文件;
-qp[icdlR]:后面接的所有参数与上面的说明一致,但用途仅在于找出某个RPM文件内的信息,而非已经安装的软件信息,这点需要特别注意;验证:
-V:后面跟软件名,若该软件所含的文件被修改过才会显示;
-Va:列出目前系统上面所有可能被修改过的文;
-Vp:后面跟文件名,列出该软件内可能被修改过的文件;
-Vf:显示某个文件是否被修改过;反安装:
-e:卸载删除;
YUM
yum是通过分析rpm的标头数据后,根据各软件的相关性制作出属性依赖时的解决方案,然后可以自动处理软件的依赖属性问题,以解决软件安装或删除与升级的问题。
安装与升级:
yum [option] [安装与升级的工作选项] [相关参数]
install:后面接要安装的软件;
update:后面接要升级的软件,若要整个系统都升级,就直接update即可;查询:
yum [option] [查询工作选项] [相关参数]
[option]:主要的选项包括有:
-y:当yum要等待使用者输入时,这个选项可以自动提供yes的回应;
--installroot=/some/path:将该软件安装在/some/path而不使用默认路径;
[查询工作选项] [相关参数]:
search:查找某个软件名称或是描述(description)的重要关键字;
list:列出目前yum所管理的所有的软件与版本,有点类似 rpm -qa;
info:同上,不过有点类似 rpm -qai的执行结果;
provides:从文件去查找软件,类似 rpm -qf的功能;-
yum的配置文件:
- 主配置文件:/etc/yum.conf
- 仓库配置文件:/etc/yum.repos.d/*.repo
-
配置文件格式:
[base] #代表软件源的名字,中括号一定要存在,里面的名称则可以随意取,但不能有两个相同的软件源名称; name=base #只是说明已学这个软件源的意义而已,重要性不高; baseurl=http://mirrors.ustc.edu.cn/centos/$releasever/os/$basearch #后面接的就是软件源的实际地址; enable=1 #是否启用此仓库,1为启用,0则是不启用; gpgcheck=0 #查看rpm文件的数字签名,1为启用,0则不启用; gpgkey=http://mirrors.ustc.edu.cn/centos/RPM-GPG-KEY-CentOS-$releasever #后面接数字签名的公钥文件所在位置,使用默认值即可;
注意:找到好用的镜像站点,并写入配置文件。镜像站点的地址一定是包含repodata目录存在的路径,该地址就是软件源地址。