热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

centos7安装源疯了_搭建内网yum源,解决依赖包难题

我们通常使用yuminstall命令来在线安装linux系统的软件,这种方式可以自动处理依赖性关系,并且一次安装所有依赖的软体包,但是经常

我们通常使用 `yum install` 命令来在线安装 linux系统的软件, 这种方式可以自动处理依赖性关系,并且一次安装所有依赖的软体包,但是经常会遇到从国外镜像下载速度慢,无法下载的情况。或者内网无法访问公网的情况,那么此时我们就需要一个稳定的yum 源作为我们日常使用的地址。

由于森哥原来做过一次图片存储位置变更至阿里云的OSS上,未能及时将原来的图片同时迁移至OSS上,造成图片的缺失,以后有机会再补上。

fa71c7bf50c3f6f15c5890183ad21be6.png

搭建内网yum源,解决依赖包难题

一、解释

什么是yum源?

yum源就是使用yum命令下载软件的镜像地址。

我们通常使用 yum install 命令来在线安装 linux系统的软件, 这种方式可以自动处理依赖性关系,并且一次安装所有依赖的软体包,但是经常会遇到从国外镜像下载速度慢,无法下载的情况。或者内网无法访问公网的情况,那么此时我们就需要一个稳定的yum 源作为我们日常使用的地址。

402669d70f0283df8e5d9ebf2b4bd46d.png

选择一个稳定的公网yum源,这里我们选择阿里的yum源,地址:https://developer.aliyun.com/mirror

二、安装配置Nginx环境

2.1、安装Nginx

2.1.1、关闭防火墙及SeLinux

sed -i "s/SELINUX=enforcing/SELINUX=disabled/" /etc/selinux/configsetenforce 0

systemctl stop firewalld    //停止系统默认的防火墙systemctl mask firewalld   //屏蔽服务(让它不能启动)yum remove -y firewalld   //卸载默认的防火墙

2.1.2、设置ulimit值

vi /etc/security/limits.conf

root soft nofile 65535root hard nofile 65535* soft nofile 65535* hard nofile 65535

ulimit -SHn 65536   //执行,立即永久生效。

2.1.3、更新CentOS repo源

curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repoyum install -y epel-releaseyum localinstall -y https://mirrors.ustc.edu.cn/epel/7/x86_64/Packages/e/epel-release-7-11.noarch.rpm  //安装Nginx yum源yum clean allyum makecache

当您的/etc/yum.repos.d/下有多个yum源时,下面同步时,也会全部同步下来。

2.1.4、安装依赖包及编译环境

yum groupinstall -y "Development Tools"yum install -y binutils make cmake gcc gcc-c++ autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5 krb5-devel libidn libidn-devel openssl openssl-devel openldap openldap-devel nss_ldap openldap-clients openldap-servers  gd gd-devel perl expat expat-devel nss_ldap unixODBC unixODBC-devel libxslt-devel libevent-devel libtool-ltdl bison libtool zip unzip gmp-devel pcre pcre-devel perl-core python-devel perl-devel perl-ExtUtils-Embed compat-libstdc++-33 elfutils-libelf elfutils-libelf-devel libaio libaio-devel sysstatyum install -y yum-utils    //等下要执行reposync同步时使用yum install -y createrepo   //创建repodata文件时用到yum update -y

2.1.5、安装Nginx

yum install -y automake autoconf libtool makeyum install -y nginxsystemctl enable nginx    //开机自启动systemctl start nginx     //启动Nginxsystemctl stop nginx      //停止Nginxsystemctl restart nginx   //重启Nginxsystemctl reload nginx    //加载Nginx配置文件

2.2、配置Nginx服务

2.2.1、修改/etc/nginx/nginx.conf

增加:

autoindex on; 表示自动在index.html的索引打开

autoindex_exact_size on; 表示如果有文件则显示文件大小

autoindex_localtime on; 表示显示更改时间,以当前系统时间为准

2.2.2、配置完成后运行Nginx服务

systemctl start nginx     //启动Nginxsystemctl stop nginx      //停止Nginxsystemctl restart nginx   //重启Nginxsystemctl reload nginx    //加载Nginx配置文件

2.2.3、创建index.html文件

在index.html中加入下面内容,CentOS7-Ali目录是后面放置rpm包的目录。

ALL of the packages in the below:


Aliyun
These packagers from of CentO`S ISO.
CentOS
These packagers from of "Internet service provider".

Please replace the file and fill in the following content:

Way: /etc/yum.repos.d/CentOS-Base.repo

172.16.2.21 该IP为您的Nginx服务器的IP,您也可以自行分配一个域名。

2.2.4、在/usr/local/nginx/html中创建CentOS7-Ali目录

增加目录的执行权限

Chmod –R +x /usr/local/nginx/html/

2.3、同步公网YUM源

2.3.1、同步并下载阿里源中CentOS7的包,第一次同步下载时间会比较长

reposync -p /usr/local/nginx/html/CentOS7-Ali

同步完成后在web界面会看到新建的四个目录

2.3.2、创建yum源仓库

使用createrepo -p .命令创建repodata文件。

进入CentOS7-Ali/base/Packages/中执行

createrepo -p .

2.4、配置客户端的yum源

yum-config-manager --add-repo="http://172.16.2.21/CentOS7-Ali/base/Packages"

配置完成后使用 yum makecache命令更新缓存成功。

2.5、通过定时任务方式让yum源自动到阿里源更新。

2.5.1、创建更新脚本:/etc/nginx/yumupdate.sh

“-np”的意思为仅仅更新新更新的软件到指定目录

vi /etc/nginx/yumupdate.sh

#!/bin/bashusr/bin/reposync -np /usr/local/nginx/html/CentOS7-Ali/

2.5.2、配置定时任务

crontab -e配置定时任务

0       0       *       *       0       /etc/nginx/yumupdate.sh



推荐阅读
  • 数字图书馆近期展出了一批精选的Linux经典著作,这些书籍虽然部分较为陈旧,但依然具有重要的参考价值。如需转载相关内容,请务必注明来源:小文论坛(http://www.xiaowenbbs.com)。 ... [详细]
  • 在对WordPress Duplicator插件0.4.4版本的安全评估中,发现其存在跨站脚本(XSS)攻击漏洞。此漏洞可能被利用进行恶意操作,建议用户及时更新至最新版本以确保系统安全。测试方法仅限于安全研究和教学目的,使用时需自行承担风险。漏洞编号:HTB23162。 ... [详细]
  • 为了在Hadoop 2.7.2中实现对Snappy压缩和解压功能的原生支持,本文详细介绍了如何重新编译Hadoop源代码,并优化其Native编译过程。通过这一优化,可以显著提升数据处理的效率和性能。此外,还探讨了编译过程中可能遇到的问题及其解决方案,为用户提供了一套完整的操作指南。 ... [详细]
  • 本文将详细介绍如何在Mac上安装Jupyter Notebook,并提供一些常见的问题解决方法。通过这些步骤,您将能够顺利地在Mac上运行Jupyter Notebook。 ... [详细]
  • 本文详细介绍了 InfluxDB、collectd 和 Grafana 的安装与配置流程。首先,按照启动顺序依次安装并配置 InfluxDB、collectd 和 Grafana。InfluxDB 作为时序数据库,用于存储时间序列数据;collectd 负责数据的采集与传输;Grafana 则用于数据的可视化展示。文中提供了 collectd 的官方文档链接,便于用户参考和进一步了解其配置选项。通过本指南,读者可以轻松搭建一个高效的数据监控系统。 ... [详细]
  • Android 构建基础流程详解
    Android 构建基础流程详解 ... [详细]
  • Python 程序转换为 EXE 文件:详细解析 .py 脚本打包成独立可执行文件的方法与技巧
    在开发了几个简单的爬虫 Python 程序后,我决定将其封装成独立的可执行文件以便于分发和使用。为了实现这一目标,首先需要解决的是如何将 Python 脚本转换为 EXE 文件。在这个过程中,我选择了 Qt 作为 GUI 框架,因为之前对此并不熟悉,希望通过这个项目进一步学习和掌握 Qt 的基本用法。本文将详细介绍从 .py 脚本到 EXE 文件的整个过程,包括所需工具、具体步骤以及常见问题的解决方案。 ... [详细]
  • 本文详细介绍了在Linux系统上编译安装MySQL 5.5源码的步骤。首先,通过Yum安装必要的依赖软件包,如GCC、GCC-C++等,确保编译环境的完备。接着,下载并解压MySQL 5.5的源码包,配置编译选项,进行编译和安装。最后,完成安装后,进行基本的配置和启动测试,确保MySQL服务正常运行。 ... [详细]
  • 在Ubuntu上安装MySQL时解决缺少libaio.so.1错误及libaio在MySQL中的重要性分析
    在Ubuntu系统上安装MySQL时,遇到了缺少libaio.so.1的错误。本文详细介绍了如何解决这一问题,并深入探讨了libaio库在MySQL性能优化中的重要作用。对于初学者而言,理解这些依赖关系和配置步骤是成功安装和运行MySQL的关键。通过本文的指导,读者可以顺利解决相关问题,并更好地掌握MySQL在Linux环境下的部署与管理。 ... [详细]
  • 在 CentOS 6.5 系统上部署 VNC 服务器的详细步骤与配置指南
    在 CentOS 6.5 系统上部署 VNC 服务器时,首先需要确认 VNC 服务是否已安装。通常情况下,VNC 服务默认未安装。可以通过运行特定的查询命令来检查其安装状态。如果查询结果为空,则表明 VNC 服务尚未安装,需进行手动安装。此外,建议在安装前确保系统的软件包管理器已更新至最新版本,以避免兼容性问题。 ... [详细]
  • 在 CentOS 7 中,为了扩展可用软件包的数量,通常需要配置多个第三方软件源。这些第三方源包括 EPEL、Nux Dextop 和 ELRepo 等,它们提供了大量官方源中未包含的软件包,从而增强了系统的功能性和灵活性。通过正确配置这些源,用户可以轻松安装和管理更多种类的软件,满足不同的需求。 ... [详细]
  • Netty框架中运用Protobuf实现高效通信协议
    在Netty框架中,通过引入Protobuf来实现高效的通信协议。为了使用Protobuf,需要先准备好环境,包括下载并安装Protobuf的代码生成器`protoc`以及相应的源码包。具体资源可从官方下载页面获取,确保版本兼容性以充分发挥其性能优势。此外,配置好开发环境后,可以通过定义`.proto`文件来自动生成Java类,从而简化数据序列化和反序列化的操作,提高通信效率。 ... [详细]
  • 在Linux系统中,网络配置是至关重要的任务之一。本文详细解析了Firewalld和Netfilter机制,并探讨了iptables的应用。通过使用`ip addr show`命令来查看网卡IP地址(需要安装`iproute`包),当网卡未分配IP地址或处于关闭状态时,可以通过`ip link set`命令进行配置和激活。此外,文章还介绍了如何利用Firewalld和iptables实现网络流量控制和安全策略管理,为系统管理员提供了实用的操作指南。 ... [详细]
  • 该问题可能由守护进程配置不当引起,例如未识别的JVM选项或内存分配不足。建议检查并调整JVM参数,确保为对象堆预留足够的内存空间(至少1572864KB)。此外,还可以优化应用程序的内存使用,减少不必要的内存消耗。 ... [详细]
  • Android中将独立SO库封装进JAR包并实现SO库的加载与调用
    在Android开发中,将独立的SO库封装进JAR包并实现其加载与调用是一个常见的需求。本文详细介绍了如何将SO库嵌入到JAR包中,并确保在外部应用调用该JAR包时能够正确加载和使用这些SO库。通过这种方式,开发者可以更方便地管理和分发包含原生代码的库文件,提高开发效率和代码复用性。文章还探讨了常见的问题及其解决方案,帮助开发者避免在实际应用中遇到的坑。 ... [详细]
author-avatar
min_xie_964
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有