当前位置: 首页 > news >正文

RedHat离线安装工具yum+gcc+pcre+zlib+openssl+openssh

RedHat离线安装工具yum+gcc+pcre+zlib+openssl+openssh

  • 【一】安装gcc-c++(解决yum不可用问题)
    • (1)问题描述
    • (2)替换安装yum
    • (3)安装gcc
  • 【二】安装pcre
  • 【三】安装zlib
  • 【四】安装openssl
  • 【五】安装openssh(需要先安装zlib库)

redhat和centos安装是一样

【一】安装gcc-c++(解决yum不可用问题)

(1)问题描述

因为要安装redis,所以需要安装gcc来编译,但是因为redhat的yum要注册且收费,所以用不了,会报出如下的错误:【Redhat使用yum install时提示This system is not registered with an entitlement server 的解决办法】

这时候就需要卸载然后安装centos的yum源。

(2)替换安装yum

(1)查询并卸载已经安装的redhat的rpm包

[root@localhost ~]# rpm -qa |grep yum
yum-rhn-plugin-2.0.1-9.el7.noarch
yum-3.4.3-154.el7.noarch
yum-metadata-parser-1.1.4-10.el7.x86_64[root@localhost ~]# rpm -e yum-rhn-plugin-2.0.1-9.el7.noarch --nodeps
[root@localhost ~]# rpm -e yum-3.4.3-154.el7.noarch --nodeps
[root@localhost ~]# rpm -e yum-metadata-parser-1.1.4-10.el7.x86_64 --nodeps

(2)删除当前的yum源

rpm -aq|grep yum|xargs rpm -e --nodeps

然后查看yum源是否已经删除

rpm -qa|grep yum

(3)安装centos(7.0)的yum
将需要的5个yum包放在服务器目录下
(个人收集的链接:https://pan.baidu.com/s/1UVs55xHnRNyY2kuacIR8XA
提取码:zj8o )

(4)安装新的yum
进入存放这些yum包的目录下面执行

rpm -ivh yum-*

然后查看是否安装

rpm -qa|grep yum

存在上面的五个rpm信息表示安装成功

(5)配置centos的yum文件
如果不存在就创建

cd  /etc/yum.repos.d/

将上面新下载的CentOS-Base.repo 放进去

(6)测试安装gcc-c++

yum install gcc-c++

到了这一步,如果本身是能连外网的话,现在起码redhat的yum应该已经可以下载安装了。
但是如果是不能连外网的话,yum还是不能用,我们就需要手动离线安装gcc了

(3)安装gcc

(1)下载gcc 和c++的rpm包

链接:https://pan.baidu.com/s/130KJk2a9ydr8rxI70mrs1Q
提取码:4fq5

(2)安装gcc和c++(个人已经将两个需要的rpm包放到一块),将gcc的yum包放到服务器
(3)进入该目录下面执行 rpm -Uvh *.rpm --nodeps --force 忽略依赖强制安装
(4)查看是否安装成功 gcc -v
(5)注意:redhat(7.0)需要安装的gcc-c++版本为4.8.5才能正常使用
而如果想要安装redis6以上版本的话,要求gcc的版本不能低于5.3,所以这个时候只能降低redis的版本了

【二】安装pcre

(1)下载地址
pcre-8.40.tar.gz
链接:https://pan.baidu.com/s/13xKFcr_oEbtK047rl2SXHw
提取码:ikvp

(2)解压:tar -zxvf pcre-8.40.tar.gz
(3)进入解压好的目录:cd pcre-8.40.tar.gz
(4)执行configure:./configure
(5)然后执行安装:make && make install
(6)最后执行pcre-config --version,验证是否成功,看到显示版本号:8.40代表安装成功!

pcre-config --version

【三】安装zlib

(1)下载地址
https://files.cnblogs.com/files/fxcoding/zlib-1.2.11.tar.gz

(2)过程跟上面的pcre流程一样

【四】安装openssl

(1)下载地址
https://files.cnblogs.com/files/fxcoding/openssl-1.0.2q.tar.gz

(2)解压openssl-1.0.2q.tar.gz

tar zxvf openssl-1.0.2q.tar.gz

(3)进入解压的目录,配置Openssl(一定要确保已经安装了gcc命令)

./config --prefix=/usr/local/openssl --shared

(4)编译安装

make && make install

(5)查看/usr/local/openssl目录是否生成文件

# ls /usr/local/openssl如有下面四个文件
bin  include  lib  ssl

(6)在/etc/ld.so.conf文件的最后面,添加如下内容

vi /etc/ld.so.conf
/usr/local/openssl/lib

(7)使ld.so.conf配置文件生效

ldconfig

(8)添加OPESSL的环境变量

vi /etc/profile

在/etc目录下的profile文件的最后一行,添加:

export OPENSSL=/usr/local/openssl/binexport PATH=$OPENSSL:$PATH:$HOME/bin

(9)使环境生效

source /etc/profile

(10)查看openssl版本号(确保版本号为刚刚升级的版本)

# openssl versionOpenSSL 1.0.2q  20 Nov 2018

(11)注意的是
有了openssl之后,在安装nginx的时候,会要求配置命令里要有openssl的路径。这个路径不是安装的路径,而是一开始解压的路径。

就是这个:–with-openssl=/usr/local/openssl-1.0.2q

./configure --prefix=/opt/nginx/nginx --with-http_ssl_module --with-http_stub_status_module --with-openssl=/usr/local/openssl-1.0.2q

【五】安装openssh(需要先安装zlib库)

(1)下载地址
https://files.cnblogs.com/files/fxcoding/openssl-1.0.2q.tar.gz

(2)创建配置文件备份目录

mkdir /etc/sshbak

(3)备份原来的ssh配置文件

mv /etc/ssh/* /etc/sshbak

(4)备份原来的ssh启用脚本

mv /etc/init.d/sshd /etc/init.d/sshdbak

(5)解压openssh-7.9p1.tar.gz

tar -zxvf openssh-7.9p1.tar.gz

(6)进入解压目录

cd openssh-7.9p1

(7)配置openssh

./configure --prefix=/usr/ --sysconfdir=/etc/ssh --with-ssl-dir=/usr/local/openssl

(8)编译安装

make && make install

(9)复制启动脚本到/etc/init.d

cp -a contrib/redhat/sshd.init /etc/init.d/sshd

(10)查看/etc/ssh目录下是否存在配置文件

# ls /etc/sshmoduli      sshd_config       ssh_host_dsa_key.pub  ssh_host_ecdsa_key.pub  ssh_host_ed25519_key.pub  ssh_host_rsa_key.pubssh_config  ssh_host_dsa_key  ssh_host_ecdsa_key    ssh_host_ed25519_key    ssh_host_rsa_key

(11)开启允许root管理员登录
修改配置文件:

vi /etc/ssh/sshd_config

找到#PermitRootLogin prohibit-password,在下面一行添加PermitRootLogin yes

PermitRootLogin yes

(12)重启sshd服务

service sshd restart

(13)查看ssh版本(确保版本为升级的版本)

# ssh -VOpenSSH_7.9p1, OpenSSL 1.0.2q  20 Nov 2018

相关文章:

RedHat离线安装工具yum+gcc+pcre+zlib+openssl+openssh

RedHat离线安装工具yumgccpcrezlibopensslopenssh 【一】安装gcc-c(解决yum不可用问题)(1)问题描述(2)替换安装yum(3)安装gcc 【二】安装pcre【三】安装zlib【四】安装openssl【五】…...

Redis概述及安装、使用和管理

目录 一、NoSQL非关系型数据库 1.NoSQL概述 2.关系型数据库和非关系型数据库区别 (1)数据存储方式不同 (2)扩展方式不同 (3)对事务性的支持不同 3.非关系型数据库使用场景 二、Redis概述 1.简介 2…...

【算法第十一天7.25】二叉树前、中、后递归、非递归遍历

链接:力扣94-二叉树中序遍历 链接:力扣144-二叉树前序遍历 链接:力扣145-二叉树后序遍历 树的结构 * public class TreeNode {* int val;* TreeNode left;* TreeNode right;* TreeNode() {}* TreeNode(int val) { thi…...

Linux搭建Promtail + Loki + Grafana 轻量日志监控系统

一、简介 日志监控告警系统,较为主流的是ELK(Elasticsearch 、 Logstash和Kibana核心套件构成),虽然优点是功能丰富,允许复杂的操作。但是,这些方案往往规模复杂,资源占用高,操作苦…...

[PyTorch][chapter 44][RNN]

简介 循环神经网络(Recurrent Neural Network, RNN)是一类以序列(sequence)数据为输入,在序列的演进方向进行递归(recursion)且所有节点(循环单元)按链式连接的递归神经网…...

20230726----重返学习-vue3项目实战-知乎日报第3天-TS-简历

day-121-one-hundred-and-twenty-one-20230726-vue3项目实战-知乎日报第3天-TS-简历 vue3项目实战-知乎日报第3天 封装按钮组件 jsx函数式组件 只能做静态页面,内部没有方法让它自动更新。 封装第三方按钮-非计算属性版 封装第三方按钮-不使用计算属性 src/c…...

TypeScript 在前端开发中的应用实践

TypeScript 在前端开发中的应用实践 TypeScript 已经成为前端开发领域越来越多开发者的首选工具。它是一种静态类型的超集,由 Microsoft 推出,为开发者提供了强大的静态类型检查、面向对象编程和模块化开发的特性,解决了 JavaScript 的动态类…...

商业密码应用安全性评估量化评估规则2023版更新点

《商用密码应用安全性评估量化评估规则》(2023版)已于2023年7月发布,将在8月1日正式执行。相比较2021版,新版本有多处内容更新,具体包括5处微调和5处较大更新。 微调部分(5处) 序号2021版本202…...

【软件测试】单元测试工具---Junit详解

1.junit 1.1 junit是什么 JUnit是一个Java语言的单元测试框架。 虽然我们已经学习了selenium测试框架,但是有的时候测试用例很多,我们需要一个测试工具来管理这些测试用例,Junit就是一个很好的管理工具,简单来说Junit是一个针对…...

【算法基础:搜索与图论】3.4 求最短路算法(Dijkstrabellman-fordspfaFloyd)

文章目录 求最短路算法总览Dijkstra朴素 Dijkstra 算法(⭐原理讲解!⭐重要!)(用于稠密图)例题:849. Dijkstra求最短路 I代码1——使用邻接表代码2——使用邻接矩阵 补充:稠密图和稀疏…...

【Matlab】基于卷积神经网络的数据分类预测(Excel可直接替换数据)

【Matlab】基于卷积神经网络的数据分类预测(Excel可直接替换数据) 1.模型原理2.数学公式3.文件结构4.Excel数据5.分块代码6.完整代码7.运行结果1.模型原理 基于卷积神经网络(Convolutional Neural Network,CNN)的数据分类预测是一种常见的深度学习方法,广泛应用于图像识…...

【C++ 重要知识点总结】自定义类型-枚举和联合

复杂类型 除了类之外还有Union、Enum连个特殊的类型。 Union 概念 union即为联合,它是一种特殊的类。通过关键字union进行定义,一个union可以有多个数据成员。 union Token{char cval;int ival;double dval; };用法 互斥赋值。在任意时刻&#xff0c…...

Centos MySql安装,手动安装保姆级教程

1.删除原有的mariadb,不然mysql装不进去 查询MAriaDB命令 rpm -qa|grep mariadb 删除 rpm -e --nodeps mariadb-libs-5.5.60-1.el7_5.x86_64 (yum -y remove mysql 如需要清除服务器上以前安装过的MySQL可执行此命令,执行前一…...

电脑C盘空间大小调整 --- 扩容(扩大/缩小)--磁盘分区大小调整/移动

概述: 此方法适合C盘右边没有可分配空间(空闲空间)的情况,D盘有数据不方便删除D盘分区的情况下,可以使用傲梅分区助手软件进行跨分区调整分区大小,不会损坏数据。反之可直接使用系统的磁盘管理工具进行调整…...

centos7设置网桥网卡

安装bridge-utils yum install bridge-utils修改ens33 网卡 TYPEEthernet BOOTPROTOnone DEFROUTEyes IPV4_FAILURE_FATALno IPV6INITyes IPV6_AUTOCONFyes IPV6_DEFROUTEyes IPV6_FAILURE_FATALno NAMEens33 UUID04b97484-25c8-45c7-8c8c-e335e8080e10 DEVICEens33 ONBOOTye…...

TCP模型和工作沟通方式

我们如何与客户沟通?理科生和技术人员可能在沟通技巧方面有所欠缺。 那么我们如何理解和掌握沟通的原则和技巧呢?我发现TCP网络交互模型很好的描述了沟通的原则和要点。下面我们就从TCP来讲沟通的过程。 TCP的客户端就像客户(甲方&#xff…...

Langchain 的 ConversationSummaryBufferMemory

Langchain 的 ConversationSummaryBufferMemory ConversationSummaryBufferMemory 在内存中保留最近交互的缓冲区,但不仅仅是完全刷新旧的交互,而是将它们编译成摘要并使用两者。但与之前的实现不同的是,它使用令牌长度而不是交互次数来确定何…...

【Rust 基础篇】Rust 通道实现单个消费者多个生产者模式

导言 在 Rust 中,我们可以使用通道(Channel)来实现单个消费者多个生产者模式,简称为 MPMC。MPMC 是一种常见的并发模式,适用于多个线程同时向一个通道发送数据,而另一个线程从通道中消费数据的场景。本篇博…...

HTTP协议各版本介绍

HTTP协议是一种用于传输Web页面和其他资源的协议。 下面详细介绍一下HTTP的各个版本: 1.HTTP/0.9 这是最早的HTTP版本,于1991年发布。它非常简单,只能传输HTML格式的文本,并且不支持其他类型的资源、请求头和状态码。 2.HTTP/1…...

玩转ChatGPT:Custom instructions (vol. 1)

一、写在前面 据说GPT-4又被削了,前几天让TA改代码,来来回回好几次才成功。 可以看到之前3小时25条的限制,现在改成了3小时50条,可不可以理解为:以前一个指令能完成的任务,现在得两条指令? 可…...

单目相机实战:用OpenCV的solvePnP实现物体位姿估计(附Python代码)

单目相机实战:用OpenCV的solvePnP实现物体位姿估计(附Python代码) 在机器人导航、增强现实和工业检测等领域,精确获取物体相对于相机的位置和姿态是关键挑战。单目相机因其成本优势和轻量化特点,成为许多视觉系统的首选…...

NomNom存档编辑器:3分钟掌握《无人深空》终极修改秘籍

NomNom存档编辑器:3分钟掌握《无人深空》终极修改秘籍 【免费下载链接】NomNom NomNom is the most complete savegame editor for NMS but also shows additional information around the data youre about to change. You can also easily look up each item indi…...

SteamAutoCrack:三步告别Steam游戏限制,实现真正的离线自由

SteamAutoCrack:三步告别Steam游戏限制,实现真正的离线自由 【免费下载链接】Steam-auto-crack Steam Game Automatic Cracker 项目地址: https://gitcode.com/gh_mirrors/st/Steam-auto-crack 你是否曾经遇到过这样的困扰:明明购买了…...

从数据到模型:Paraformer与SenseVoice专业名词识别优化实战

1. 专业名词识别难题的根源分析 当你第一次听到语音识别模型把"冠状动脉粥样硬化"识别成"冠状动脉造样硬化"时,可能会觉得这只是个偶然错误。但当我们处理金融、医疗、科技等领域的专业音频时,这类错误会频繁出现,严重影…...

3步掌握Fooocus核心架构:从零构建专业级AI图像生成工作流

3步掌握Fooocus核心架构:从零构建专业级AI图像生成工作流 【免费下载链接】Fooocus Focus on prompting and generating 项目地址: https://gitcode.com/GitHub_Trending/fo/Fooocus Fooocus作为基于Stable Diffusion XL架构的开源AI图像生成软件&#xff0c…...

3分钟掌握Mem Reduct:让你的Windows内存管理说中文

3分钟掌握Mem Reduct:让你的Windows内存管理说中文 【免费下载链接】memreduct Lightweight real-time memory management application to monitor and clean system memory on your computer. 项目地址: https://gitcode.com/gh_mirrors/me/memreduct 还在为…...

JavaScript中全局执行上下文与函数上下文的生成过程

全局执行上下文在JS引擎启动时创建,函数执行上下文在每次调用时创建;前者作用域链仅含全局环境,后者在创建阶段就基于定义位置固定作用域链;var和function声明被提升并初始化,let/const仅注册于词法环境而处于暂时性死…...

真理纪元:贾子科学定理与人类逻辑主权的学术白皮书

真理纪元:贾子科学定理与人类逻辑主权的学术白皮书作者单位:鸽姆智库(GG3M Think Tank)作者简介:贾子(Kucius),研究员,鸽姆智库(GG3M Think Tank)…...

应对复杂实战场景:基于快马平台生成动态网页爬虫完整解决方案

今天想和大家分享一个实战中的Python爬虫项目,主要解决动态渲染社交媒体网站的数据抓取问题。这类网站通常采用JavaScript动态加载内容,传统的requests库很难直接获取数据,需要借助浏览器自动化工具。 项目背景与难点分析 动态网页爬虫的核…...

seL4通知机制完全指南:高效异步事件处理的终极解决方案

seL4通知机制完全指南:高效异步事件处理的终极解决方案 【免费下载链接】seL4 The seL4 microkernel 项目地址: https://gitcode.com/gh_mirrors/se/seL4 seL4微内核的通知机制是构建高可靠实时系统的核心组件之一,它提供了一种高效、安全的异步事…...