网站首页 > 技术文章 正文
写在前面
- 对于可以连接外网的服务器装软件,只要配置yum源就可以随便使用了
- 但是对于内网来说,不能连接外网,一般情况下,管控平台只有上传的权限。尤其是一些涉密的岗位,比如电力,电信,军工之类的。
- 今天和小伙伴聊聊内网服务器如何安装软件的问题。
可事实是,唯恐暴露才华不足的卑怯的畏惧,和厌恶钻研刻苦的惰怠,就是我的全部了。 ——中岛敦《山月记》
方法一、直接下载安装包rpm方式
找一台有网机器安装 Nginx需要的软件包(尽量同版本的操作系统,最小化安装)
┌──[root@liruilongs.github.io]-[~]
└─$ yum -y install nginx --downloadonly --downloaddir=/root/soft #把Nginx需要的软件包下载到 /root/soft 下
检查一下
┌──[root@liruilongs.github.io]-[~]
└─$ cd /root/soft/
┌──[root@liruilongs.github.io]-[~/soft]
└─$ ls
nginx-1.20.1-9.el7.x86_64.rpm nginx-filesystem-1.20.1-9.el7.noarch.rpm
┌──[root@liruilongs.github.io]-[~/soft]
└─$
把整个文件夹打包拷贝到内网环境,然后执行 rpm -ivh /xx/* 命令安装所有依赖包
┌──[root@liruilongs.github.io]-[~]
└─$ rpm -ivh /root/soft/*
warning: /root/soft/nginx-1.20.1-9.el7.x86_64.rpm: Header V4 RSA/SHA256 Signature, key ID 352c64e5: NOKEY
Preparing... ################################# [100%]
Updating / installing...
1:nginx-filesystem-1:1.20.1-9.el7 ################################# [ 50%]
2:nginx-1:1.20.1-9.el7 ################################# [100%]
┌──[root@liruilongs.github.io]-[~]
└─$ systemctl start nginx
┌──[root@liruilongs.github.io]-[~]
└─$ curl http://127.0.0.1:80
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Welcome to CentOS</title>
<style rel="stylesheet" type="text/css">
如果内网环境有 createrepo命令的话,把下载的东西拷贝过去,可以自定义yum源,通过yum的方式安装
┌──[root@liruilongs.github.io]-[~]
└─$ createrepo -v /root/soft/
Spawning worker 0 with 1 pkgs
Spawning worker 1 with 1 pkgs
Worker 0: reading nginx-1.20.1-9.el7.x86_64.rpm
Worker 1: reading nginx-filesystem-1.20.1-9.el7.noarch.rpm
Workers Finished
Saving Primary metadata
Saving file lists metadata
Saving other metadata
Generating sqlite DBs
Starting other db creation: Tue Nov 2 02:41:26 2021
▽
[nginx]
Ending other db creation: Tue Nov 2 02:41:26 2021
Starting filelists db creation: Tue Nov 2 02:41:26 2021
Ending filelists db creation: Tue Nov 2 02:41:26 2021
Starting primary db creation: Tue Nov 2 02:41:26 2021
Ending primary db creation: Tue Nov 2 02:41:26 2021
Sqlite DBs complete
┌──[root@liruilongs.github.io]-[~]
└─$ cd /root/soft/
┌──[root@liruilongs.github.io]-[~/soft]
└─$ ls
nginx-1.20.1-9.el7.x86_64.rpm nginx-filesystem-1.20.1-9.el7.noarch.rpm repodata
┌──[root@liruilongs.github.io]-[~/soft]
└─$ cd repodata/;ls
2a85d8bedd0e987fe0c492840e8d9e7194f1da556db1282b6b731cc0c6978ded-primary.sqlite.bz2
8fe41a398aa040ec1b69ea2d54fae6c91dda6964a51a737b9becfa05bb7504f4-other.sqlite.bz2
a8c56a126109fae47bdd4dfa6e33e8575bd9e660fc6826f6623fb8d08f1ce293-filelists.xml.gz
b5c57aa7aecbcfe4826a9e4c4dcb3c05193b0ed64e6858e4e755bc785003a009-primary.xml.gz
dbc9a1a851b14aeb972e05dac2b17a896848993ebbd494a01b566c75ba5d0ef8-other.xml.gz
ed1fa31928cf100748169e2b5ff1cb354b1c45a0b860f805830eb679872d38fd-filelists.sqlite.bz2
repomd.xml
┌──[root@liruilongs.github.io]-[~/soft/repodata]
└─$ cd ..;createrepo --update ./
Saving Primary metadata
Saving file lists metadata
Saving other metadata
Generating sqlite DBs
Sqlite DBs complete
┌──[root@liruilongs.github.io]-[~/soft]
└─$ vim nginx.repo
┌──[root@liruilongs.github.io]-[~/soft]
└─$ cat nginx
cat: nginx: No such file or directory
┌──[root@liruilongs.github.io]-[~/soft]
└─$ cat nginx.repo
[nginx]
name=nginx
baseurl=file://root/soft
enabled=1
gpgcheck=0
priority=1
┌──[root@liruilongs.github.io]-[~/soft]
└─$
方法二、通过IOS挂载配置
iso挂载的方式,iso挂载方式这里可以使用不同的协议,但是内网,所以我们只能用file协议,前提将有包的IOS镜像拷贝到要装包的机器。当然,如果这个机器所在内网的其他机器有相关的包,可以使用http,ftp协议。
挂载本地镜像文件。正常IOS文件一般会放到dev/ 文件夹下,需要把相关的文件挂载到指定的目录下,
[root@liruilongs.github.io ~]# mkdir /centos7 #创建挂载点
[root@liruilongs.github.io yum.repos.d]# mount /dev/CentOS-7-x86_64-DVD-1810.iso /centos7/ #挂载镜像光盘
[root@liruilongs.github.io yum.repos.d]# ls /centos7/ #验证挂载结果
将yum的原本配置备份
[root@liruilongs.github.io ~]# cd /etc/yum.repos.d/ #进入yum的repo文件目录下
[root@liruilongs.github.io yum.repos.d]# mkdir oldrepo #创建目录
[root@liruilongs.github.io yum.repos.d]# ls
[root@liruilongs.github.io yum.repos.d]# mv CentOS-* oldrepo/ #将所有的.repo的文件移动到oldrepo目录下
[root@liruilongs.github.io yum.repos.d]# ls
第三步:配置本地yum源
[root@liruilongs.github.io ~]# vim /etc/yum.repos.d/centos7.repo #创建一个新的repo文件
[centos] #自定义名字,具有唯一性,随便定义
name=Centos7 #对软件源的描述信息
baseurl=file:///centos7 #指定yum服务端的访问路径
gpgcheck=0 # 0为不检测,1为检测,要更改为0,检测只是检测红帽官方打包的rpm包
enabled=1 #是否立即生效,1为是
[root@liruilongs.github.io ~]# yum clean all #清空客户端下的yum清单列表
[root@liruilongs.github.io ~]# yum repolist #重新加载服务端的清单列表
这样我们通过iso装包就配置好啦。之后就可以通过yum使用了
- 上一篇: Go 语言调度(一): 系统调度 go 调用系统命令
- 下一篇: 系统性能分析及调整 系统性能方面
猜你喜欢
- 2024-11-11 Go 语言调度(一): 系统调度 go 调用系统命令
- 2024-11-11 杨诚团队AM: 有序排列蕨类结构的OER电极实现高效气泡管理
- 2024-11-11 小小的间隙看似微不足道,背后却隐藏着大学问
- 2024-11-11 基于伊斯坦布尔周边地区的黄腿鸥,对鸟类性别二态性的分析
- 2024-11-11 DFMA与当代产品:永远都不会太迟!(科勒DFMA应用案例)
- 2024-11-11 DFM在钣金设计中的应用,看老外是如何做的
- 2024-11-11 allegro-DFX准确性设计(一) allegro如何精确放置元器件
- 2024-11-11 宾得发布全幅70-200镜头 宾得a70-210f4镜头怎么样?
- 2024-11-11 中考几何压轴 87 辅助线法则 线段和最小值 如何思考?
- 2024-11-11 三星发布55英寸8K QLED电视:价格不再昂贵
你 发表评论:
欢迎- 11-13第一次养猫的人养什么品种比较合适?
- 11-13大学新生活不适应?送你舒心指南! 大学新生的不适应主要有哪些方面
- 11-13第一次倒班可能会让人感到有些不适应,以下是一些建议
- 11-13货物大小不同装柜算法有哪些?怎么算?区别有哪些?
- 11-13五大基本算法 五大基本算法是什么
- 11-13高级程序员必备:分治算法分享 分冶算法
- 11-13最快速的寻路算法 Jump Point Search
- 11-13手机实时人工智能之「三维动作识别」:每帧只需9ms
- 最近发表
- 标签列表
-
- oraclesql优化 (66)
- 类的加载机制 (75)
- feignclient (62)
- 一致性hash算法 (71)
- dockfile (66)
- 锁机制 (57)
- javaresponse (60)
- 查看hive版本 (59)
- phpworkerman (57)
- spark算子 (58)
- vue双向绑定的原理 (68)
- springbootget请求 (58)
- docker网络三种模式 (67)
- spring控制反转 (71)
- data:image/jpeg (69)
- base64 (69)
- java分页 (64)
- kibanadocker (60)
- qabstracttablemodel (62)
- java生成pdf文件 (69)
- deletelater (62)
- com.aspose.words (58)
- android.mk (62)
- qopengl (73)
- epoch_millis (61)
本文暂时没有评论,来添加一个吧(●'◡'●)