【rpm】
增,删,改,查 --->安装,卸载,升级,查询
【安装】
rpm -i example.rpm 安装 example.rpm 包;
rpm -iv example.rpm 安装 example.rpm 包 并在安装过程中显示正在安装的文件信息;
rpm -ivh example.rpm 安装 example.rpm 包 并在安装过程中显示正在安装的文件信息 及安装进度;
【卸载】
rpm -e tomcat4 卸载 tomcat4 软件包
rpm -evh example 卸载example软件包并在卸载过程中显示卸载的文件信息及卸载进度;
【升级】
rpm -U example.rpm包
rpm -Uvh example.rpm 升级example.rpm软件包并在升级过程中显示升级的文件信息及升级进度;
【查询】
Query/Verify package selection options:
-a, --all query/verify all packages
-f, --file query/verify package(s) owning file
-g, --group query/verify package(s) in group
-p, --package query/verify a package file
--pkgid query/verify package(s) with package identifier
--hdrid query/verify package(s) with header identifier
--triggeredby query the package(s) triggered by the package
--whatrequires query/verify the package(s) which require a dependency
--whatprovides query/verify the package(s) which provide a dependency
--nomanifest do not process non-package files as manifests
Query options (with -q or --query):
-c, --configfiles list all configuration files
-d, --docfiles list all documentation files
-L, --licensefiles list all license files
--dump dump basic file information
-l, --list list files in package
--queryformat=QUERYFORMAT use the following query format
-s, --state display the states of the listed files
------------------常见组合----
rpm -ql <rpmname>
rpm -qc <rpmname>
rpm -qf <filename>
rpm -qa | grep <string>
[root@mini01 bin]# rpm -ql httpd #查询httpd包相关的所有文件以及文件夹
/etc/httpd
/etc/httpd/conf
/etc/httpd/conf.d
/etc/httpd/conf.d/README
...
[root@mini01 bin]# rpm -qc httpd #查询httpd包相关的配置文件
/etc/httpd/conf.d/autoindex.conf
/etc/httpd/conf.d/userdir.conf
...
[root@mini01 bin]# rpm -qf java #查询包含Java这个文件的包
java-1.8.0-openjdk-headless-1.8.0.181-7.b13.el7.x86_64
[root@mini01 bin]# rpm -qa #查询已安装的所有rpm包
yum-plugin-fastestmirror-1.1.31-50.el7.noarch
grub2-common-2.02-0.76.el7.centos.noarch
linux-firmware-20180911-69.git85c5d90.el7.noarch
...
【yum】
类比于Java中的maven,rpm包的远程仓库
【常用命令】
yum repolist #查看仓库信息
yum clean all #清楚缓存
yum makecache #缓存
yum search <string> #关键字查询远程仓库中rpm包
yum install <rpmname> #安装rpm包
【yum配置文件】
yum 的配置文件分为两部分:main 和repository
-------main 部分定义了全局配置选项,整个yum 配置文件只有一个main。常位于/etc/yum.conf 中。
-------repository 部分定义了每个源/服务器的具体配置,可以有一到多个。常位于/etc/yum.repo.d 目录下的各文件中
cat /etc/yum.conf
[main]
cachedir=/var/cache/yum
//yum 缓存的目录,yum 在此存储下载的rpm 包和数据库,默认设置为/var/cache/yum
keepcache=0
//安装完成后是否保留软件包,0为不保留(默认为0),1为保留
debuglevel=2
//Debug 信息输出等级,范围为0-10,缺省为2
logfile=/var/log/yum.log
//yum 日志文件位置。用户可以到/var/log/yum.log 文件去查询过去所做的更新。
pkgpolicy=newest
//包的策略。一共有两个选项,newest 和last,
//这个作用是如果你设置了多个repository,而同一软件在不同的repository 中同时存在,yum 应该安装哪一个,
//如果是newest,则yum 会安装最新的那个版本。
//如果是last,则yum 会将服务器id 以字母表排序,并选择最后的那个服务器上的软件安装。一般都是选newest。
distroverpkg=redhat-release
//指定一个软件包,yum 会根据这个包判断你的发行版本,默认是redhat-release,也可以是安装的任何针对自己发行版的rpm 包。
tolerant=1
//有1和0两个选项,表示yum 是否容忍命令行发生与软件包有关的错误,
//比如你要安装1,2,3三个包,而其中3此前已经安装了,如果你设为1,则yum 不会出现错误信息。默认是0。
exactarch=1
//有1和0两个选项,设置为1,则yum 只会安装和系统架构匹配的软件包,
//例如,yum 不会将i686的软件包安装在适合i386的系统中。默认为1。
retries=6
//网络连接发生错误后的重试次数,如果设为0,则会无限重试。默认值为6.
obsoletes=1
//这是一个update 的参数,具体请参阅yum(8),简单的说就是相当于upgrade,允许更新陈旧的RPM包。
plugins=1
//是否启用插件,默认1为允许,0表示不允许。我们一般会用yum-fastestmirror这个插件。
bugtracker_url=http://bugs.centos.org/set_project.php?project_id=16&ref=http://bugs.centos.org/bug_report_page.php?category=yum
metadata_expire=1h
installonly_limit = 5
exclude=selinux*
// 排除某些软件在升级名单之外,可以用通配符,列表中各个项目要用空格隔开,这个对于安装了诸如美化包,中文补丁的朋友特别有用。
gpgcheck=1
// 有1和0两个选择,分别代表是否是否进行gpg(GNU Private Guard) 校验,以确定rpm 包的来源是有效和安全的。
//这个选项如果设置在[main]部分,则对每个repository 都有效。默认值为0。
CentOS 配置本地yum源
就两个步骤:
1,挂载 (名字很好记,就是装系统时用到的cd/dvd/ios文件,所以呢,文件就是在/dev/cdrom下)
mkdir /mnt/cdrom
mount /dev/cdrom /mnt/cdrom
2,配置yum镜像
vim /etc/yum.repos.d/CentOS-Media.repo
修改如下图所示的位置:
3, yum clean all
yum makecache
yum repolist
CentOS yum 源的配置与使用
【零散补充】
mirrorlist指向的就是一堆baseurl(Specifies a URL to a file containing a list of baseurls. )
本地yum源配置是这个错误
解决方式:把这个点亮