CentOs 安装本地yum仓库(createrepo+nginx实现)

最后更新时间: 2020年10月30日16:07:12

0. 目的

想要建立私有Yum仓库,方便运维。
我感觉搭建好以后,甚至可以当作自己的对象存储oss来用

1. 开始

安装的系统为CentOs6。

Linux gdei 2.6.32-754.el6.x86_64 #1 SMP Tue Jun 19 21:26:04 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux

服务器地址为:192.168.219.130(VM虚拟机)
先安装nginx,要不然没有网页端服务。不需要网页端的可以跳过。

2. 暂时关闭防火墙

关闭iptables :

service iptables stop

关闭selinux:
查看SELinux状态:

/usr/sbin/sestatus -v      ##如果SELinux status参数为enabled即为开启状态
getenforce                 ##也可以用这个命令检查

关闭SELinux:
1、临时关闭(不用重启机器):

setenforce 0                  ##设置SELinux 成为permissive模式
                              ##setenforce 1 设置SELinux 成为enforcing模式

2、修改配置文件需要重启机器:
修改/etc/selinux/config 文件
将SELINUX=enforcing改为SELINUX=disabled
重启机器后关闭selinux

3. 安装createrepo

准备软件仓库目录:

mkdir /home/data -p

使用yum的只下载不安装的方式进行下载软件(下载啥都行,此处以下载gcc为例,你也可以自己打包rmp然后放到仓库)

yum install --downloadonly --downloaddir=/home/data gcc

下载creatrepo:

yum -y install createrepo

开始运行服务:

createrepo /yum/downloade/

现在,自定义yum仓库已经搭建完成,目前只有gcc这一个包可供下载

4. 更新

更新源数据:如果有新的软件包放入到软件仓库,这里就需要更新元数据。
也就是说每次将数据放入这个文件夹下想共享出去,放到这下面以后就要使用下面的命令更新一次。

createrepo --update /home/data

至此,搭建完成。

5. 使用Nginx制造网页端查看页面

要安装Nginx之前要安装epel,要不然装不了nginx

yum install epel-release

然后安装nginx

yum install nginx

开始配置nginx,配置完毕后网页端就能访问了

cd /etc/nginx/conf.d/

备份配置文件

cp default.conf default.conf.bak

开始修改配置文件

vi default.conf 

修改成如下的样子

server {
    listen       80;
    server_name  192.168.219.130;
    root         /home/data;

    location / {
    autoindex on;
    autoindex_exact_size off;
    autoindex_localtime on;
    autoindex_format html;
    charset utf-8,gbk;
    root         /home/data;
    }

    error_page 404 /404.html;
        location = /40x.html {
    }

    error_page 500 502 503 504 /50x.html;
        location = /50x.html {
    }

}

6. 成功

访问192.168.219.130(服务器IP),成功!效果如下:
图片说明
点击文件,可以下载
图片说明

7. 使用

需要使用yum的客户端,需编辑配置文件,命令操作如下所示:

cd /etc/yum.repos.d/
cp CentOS-Base.repo CentOS-Base.repo.bak
vim CentOS-Base.repo
[base]                                     //中括号里内容要求唯一,但不要出现特殊字符
name=A nice description           //此为描述信息,可以看情况填写
baseurl=http://192.168.219.130/                    //此项为yum软件仓库位置
enabled=1                                   //此项为是否开启,1为开启, 0为不开启
gpgcheck=1                                  //此项为是否检查签名,1为检测, 0为不检测
cost=1000    # 默认yum仓库cost为1000, cost越小越优先
gpgkey=0  //签名认证信息的路径
//有些baseurl设置的稍微复杂,比如:
//http://mirrors.aliyun.com/centos/$releasever/os/$basearch/
//其中
//    $releasever    # 只替换主版本号
//    $basearch # 系统基本架构
//具体配置请自己根据yum的配置知识来陪

运行以下命令生成缓存 :

yum clean all
yum makecache

(因为有备份文件,随时可以换回来,所以不怕翻车)
附上阿里云的yum源配置文件下载(如果你是Centos7就将这个6换成7)

wget http://mirrors.aliyun.com/repo/Centos-6.repo
//用wget下载后,放到/etc/yum.repos.d/文件夹下,并改名为CentOS-Base.repo
//再运行上面2个命令重新生成缓存即可。

8.参考

搭建yum私有仓库,https://www.jianshu.com/p/c7c2dea549b1?open_source=weibo_search
搭建私有YUM仓库与内网镜像站,http://www.360doc.com/content/19/0819/08/36367108_855782032.shtml
创建私有yum仓库,https://www.cnblogs.com/zakzhu/p/11632971.html
Linux yum 命令,https://www.runoob.com/linux/linux-yum.html
搭建私有yum仓库,https://www.cnblogs.com/37yan/p/6879287.html

全部评论

相关推荐

真tmd的恶心,1.面试开始先说我讲简历讲得不好,要怎样讲怎样讲,先讲背景,再讲技术,然后再讲提升多少多少,一顿说教。2.接着讲项目,我先把背景讲完,开始讲重点,面试官立即打断说讲一下重点,无语。3.接着聊到了项目的对比学习的正样本采样,说我正样本采样是错的,我解释了十几分钟,还是说我错的,我在上一家实习用这个方法能work,并经过市场的检验,并且是顶会论文的复现,再怎么不对也不可能是错的。4.面试官,说都没说面试结束就退出会议,把面试者晾在会议里面,丝毫不尊重面试者难受的点:1.一开始是讲得不好是欣然接受的,毕竟是学习。2.我按照面试官的要求,先讲背景,再讲技术。当我讲完背景再讲技术的时候(甚至已经开始蹦出了几个技术名词),凭什么打断我说讲重点,是不能听出人家重点开始了?这也能理解,每个人都有犯错,我也没放心上。3.我自己做过的项目,我了解得肯定比他多,他这样贬低我做过的项目,说我的工作是错误的,作为一个技术人员,我是完全不能接受的,因此我就和他解释,但无论怎么解释都说我错。凭什么,作为面试官自己不了解相关技术,别人用这个方式work,凭什么还认为这个方法是错的,不接受面试者的解释。4.这个无可厚非,作为面试官,不打招呼就退出会议,把面试者晾着,本身就是有问题。综上所述,我现在不觉得第一第二点也是我的问题,面试官有很大的问题,就是专门恶心人的,总结面试官说教,不尊重面试者,打击面试者,不接受好的面试者,技术一般的守旧固执分子。有这种人部门有这种人怎么发展啊。最后去查了一下,岗位关闭了。也有可能是招到人了来恶心人的,但是也很cs
牛客20646354...:招黑奴啊,算法工程师一天200?
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务