搭建内网yum仓库

news/2024/9/20 16:50:56/文章来源:https://www.cnblogs.com/daofaziran/p/18402726

1.架构图

2.环境准备

复制一个虚拟机,修改MAC地址,ip,主机名等

[root@kylin-10-sp3 ~]# hostnamectl set-hostname kylin-sp3-cllient
[root@kylin-10-sp3 ~]# 
[root@kylin-sp3-cllient ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens33 
[root@kylin-sp3-cllient ~]#
角色 主机名** ip****地址**
yum源服务器(私有仓库服务器) Kylin-V10-sp 10.0.0.36
内网机器 kylin-sp3-cllient 10.0.0.41

3.详细搭建流程

4. yum私有仓库服务器

4.1 下载各种软件并保存到/app/yum/目录

# 开启yum命令缓存功能
[root@Kylin-V10-sp3 ~]# vim /etc/yum.conf
[main]
gpgcheck=1
installonly_limit=3
clean_requirements_on_remove=True
best=True
skip_if_unavailable=False
# 新增下面两行
keepcache=1
cachedir=/var/cache/yum/# 各种下载软件包 (未来需要准备好所有的软件包)
[root@Kylin-V10-sp3 /var/cache]# mkdir -p /app/yum/
[root@Kylin-V10-sp3 /var/cache]#
[root@Kylin-V10-sp3 /var/cache]# yum reinstall -y tree vim lrzsz nmap nc telnet
已重装:lrzsz-0.12.20-46.ky10.x86_64    nmap-2:7.92-1.p01.ky10.x86_64    telnet-1:0.17-77.ky10.x86_64    tree-1.8.0-2.ky10.x86_64    vim-enhanced-2:9.0-19.p03.ky10.x86_64   完毕!
[root@Kylin-V10-sp3 /var/cache]## 复制到/app/yum/目录  find /var/cache/yum/ -name "*.rpm" |xargs cp -t /app/yum/
[root@Kylin-V10-sp3 /var/cache]# find /var/cache/yum -type f *.rpm
find: paths must precede expression: `*.rpm'
[root@Kylin-V10-sp3 /var/cache]# 
[root@Kylin-V10-sp3 /var/cache]# find /var/cache/yum -type f -name *.rpm
/var/cache/yum/ks10-adv-os-f52f2e63634844ad/packages/lrzsz-0.12.20-46.ky10.x86_64.rpm
/var/cache/yum/ks10-adv-os-f52f2e63634844ad/packages/nmap-7.92-1.p01.ky10.x86_64.rpm
/var/cache/yum/ks10-adv-os-f52f2e63634844ad/packages/tree-1.8.0-2.ky10.x86_64.rpm
/var/cache/yum/ks10-adv-updates-7a569415ba681cab/packages/telnet-0.17-77.ky10.x86_64.rpm
/var/cache/yum/ks10-adv-updates-7a569415ba681cab/packages/vim-enhanced-9.0-19.p03.ky10.x86_64.rpm
[root@Kylin-V10-sp3 /var/cache]# 
[root@Kylin-V10-sp3 /var/cache]# 
[root@Kylin-V10-sp3 /var/cache]# cp `find /var/cache/yum/ -type f -name "*.rpm"` /app/yum/
[root@Kylin-V10-sp3 /var/cache]# 
[root@Kylin-V10-sp3 /var/cache]# ll /app/yum/
总用量 7832
-rw-r--r-- 1 root root   83736  9月  8 01:05 lrzsz-0.12.20-46.ky10.x86_64.rpm
-rw-r--r-- 1 root root 6146064  9月  8 01:05 nmap-7.92-1.p01.ky10.x86_64.rpm
-rw-r--r-- 1 root root   64340  9月  8 01:05 telnet-0.17-77.ky10.x86_64.rpm
-rw-r--r-- 1 root root   52192  9月  8 01:05 tree-1.8.0-2.ky10.x86_64.rpm
-rw-r--r-- 1 root root 1664616  9月  8 01:05 vim-enhanced-9.0-19.p03.ky10.x86_64.rpm
[root@Kylin-V10-sp3 /var/cache]#

4.2 通过createrepo命令创建yum仓库的元数据

元数据:属性信息,yum仓库的元数据(仓库软件包列表,名字)

[root@Kylin-V10-sp3 /var/cache]# yum install -y createrepo
已安装:createrepo_c-0.16.0-3.p01.ky10.x86_64                                                      drpm-0.5.0-1.ky10.x86_64                                                     完毕!
[root@Kylin-V10-sp3 /var/cache]# 
[root@Kylin-V10-sp3 /var/cache]# createrepo /app/yum/
Directory walk started
Directory walk done - 5 packages
Temporary output repo path: /app/yum/.repodata/
Preparing sqlite DBs
Pool started (with 5 workers)
Pool finished
[root@Kylin-V10-sp3 /var/cache]# 
[root@Kylin-V10-sp3 /var/cache]# 
[root@Kylin-V10-sp3 /var/cache]# ll /app/yum/
总用量 7836
-rw-r--r-- 1 root root   83736  9月  8 01:05 lrzsz-0.12.20-46.ky10.x86_64.rpm
-rw-r--r-- 1 root root 6146064  9月  8 01:05 nmap-7.92-1.p01.ky10.x86_64.rpm
drwxr-xr-x 2 root root    4096  9月  8 01:06 repodata
-rw-r--r-- 1 root root   64340  9月  8 01:05 telnet-0.17-77.ky10.x86_64.rpm
-rw-r--r-- 1 root root   52192  9月  8 01:05 tree-1.8.0-2.ky10.x86_64.rpm
-rw-r--r-- 1 root root 1664616  9月  8 01:05 vim-enhanced-9.0-19.p03.ky10.x86_64.rpm
[root@Kylin-V10-sp3 /var/cache]# 

4.3 启动nginx配置ngx访问/app/yum/

4.3.1 安装启动nginx

点击查看代码
# 查看是否安装nginx
[root@Kylin-V10-sp3 /var/cache]# rpm -qa |grep nginx
[root@Kylin-V10-sp3 /var/cache]# 
[root@Kylin-V10-sp3 /var/cache]# rpm -ql nginx
未安装软件包 nginx 
[root@Kylin-V10-sp3 /var/cache]#
[root@Kylin-V10-sp3 /var/cache]# cd 
[root@Kylin-V10-sp3 ~]# 
# 安装nginx
[root@Kylin-V10-sp3 ~]# yum install -y nginx
已安装:gperftools-libs-2.8-1.ky10.x86_64                  libunwind-1.3.1-3.ky10.x86_64                             nginx-1:1.21.5-2.p02.ky10.x86_64                          nginx-all-modules-1:1.21.5-2.p02.ky10.noarch       nginx-filesystem-1:1.21.5-2.p02.ky10.noarch               nginx-mod-http-image-filter-1:1.21.5-2.p02.ky10.x86_64    nginx-mod-http-perl-1:1.21.5-2.p02.ky10.x86_64     nginx-mod-http-xslt-filter-1:1.21.5-2.p02.ky10.x86_64     nginx-mod-mail-1:1.21.5-2.p02.ky10.x86_64                 nginx-mod-stream-1:1.21.5-2.p02.ky10.x86_64       完毕!
[root@Kylin-V10-sp3 ~]# 
[root@Kylin-V10-sp3 ~]# rpm -qa |grep nginx
nginx-all-modules-1.21.5-2.p02.ky10.noarch
nginx-mod-http-xslt-filter-1.21.5-2.p02.ky10.x86_64
nginx-mod-stream-1.21.5-2.p02.ky10.x86_64
nginx-filesystem-1.21.5-2.p02.ky10.noarch
nginx-mod-http-perl-1.21.5-2.p02.ky10.x86_64
nginx-1.21.5-2.p02.ky10.x86_64
nginx-mod-http-image-filter-1.21.5-2.p02.ky10.x86_64
nginx-mod-mail-1.21.5-2.p02.ky10.x86_64
[root@Kylin-V10-sp3 ~]# 
# 关闭防火墙
[root@Kylin-V10-sp3 ~]# systemctl stop firewalld
[root@Kylin-V10-sp3 ~]# 
[root@Kylin-V10-sp3 ~]# systemctl status firewalld
● firewalld.service - firewalld - dynamic firewall daemonLoaded: loaded (/usr/lib/systemd/system/firewalld.service; enabled; vendor preset: enabled)Active: inactive (dead) since Sun 2024-09-08 01:18:25 -03; 3s agoDocs: man:firewalld(1)Process: 837 ExecStart=/usr/sbin/firewalld --nofork --nopid $FIREWALLD_ARGS (code=exited, status=0/SUCCESS)Main PID: 837 (code=exited, status=0/SUCCESS)8月 22 20:57:57 Kylin-V10-sp3 systemd[1]: Starting firewalld - dynamic firewall daemon...
8月 22 20:57:58 Kylin-V10-sp3 systemd[1]: Started firewalld - dynamic firewall daemon.
9月 08 01:18:25 Kylin-V10-sp3 systemd[1]: Stopping firewalld - dynamic firewall daemon...
9月 08 01:18:25 Kylin-V10-sp3 systemd[1]: firewalld.service: Succeeded.
9月 08 01:18:25 Kylin-V10-sp3 systemd[1]: Stopped firewalld - dynamic firewall daemon.
[root@Kylin-V10-sp3 ~]# 
# 检查80端口
[root@Kylin-V10-sp3 ~]# ss -lntup 
Netid         State          Recv-Q         Send-Q                 Local Address:Port                  Peer Address:Port         Process                                   
udp           UNCONN         0              0                          127.0.0.1:323                        0.0.0.0:*             users:(("chronyd",pid=741,fd=6))         
udp           UNCONN         0              0                              [::1]:323                           [::]:*             users:(("chronyd",pid=741,fd=7))         
tcp           LISTEN         0              128                          0.0.0.0:22                         0.0.0.0:*             users:(("sshd",pid=854,fd=5))            
tcp           LISTEN         0              128                             [::]:22                            [::]:*             users:(("sshd",pid=854,fd=6))            
[root@Kylin-V10-sp3 ~]# 
# 检查nginx进程
[root@Kylin-V10-sp3 ~]# ps -ef | grep nginx
root        2312    1315  0 01:20 pts/0    00:00:00 grep nginx
[root@Kylin-V10-sp3 ~]# 
# 启动nginx
[root@Kylin-V10-sp3 ~]# systemctl start nginx
[root@Kylin-V10-sp3 ~]# 
[root@Kylin-V10-sp3 ~]# systemctl status nginx
● nginx.service - The nginx HTTP and reverse proxy serverLoaded: loaded (/usr/lib/systemd/system/nginx.service; disabled; vendor preset: disabled)Active: active (running) since Sun 2024-09-08 01:21:16 -03; 6s agoProcess: 2318 ExecStartPre=/usr/bin/rm -f /run/nginx.pid (code=exited, status=0/SUCCESS)Process: 2319 ExecStartPre=/usr/sbin/nginx -t (code=exited, status=0/SUCCESS)Process: 2321 ExecStart=/usr/sbin/nginx (code=exited, status=0/SUCCESS)Main PID: 2323 (nginx)Tasks: 2Memory: 9.2MCGroup: /system.slice/nginx.service├─2323 nginx: master process /usr/sbin/nginx└─2324 nginx: worker process9月 08 01:21:16 Kylin-V10-sp3 systemd[1]: Starting The nginx HTTP and reverse proxy server...
9月 08 01:21:16 Kylin-V10-sp3 nginx[2319]: nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
9月 08 01:21:16 Kylin-V10-sp3 nginx[2319]: nginx: configuration file /etc/nginx/nginx.conf test is successful
9月 08 01:21:16 Kylin-V10-sp3 systemd[1]: Started The nginx HTTP and reverse proxy server.
[root@Kylin-V10-sp3 ~]# 

4.3.2 检查

4.3.3 修改配置文件

找到/etc/nginx/nginx.conf server部分,修改root和增加autoindex
root /app/yum/;
autoindex on;[root@Kylin-V10-sp3 ~]# cp /etc/nginx/nginx.conf /etc/nginx/nginx.conf_bak
[root@Kylin-V10-sp3 ~]# 
[root@Kylin-V10-sp3 ~]# vim /etc/nginx/nginx.confserver {listen       80;listen       [::]:80;server_name  _;#root         /usr/share/nginx/html;root         /app/yum;autoindex on;# Load configuration files for the default server block.include /etc/nginx/default.d/*.conf;
# 测试检查语法
[root@Kylin-V10-sp3 ~]# nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
[root@Kylin-V10-sp3 ~]# 
[root@Kylin-V10-sp3 ~]# systemctl restart nginx
[root@Kylin-V10-sp3 ~]# 

4.3.4 访问与测试

成功提示: 显示/app/yum/内容

5.yum仓库的客户端

5.1 注释现有的配置

[root@kylin-sp3-cllient ~]# cd /etc/yum.repos.d/
[root@kylin-sp3-cllient /etc/yum.repos.d]# 
[root@kylin-sp3-cllient /etc/yum.repos.d]# ll
总用量 8
-rw-r--r-- 1 root root 664  8月  4  2022 epel.repo
-rw-r--r-- 1 root root 701  9月  8  2022 kylin_x86_64.repo
[root@kylin-sp3-cllient /etc/yum.repos.d]#  
[root@kylin-sp3-cllient /etc/yum.repos.d]# gzip *
[root@kylin-sp3-cllient /etc/yum.repos.d]# 
[root@kylin-sp3-cllient /etc/yum.repos.d]# ll
总用量 8
-rw-r--r-- 1 root root 254  8月  4  2022 epel.repo.gz
-rw-r--r-- 1 root root 266  9月  8  2022 kylin_x86_64.repo.gz
[root@kylin-sp3-cllient /etc/yum.repos.d]#

5.2 书写yum仓库配置文件连接内网私有仓库

# 新增yumlocal.repo文件,内容如下
[root@kylin-sp3-cllient /etc/yum.repos.d]# vim yumlocal.repo
[yumlocal]
name=yum local repo
#baseurl地址打开后要能看到repodata目录
#务必浏览器测试后再写入
baseurl=http://10.0.0.36:80/
enabled=1
gpgcheck=0
[root@kylin-sp3-cllient /etc/yum.repos.d]# 
[root@kylin-sp3-cllient /etc/yum.repos.d]# yum clean all
21 文件已删除
# 看到仓库标识为yumlocal,说明是从本地下载的
[root@kylin-sp3-cllient /etc/yum.repos.d]# yum repolist
仓库标识                                                                           仓库名称
yumlocal                                                                           yum local repo
[root@kylin-sp3-cllient /etc/yum.repos.d]# 

5.3 检查与测试

点击查看代码
[root@kylin-sp3-cllient /etc/yum.repos.d]# ping qq.com
ping: qq.com: 未知的名称或服务
[root@kylin-sp3-cllient /etc/yum.repos.d]# 
[root@kylin-sp3-cllient /etc/yum.repos.d]# 
[root@kylin-sp3-cllient /etc/yum.repos.d]# yum reinstall tree -y
yum local repo                                                                                                                             1.6 MB/s | 8.8 kB     00:00    
依赖关系解决。
===========================================================================================================================================================================Package                              Architecture                           Version                                        Repository                                Size
===========================================================================================================================================================================
重新安装:tree                                 x86_64                                 1.8.0-2.ky10                                   yumlocal                                  51 k事务概要
===========================================================================================================================================================================总下载:51 k
安装大小:115 k
下载软件包:
tree-1.8.0-2.ky10.x86_64.rpm                                                                                                                40 MB/s |  51 kB     00:00    
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------
总计                                                                                                                                       5.0 MB/s |  51 kB     00:00     
运行事务检查
事务检查成功。
运行事务测试
事务测试成功。
运行事务准备中  :                                                                                                                                                            1/1 重新安装: tree-1.8.0-2.ky10.x86_64                                                                                                                                   1/2 清理    : tree-1.8.0-2.ky10.x86_64                                                                                                                                   2/2 验证    : tree-1.8.0-2.ky10.x86_64                                                                                                                                   1/2 验证    : tree-1.8.0-2.ky10.x86_64                                                                                                                                   2/2 已重装:tree-1.8.0-2.ky10.x86_64                                                                                                                                                 完毕!
[root@kylin-sp3-cllient /etc/yum.repos.d]# 
[root@kylin-sp3-cllient /etc/yum.repos.d]# tree -L 2 /etc/ 
/etc/
├── abrt
│   ├── abrt-action-save-package-data.conf
│   ├── abrt.conf
│   ├── gpg_keys.conf
│   └── plugins

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/793987.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

VS Code 快速输入代码

VS Code 快速输入代码: HTML 代码只输入 ! ,按Enter,这将自动生成一个基本的HTML骨架代码,例如: 快速输入特定的HTML标签,可以使用Emmet插件,它是VS Code的一个扩展,可以通过简短的指令生成复杂的HTML结构。 输入div,按Enter输入div*4,按Enter 例如,输入 ul>li…

微信小程序开发系列4----页面配置--WXML列表渲染

小程序布局-WXML列表渲染 源码获取方式(免费):(1)登录-注册:http://resources.kittytiger.cn/(2)签到获取积分(3)搜索:微信小程序开发2-wxmllist列表渲染

微信小程序开发系列3----页面配置--WXML数据绑定+条件渲染

1小程序布局-WXML数据绑定 有的时候发现需要刷新一下全局的app.js才能有效果。。。。。 2小程序布局-WXML条件渲染 下图会报错:不能在if else 中间插入其他的标签 如下展示一次渲染多个标签使用block 源码获取方式(免费):(1)登录-注册:http://resources.kittytiger.c…

[C++ Daily] 虚表与虚指针的理解

虚表与虚指针的理解结果:

微信小程序开发系列1----账号注册、开发工具下载、小程序代码结构

一、注册小程序账号 url:https://mp.weixin.qq.com/cgi-bin/wx?lang=zh_CN&token= 注册后获取 AppID(小程序ID) 和 AppSecret(小程序密钥)二、微信小程序工具下载 https://developers.weixin.qq.com/miniprogram/dev/devtools/download.html官网文档:https://developers…

可测试,可维护,可移植:上位机软件分层设计的重要性

从三个方面论述了上位机软件分层设计的必要。互联网中,软件工程师岗位会分前端工程师,后端工程师。这是由于互联网软件规模庞大,从业人员众多。前后端分别根据各自需求发展不一样的技术栈。那么上位机软件呢?它规模小,通常一个人就能开发一个项目。它还有必要分前后端吗?…

【漏洞分享】2018年-2024年HVV 6000+个漏洞 POC 合集分享

此份poc 集成了Zabbix、用友、通达、Wordpress、Thinkcmf、Weblogic、Tomcat等 下载链接: 链接: https://pan.quark.cn/s/1cd7d8607b8a看着就真的看着,不学就真的5

【工具推荐】FindEverything(最新版) - 内网渗透必备 敏感文件搜索工具

工具介绍 内网渗透过程中搜寻指定文件内容,从而找到突破口的一个小工具 下载链接: 链接: https://pan.quark.cn/s/067a43165790使用说明 python3 FindEverything.py -n .txt,.ini,.yaml,.php,.jsp,.java,.xml,.sql -c "password=" -d D:/ python3 FindEverything.p…

不可不知的WPF几何图形(Geometry)

在软件行业,经常会听到一句话“文不如表,表不如图”说明了图形在软件应用中的重要性。同样在WPF开发中,为了程序美观或者业务需要,经常会用到各种个样的图形。今天以一些简单的小例子,简述WPF开发中几何图形(Geometry)相关内容,仅供学习分享使用,如有不足之处,还请指…

[Spring]MyBatis的执行原理

MyBatis的执行原理详细介绍 为了使大家能够更加清晰的理解MyBatis程序,在正式讲解MyBatis入门案例之前,先来了解一下MyBatis程序的工作原理,如图1所示。 MyBatis的工作原理从图1可以看出,MyBatis框架在操作数据库时,大体经过了8个步骤。下面就对图1中的每一步流程进行详细…

逐月信息学——2024初秋集训——提高组 #22

A. 牛牛的方程式 题目描述 给定一个三元一次方程 \(ax+by+cz=d\),求该方程是否存在整数解。 思路 由于若干个 \(a,b,c\) 只能凑出 \(\gcd (a,b,c)\) 的倍数,所以只需判断 \(d\) 是否为 \(\gcd(a,b,c)\) 的倍数即可。特别的,若 \(a,b,c\) 均为 \(0\),则显然只有 \(d=0\) 时存…

在VScode-SSH中Rust工程不能代码间跳转的原因

今天正常使用VScode-SSH访问虚拟机,但是发现读代码的时候不能使用ctrl+左键的方式跳转,然后看到Rust-Analyzer(VScode的Rust语言插件)报错. 2024-09-08T02:25:28.998500Z ERROR failed to find any projects in [AbsPathBuf("/home/winddevil/App")] 2024-09-08T02:2…