搭建本地Yum仓库

yum其实就解决rpm依赖的问题,虽然网上有很多epel源,但是前提企业得有外网,有些严格要求的企业是只有内网的,如果需要安装某个服务时比较麻烦,站在节省宽带的原则可以在闲置一台机器上搭建一个yum仓库,方便内网环境使用

我在VM里添加一个磁盘(我这个是VM实验,用光盘挂载的方式,生产环境直接把安装包内文件拷贝到相应文件目录即可)

之后我们扫描磁盘看看系统识别出来没有,发现有两个安装光盘,我要做两个yum仓库,一个是centos7与RHEL8的

[root@centos7 wordpress]#df    
文件系统          1K-块     已用     可用 已用% 挂载点
/dev/sda2      52403200  6270468 46132732   12% /
devtmpfs         915828        0   915828    0% /dev
tmpfs            931624        0   931624    0% /dev/shm
tmpfs            931624    10676   920948    2% /run
tmpfs            931624        0   931624    0% /sys/fs/cgroup
/dev/sda3      20961280  1195420 19765860    6% /data
/dev/sda1       1038336   177872   860464   18% /boot
tmpfs            186328       20   186308    1% /run/user/0
/dev/sr1        6935944  6935944        0  100% /run/media/root/RHEL-8-0-0-BaseOS-x86_64
/dev/sr0       10491772 10491772        0  100% /run/media/root/CentOS 7 x86_64

这个时候就可以安装yum instal nginx/httpd,因为我的电脑里面已经有nginx是编译安装的,我就不yum安装了,之后在创建需要的挂载文件

[root@centos7 wordpress]#mkdir centos/{7,8}/os/x86_64/ -pv
mkdir: 已创建目录 "centos"
mkdir: 已创建目录 "centos/7"
mkdir: 已创建目录 "centos/7/os"
mkdir: 已创建目录 "centos/7/os/x86_64/"
mkdir: 已创建目录 "centos/8"
mkdir: 已创建目录 "centos/8/os"
mkdir: 已创建目录 "centos/8/os/x86_64/"

看一下目录结构没问题

[root@centos7 wordpress]#tree
.
├── centos
│   ├── 7
│   │   └── os
│   │       └── x86_64
│   └── 8
│       └── os
│           └── x86_64

下面我们开始挂载

[root@centos7 wordpress]#mount /dev/sr0 centos/7/os/x86_64/
mount: /dev/sr0 写保护,将以只读方式挂载
[root@centos7 wordpress]#mount /dev/sr1 centos/8/os/x86_64/
mount: /dev/sr1 写保护,将以只读方式挂载

之后我们进入文件夹看一下文件,已经显示文件了,说明挂载没问题

[root@centos7 x86_64]#ls
CentOS_BuildTag  EULA  images    LiveOS    repodata              RPM-GPG-KEY-CentOS-Testing-7
EFI              GPL   isolinux  Packages  RPM-GPG-KEY-CentOS-7  TRANS.TBL

之后我们配置repo文件,我们进入/etc/yum.repos.d/,把之前的repo文件给全部mv转走并且备份,在创建一个新的文件叫test.repo,配置文件内添加如下内容

[root@centos7 yum.repos.d]#vim test.repo
[base]
name=base
baseurl=http://XXX.XXX.XXX.XXX/centos/$releasever/os/$basearch/
gpgcheck=0                         

之后我们在配置一下nginx配置文件nginx.conf,nginx默认不会开启浏览目录功能的,

autoindex on开启,

autoindex_exact_size off;默认为on,显示出文件的确切大小,单位是bytes。

改为off后,显示出文件的大概大小,单位是kB或者MB或者GB

autoindex_localtime on;默认为off,显示的文件时间为GMT时间。

改为on后,显示的文件时间为文件的服务器时间

 location / {
            root   html;
            index  index.html index.htm index.php;                                               
            autoindex on;
            autoindex_exact_size off;
            autoindex_localtime on;
        }

之后我们启动nginx -t测一下,没问题启动nginx,在reload一下

[root@centos7 yum.repos.d]#nginx -t
nginx: the configuration file /apps/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /apps/nginx/conf/nginx.conf test is successful
[root@centos7 yum.repos.d]#nginx
[root@centos7 yum.repos.d]#nginx -s reload

我们来访问一下,没问题

之后我们开始更新yum源

[root@centos7 yum.repos.d]#yum clean all
已加载插件:fastestmirror, langpacks
正在清理软件源: base
Cleaning up list of fastest mirrors
Other repos take up 1.1 G of disk space (use --verbose for details)
[root@centos7 yum.repos.d]#yum repolist 
已加载插件:fastestmirror, langpacks
Determining fastest mirrors
base                                                                      | 3.6 kB  00:00:00     
(1/2): base/7/x86_64/group_gz                                             | 166 kB  00:00:00     
(2/2): base/7/x86_64/primary_db                                           | 6.0 MB  00:00:00     
源标识                                            源名称                                   状态
base/7/x86_64                                     base                                     10,019
repolist: 10,019

之后我们安装一个软件试试,没问题

[root@centos7 yum.repos.d]#yum install httpd
已加载插件:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
正在解决依赖关系
--> 正在检查事务
---> 软件包 httpd.x86_64.0.2.4.6-88.el7.centos 将被 安装
--> 正在处理依赖关系 httpd-tools = 2.4.6-88.el7.centos,它被软件包 httpd-2.4.6-88.el7.centos.x86_64 需要
--> 正在处理依赖关系 /etc/mime.types,它被软件包 httpd-2.4.6-88.el7.centos.x86_64 需要
--> 正在检查事务
---> 软件包 httpd-tools.x86_64.0.2.4.6-88.el7.centos 将被 安装
---> 软件包 mailcap.noarch.0.2.1.41-2.el7 将被 安装
--> 解决依赖关系完成

依赖关系解决

=================================================================================================
 Package                架构              版本                             源               大小
=================================================================================================
正在安装:
 httpd                  x86_64            2.4.6-88.el7.centos              base            2.7 M
为依赖而安装:
 httpd-tools            x86_64            2.4.6-88.el7.centos              base             90 k
 mailcap                noarch            2.1.41-2.el7                     base             31 k

事务概要
=================================================================================================
安装  1 软件包 (+2 依赖软件包)

总下载量:2.8 M
安装大小:9.6 M
Is this ok [y/d/N]: y
Downloading packages:
(1/3): httpd-tools-2.4.6-88.el7.centos.x86_64.rpm                         |  90 kB  00:00:00     
(2/3): httpd-2.4.6-88.el7.centos.x86_64.rpm                               | 2.7 MB  00:00:00     
(3/3): mailcap-2.1.41-2.el7.noarch.rpm                                    |  31 kB  00:00:00     
-------------------------------------------------------------------------------------------------
总计                                                              12 MB/s | 2.8 MB  00:00:00     
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  正在安装    : mailcap-2.1.41-2.el7.noarch                                                  1/3 
  正在安装    : httpd-tools-2.4.6-88.el7.centos.x86_64                                       2/3 
  正在安装    : httpd-2.4.6-88.el7.centos.x86_64                                             3/3 
  验证中      : httpd-tools-2.4.6-88.el7.centos.x86_64                                       1/3 
  验证中      : mailcap-2.1.41-2.el7.noarch                                                  2/3 
  验证中      : httpd-2.4.6-88.el7.centos.x86_64                                             3/3 

已安装:
  httpd.x86_64 0:2.4.6-88.el7.centos                                                             

作为依赖被安装:
  httpd-tools.x86_64 0:2.4.6-88.el7.centos             mailcap.noarch 0:2.1.41-2.el7            

完毕!
[root@centos7 yum.repos.d]#

总结:发现一个问题redhat8的目录路径跟centos7是不一样的,如果是6通用,不过本例子是centos7所以不影响,如果是redhat8在改test.repo哈

 

 

 

 

版权声明:
作者:微笑蝈蝈
链接:https://www.smileguo.cn/478.html
来源:微笑蝈蝈
文章版权归作者所有,未经允许请勿转载。

THE END
分享
二维码
< <上一篇
下一篇>>