网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
Yum工作原理
YUM正常运行,需要依赖两个部分,一是YUM源端,二是YUM客户端,也即用户使用端。
YUM客户端安装的所有RPM包都是来自YUM服务端,YUM源端通过HTTP或者FTP服务器发布。而YUM客户端能够
从YUM源端下载依赖的RPM包是由于在YUM源端生成了RPM包的基准信息,包括RPM包版本号、配置文件、二进
制信息、依赖关系等。
[root@localhost yum.repos.d]# cat centos.repo
[centos] Yum软件仓库唯一标识符,避免与其他仓库冲突。
name=centos Yum软件仓库的名称描述,易于识别仓库用处。
baseurl=file:///mnt 提供的方式包括FTP(ftp://..)、HTTP(http://..)、本地(file:///..)。
gpgcheck=0 设置此源是否校验文件;1为校验,0为不校验。
enabled=1 设置此源是否可用;1为可用,0为禁用。
YUM 命令工具的参数详解及实战步骤:
yum install httpd 安装 httpd 软件包;
yum search YUM 搜索软件包;
yum list httpd 显示指定程序包安装情况 httpd;
yum list 显示所有已安装及可安装的软件包;
yum remove httpd 删除程序包 httpd;
yum erase httpd 删除程序包 httpd;
yum update 内核升级或者软件更新;
yum update httpd 更新 httpd 软件;
yum check-update 检查可更新的程序;
yum info httpd 显示安装包信息 httpd;
yum provides 列出软件包提供哪些文件;
yum provides "\*/rz" 列出 rz 命令由哪个软件包提供;
yum grouplist 查询可以用 groupinstall 安装的组
名称;
yum groupinstall "Chinese Support" 安装中文支持;
yum groupremove "Chinese Support" 删除程序组 Chinese Support;
yum deplist httpd 查看程序 httpd 依赖情况;
yum clean packages 清除缓存目录下的软件包;
yum clean headers 清除缓存目录下的 headers;
yum clean all 清 除 缓 存 目 录 下 的 软 件 包 及 旧 的
headers。
yum grouplist,检查 groupinstall 的软件组名
yum groupinstall "GNOME Desktop" -y 安装 Linux 图像界面,
yum provides rz 或者 yum provides "\*/rz",查找 rz 命令的提供者
阿里云网络源配置流程
1、备份
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
2、下载新的CentOS-Base.repo 到/etc/yum.repos.d/
CentOS 5
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-5.repo
或者
curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-5.repo
自建阿里云网络源
CentOS 6
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-6.repo
或者
curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-6.repo
CentOS 7
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
或者
curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
3、之后运行yum makecache生成缓存
自建阿里云网络源
1.配置一个web网站,使用nginx web服务器进行发布
出错提示:
[root@localhost yum.repos.d]# yum install nginx -y
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
* base: mirrors.aliyun.com
* extras: mirrors.aliyun.com
* updates: mirrors.aliyun.com
No package nginx available.
Error: Nothing to do
--------------------------------------
解决方法:没有对应的软件包,可以配置一个扩展源,命令如下:
方法1
yum install epel* -y
-----------------
方法2
配置1个nginx yum 源文件
vim install_nginx.repo
[nginx-stable]
name=nginx stable repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=1
enabled=1
gpgkey=https://nginx.org/keys/nginx_signing.key
[nginx-mainline]
name=nginx mainline repo
baseurl=http://nginx.org/packages/mainline/centos/$releasever/$basearch/
gpgcheck=1
enabled=0
gpgkey=https://nginx.org/keys/nginx_signing.key
下载成功
https://blog.csdn.net/qq_37898024/article/details/112605610
更改显示页面
将路径改为项目路径。
vi nginx.conf
/usr/share/nginx/html/index.html
YUM 优先级配置实战
基于 YUM 安装软件时,通常会配置多个 Repo 源,而 Fastest mirror 插件是为拥有
多个镜像的软件库配置文件而设计的。它会连接到每一个镜像,计算连接所需的时间,
然后将镜像按快到慢排序供 YUM 应用。
默认 CentOS Linux 系统,Fastestmirror 插件是开启的,所以安装软件会从最快的
镜像源安装,但是由于 Repo 源很多,而在这些源中都存在某些软件包,但有些软件有重
复,甚至冲突,能否可以优先从一些 Repo 源中去查找,如果找不到,再去其他源中找呢?
可以使用 YUM 优先级插件解决该问题,YUM 提供的插件 yum-plugin-priorities,
直接 YUM 安装即可,命令如下
yum install -y yum-plugin-priorities
修改 YUM 源优先级配置文件,设置为 Enabled,开启优先级插件,1 为开启,0 为禁止;
vim /etc/yum/pluginconf.d/priorities.conf
enabled = 1
vim 修改/etc/yum.repos./xx.repo 文件,在 base 段中加入如下指令:(优先级为 1 表
示优先被查找,越大其反而被后续查找)
priority=1
基于 YUM 安装 ntpdate 软件,测试已经优先从 163 源中查找;
基于 ISO 镜像构建 YUM 本地源
通常而言,YUM 客户端使用前提是必须联外网,YUM 安装软件时,检查 repo 配
置文件查找相应的 YUM 源仓库,企业 IDC 机房很多服务器为了安全起见,是禁止服务
器上外网的,所以不能使用默认的官方 YUM 源仓库。
构建本地 YUM 光盘源,其原理是通过查找光盘中的软件包,实现 YUM 安装,配置
步骤如下:
(1) 将 CentOS-7-x86_64-DVD-1511.iso 镜像加载至虚拟机 CD/DVD 或者放入服
务器 CD/DVD 光驱中,并将镜像文件挂载至服务器/mnt 目录,如图 6-14 所示,
挂载命令:
mount /dev/cdrom /mnt/
配置光盘直接挂载到nginx 发布目录
mount /dev/cdrom /usr/share/nginx/html
vim /etc/nginx/conf.d/default.conf
增加以下参数
autoindex on; #显示目录
autoindex_exact_size on; #显示文件大小
autoindex_localtime on; #显示时间
重启nginx
(2) 备份/etc/yum.repos.d/CentOS-Base.repo 文件为 CentOS-Base.repo.bak,
同时在/etc/yum.repos.d 目录下创建 media.repo 文件,并写入如下内容
[yum]
name=CentOS7
baseurl=file:///mnt
enabled=1
gpgcheck=1
gpgkey=file:///mnt/RPM-GPG-KEY-CentOS-7
Media.repo 配置文件详解:
name=CentOS7 YUM 源显示名称;
baseurl=file:///mnt ISO 镜像挂载目录;
gpgcheck=1 是否检查 GPG-KEY;
enabled=1 是否启用 YUM 源;
gpgkey=file:///mnt/RPM-GPG-KEY-CentOS-7 指定载目录下的 GPG-KEY 文件
验证。
(3) 运行命令 yum clean all 清空 YUM Cache,执行 yum install screen –y 安装
screen 软件如图 6-15 所示:
(4) 至此 YUM 光盘源构建完毕,在使用 YUM 源时,会遇到部分软件无法安装,原
因是因为光盘中软件包不完整导致,同时光盘源只能本机使用,其他局域网服务器
无法使用。
基于 HTTP 构建 YUM 网络源
YUM 光盘源默认只能本机使用,局域网其他服务器无法使用 YUM 光盘源,如果想
使用的话,需要在每台服务器上构建 YUM 本地源,该方案在企业中不可取,所以需要构
建 HTTP 局域网 YUM 源解决,可以通过 CreateRepo 创建本地 YUM 源端,repo 即为
Repository。
构建 HTTP 局域网 YUM 源方法及步骤如下:
(1) 挂载光盘镜像文件至/mnt
mount /dev/cdrom /mnt/
(2) 拷贝/mnt/Packages 目录下所有软件包至/var/www/html/centos/
mkdir -p /var/www/html/centos/
cp -R /mnt/Packages/\* /var/www/html/centos/
(3) 使用 Createrepo 创建本地源,执行如下命令会在 Centos 目录生成 repodata
目录,目录内容如图 6-16 所示:
yum install createrepo\* -y
cd /var/www/html
createrepo centos/
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
o centos/
[外链图片转存中...(img-TJnvQ7Nm-1715893146537)]
[外链图片转存中...(img-BCRxD39s-1715893146538)]
**网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。**
**[需要这份系统化的资料的朋友,可以戳这里获取](https://bbs.csdn.net/topics/618631832)**
**一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!**