服务器之家:专注于服务器技术及软件下载分享
分类导航

Linux|Centos|Ubuntu|系统进程|Fedora|注册表|Bios|Solaris|Windows7|Windows10|Windows11|windows server|

服务器之家 - 服务器系统 - Centos - CentOS 7搭建本地yum源和局域网yum源

CentOS 7搭建本地yum源和局域网yum源

2021-09-03 23:57运维小弟 Centos

CentOS(Community Enterprise Operating System,中文意思是社区企业操作系统)是Linux发行版之一,它是来自于Red Hat Enterprise Linux依照开放源代码规定释出的源代码所编译而成。

CentOS 7搭建本地yum源和局域网yum源

看到这个都是情非得已的,话不多说,直接卷

搭建本地yum源

本地yum源,就意味着只有搭建该yum源的这台服务器能使用,其它的服务器都不能使用该yum源。搭建本地yum源的所有步骤如下:

  1. #准备好一个centos 的镜像,我这里是CentOS-7-x86_64-DVD-1810.iso 
  2.  
  3.  
  4. # 在/local-yum目录创建挂载镜像的文件夹 
  5.  
  6.  
  7. # 将iso镜像挂载到/mnt/iso目录 
  8. mount -o loop CentOS-7-x86_64-DVD-1810.iso /local-yum 
  9.  
  10.  
  11. # 挂载成功后可以使用df -h命令查看 
  12. [root@localhost application]# df -h 
  13. Filesystem               Size  Used Avail Use% Mounted on 
  14. /dev/mapper/centos-root   50G  1.9G   49G   4% / 
  15. devtmpfs                  63G     0   63G   0% /dev 
  16. tmpfs                     63G     0   63G   0% /dev/shm 
  17. tmpfs                     63G   11M   63G   1% /run 
  18. tmpfs                     63G     0   63G   0% /sys/fs/cgroup 
  19. /dev/sda2               1014M  138M  877M  14% /boot 
  20. /dev/sda1                200M   12M  189M   6% /boot/efi 
  21. /dev/mapper/centos-home  392G  9.0G  383G   3% /home 
  22. tmpfs                     13G     0   13G   0% /run/user/0 
  23. /dev/loop0               4.5G  4.5G     0 100% /local-yum 
  24.  
  25.  
  26.  
  27.  
  28. # 修改yum配置文件,把原先的配置先备份了 
  29. cd /etc/yum.repos.d 
  30. mkdir bak 
  31. mv *.repo ./bak 
  32.  
  33. #新建local.repo 
  34. vim /etc/yum.repos.d/local.repo 
  35.  
  36. [base] 
  37. name=CentOS 
  38. baseurl=file:///local-yum 
  39. enabled=1 
  40. gpgcheck=0 
  41.  
  42.  
  43.  
  44. #清除下yum 原有的信息,载入新的缓存 
  45. yum clean all 
  46. yum makecache 
  47.  
  48. 这样,一个崭新的本地yum源就可以使用了。 

搭建局域网yum源

除了可以搭建本地yum源外,我们还可以基于HTTP方式配置yum源,这样我们就可以配置一个局域网内都可以使用的yum源。

一般都是通过apache 来搭建HTTP的yum源,本次我们使用Nginx搭建

  1. #官网下载nginx1.18.0 
  2. wget http://nginx.org/download/nginx-1.18.0.tar.gz 
  3.  
  4. #安装依赖包,NGINX是C语言写的,pcre-devel支持正则表达式,openssl 开启加密 
  5. [root@proxy ~]# yum -y install gcc pcre-devel openssl-devel    
  6.  
  7.  
  8. #创建NGINX用户,为了安全起见,不允许登录系统 
  9. [root@proxy ~]# useradd -s /sbin/nologin nginx   
  10.  
  11.  
  12. #解压,安装,这里把nginx 部署在/home/application/nginx 目录下 
  13. [root@proxy ~]# mkdir /home/application/nginx  
  14.  
  15. [root@proxy ~]# tar  -xf   nginx-1.18.0.tar.gz 
  16. [root@proxy ~]# cd  nginx-1.18.0 
  17. [root@proxy nginx-1.18.0]# ./configure --prefix=/home/application/nginx --user=nginx --group=nginx --with-http_ssl_module 
  18.  
  19. #编译安装 
  20. [root@proxy nginx-1.10.3]# make && make install 
  21.  
  22.  
  23. #创建yum仓库文件路径 /home/application/nginx-yum 
  24. [root@proxy ~]#mkdir -p /home/application/nginx-yum  
  25.  
  26. #编辑nginx 配置文件,定义端口为8899 
  27. [root@proxy ~]# vim /home/application/nginx/conf/nginx.conf 
  28.  
  29. worker_processes  1; 
  30.  
  31. events { 
  32.     worker_connections  1024; 
  33.  
  34. http { 
  35.     include       mime.types; 
  36.     default_type  application/octet-stream; 
  37.     sendfile        on
  38.     keepalive_timeout  65; 
  39.     server { 
  40.         listen       8899; 
  41.         server_name  localhost; 
  42.         location / { 
  43.             autoindex  on
  44.             root   /home/application/nginx-yum/; 
  45.         } 
  46.     } 
  47.  
  48.  
  49. #检查nginx 配置文件是否正确 
  50. [root@proxy ~]# /home/application/nginx/sbin/nginx -t 
  51. nginx: the configuration file /home/application/nginx/conf/nginx.conf syntax is ok 
  52. nginx: configuration file /home/application/nginx/conf/nginx.conf test is successful 
  53.  
  54. #将iso镜像文件挂载到临时目录下,再拷贝到yum仓库路径下 /home/application/nginx-yum 
  55. [root@proxy ~]# mkdir local-yum 
  56. [root@proxy ~]# mount -o loop CentOS-7-x86_64-DVD-1810.iso /local-yum 
  57. [root@proxy ~]# cd local-yum 
  58. [root@proxy ~]# cp -rp *  /home/application/nginx-yum/ 
  59. [root@proxy ~]# ls -l /home/application/nginx-yum/ 
  60. total 4669768 
  61. -rw-r--r--. 1 root root 4781506560 Aug 17 18:36 CentOS-7-x86_64-DVD-2003.iso 
  62. -rw-rw-r--. 1 root root         14 Apr 21  2020 CentOS_BuildTag 
  63. drwxr-xr-x. 3 root root         35 Apr 21  2020 EFI 
  64. -rw-rw-r--. 1 root root        227 Aug 30  2017 EULA 
  65. -rw-rw-r--. 1 root root      18009 Dec 10  2015 GPL 
  66. drwxr-xr-x. 3 root root         57 Apr 21  2020 images 
  67. drwxr-xr-x. 2 root root        198 Apr 21  2020 isolinux 
  68. drwxr-xr-x. 2 root root         43 Apr 21  2020 LiveOS 
  69. drwxr-xr-x. 2 root root     225280 Apr 22  2020 Packages 
  70. drwxrwxr-x. 2 root root       4096 Apr 22  2020 repodata 
  71. -rw-rw-r--. 1 root root       1690 Dec 10  2015 RPM-GPG-KEY-CentOS-7 
  72. -rw-rw-r--. 1 root root       1690 Dec 10  2015 RPM-GPG-KEY-CentOS-Testing-7 
  73. -r--r--r--. 1 root root       2883 Apr 22  2020 TRANS.TBL 
  74.  
  75.  
  76.  
  77. #确认配置没有问题后,启动nginx 
  78. [root@proxy ~]# /home/application/nginx/sbin/nginx 
  79.  
  80.  
  81. #查看端口 
  82. [root@localhost conf]# netstat -ntlup  
  83. Active Internet connections (only servers) 
  84. Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name     
  85. tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      16129/sshd                
  86. tcp        0      0 0.0.0.0:8899            0.0.0.0:*               LISTEN      41103/nginx: master  
  87. tcp6       0      0 :::22                   :::*                    LISTEN      16129/sshd           
  • 登陆浏览器访问查看yum仓库
CentOS 7搭建本地yum源和局域网yum源
  • 最后,我们开始配置yum的配置文件,在/etc/yum.repos.d新建一个名为nginx-yum.repo 的配置文件,内容如下:
  1. vim /etc/yum.repos.d/nginx-yum.repo 
  2. [Nginx-yum] 
  3. name=nginx-yum 
  4. baseurl=http://10.114.0.15:8899 
  5. enabled=1 
  6. gpgcheck=0 
  • 清除下yum 原有的信息,载入新的缓存
  1. yum clean all 
  2. yum makecache 

这样,局域网yum源就可以使用了

  • 安装一个软件试下效果
  1. [root@localhost ~]# yum install bash* 
  2. Loaded plugins: fastestmirror, langpacks 
  3. Loading mirror speeds from cached hostfile 
  4. Package bash-4.2.46-34.el7.x86_64 already installed and latest version 
  5. Resolving Dependencies 
  6. --> Running transaction check 
  7. ---> Package bash-completion.noarch 1:2.1-6.el7 will be updated 
  8. ---> Package bash-completion.noarch 1:2.1-8.el7 will be an update 
  9. --> Finished Dependency Resolution 
  10.  
  11. Dependencies Resolved 
  12.  
  13. =================================================================================================================================================================================================================================================================== 
  14.  Package                                                            Arch                                                      Version                                                           Repository                                                    Size 
  15. =================================================================================================================================================================================================================================================================== 
  16. Updating: 
  17.  bash-completion                                                    noarch                                                    1:2.1-8.el7                                                       Nginx-yum                                                     87 k 
  18.  
  19. Transaction Summary 
  20. =================================================================================================================================================================================================================================================================== 
  21. Upgrade  1 Package 
  22.  
  23. Total download size: 87 k 
  24. Is this ok [y/d/N]: y 
  25. Downloading packages: 
  26. No Presto metadata available for Nginx-yum 
  27. bash-completion-2.1-8.el7.noarch.rpm                                                                                                                                                                                                        |  87 kB  00:00:00      
  28. Running transaction check 
  29. Running transaction test 
  30. Transaction test succeeded 
  31. Running transaction 
  32.   Updating   : 1:bash-completion-2.1-8.el7.noarch                                                                                                                                                                                                              1/2  
  33.   Cleanup    : 1:bash-completion-2.1-6.el7.noarch                                                                                                                                                                                                              2/2  
  34.   Verifying  : 1:bash-completion-2.1-8.el7.noarch                                                                                                                                                                                                              1/2  
  35.   Verifying  : 1:bash-completion-2.1-6.el7.noarch                                                                                                                                                                                                              2/2  
  36.  
  37. Updated: 
  38.   bash-completion.noarch 1:2.1-8.el7                                                                                                                                                                                                                         
  39. Complete! 

原文链接:https://www.toutiao.com/a6997248402333516320/

延伸 · 阅读

精彩推荐