离线 Linux 开发环境搭建

背景

无法连接外面的内网开发

通常需要打通如下:

  • 虚拟机和网络模式
  • VSCode 插件安装
  • 虚拟机软件安装

虚拟机和网络模式

虚拟机可以使用 Windows 自带的 Hyper-V

通常受限网络,网络模式更为复杂

Hyper-V 虚拟机有很多网络模式:

网络开机 IP 固定外部网络互通上网账号权限验证
Default SwitchNYY
外部网络YYN
外部网络 NAT 模式YYY

一般使用外部网络 NAT 模式基本能应对各种情况

步骤如下:

  • 添加Microsoft KM-TEST 环回适配器
  • 网卡设置Internet 连接共享

细节参考:

  • https://blog.51cto.com/u_14922620/2554085
  • https://blog.csdn.net/eeeew124_222/article/details/131056082
  • https://blog.csdn.net/z454280475/article/details/121012436

NAT 端口映射

类似以下命令:

netsh interface portproxy show all
netsh interface portproxy add v4tov4 listenaddress=192.168.11.68 listenport=1883 connectaddress=192.168.11.50 connectport=1883
netsh interface portproxy delete v4tov4 listenaddress=192.168.11.68 listenport=1883

细节参考:

  • https://www.cnblogs.com/shijiaqi1066/p/5138583.html

VSCode Remote SSH 安装

VSCode 插件下载地址: https://marketplace.visualstudio.com/VSCode

Remote-SSH 离线安装参考:

  • https://www.cnblogs.com/litaozijin/p/13202992.html

虚拟机软件安装

思路,内网和外网均创建一个环境一样的虚拟机

内网需要啥软件,外网虚拟机下载好安装包,拷贝至内网安装

比如初始同步 2 个虚拟机软件版本:

  • 下载外网虚拟机全部已安装软件的安装包
    dpkg --get-selections | grep -v deinstall | cut -f1 | xargs apt-get download
    
  • 拷贝至内网安装
    sudo dpkg -i *.deb
    

只安装某个软件:

sudo rm -f /var/cache/apt/archives/*.deb
sudo apt-get install --reinstall --download-only gcc
ll /var/cache/apt/archives

or

apt-get download gcc

如果这样下载缺少某些依赖,参考:

  • https://blog.csdn.net/zyang_6/article/details/130640014

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/793617.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

「33」如何让你的直播场景增加透视感?

「33」模糊滤镜增强背景画面透视感 在直播中,背景一直是作为一种陪衬而存在的,位于主场景的后面,其实,说得更直白一些,背景的存在就犹如“绿叶”,是为了衬托红花更加艳丽。所以…… 你通过画面背景的调整,可以从整体上对视频或图片的画面进行装饰,有助于增加画面的空间…

面试算法-127-优势洗牌

题目 给定两个长度相等的数组 nums1 和 nums2,nums1 相对于 nums2 的优势可以用满足 nums1[i] > nums2[i] 的索引 i 的数目来描述。 返回 nums1 的任意排列,使其相对于 nums2 的优势最大化。 示例 1: 输入:nums1 [2,7,11,…

【C++】vector问题解决(非法的间接寻址,迭代器失效 , memcpy拷贝问题)

送给大家一句话: 世界在旋转,我们跌跌撞撞前进,这就够了 —— 阿贝尔 加缪 vector问题解决 1 前言2 迭代器区间拷贝3 迭代器失效问题4 memcpy拷贝问题 1 前言 我们之前实现了手搓vector,但是当时依然有些问题没有解决&#xff…

牛市股票还会亏钱?--外观模式

1.1 牛市股票还会亏钱? 炒股,碰到熊市,亏得一塌糊涂。 "我们公司的人现在都在炒股票,其实大部分人都不太懂,就是因为现在股市行情很火,于是都在跟风呢!" 刚入市的人,什么都…

Day84:服务攻防-端口协议桌面应用QQWPS等RCEhydra口令猜解未授权检测

目录 端口协议-口令爆破&未授权 弱口令爆破 FTP:文件传输协议 RDP:Windows远程桌面协议 SSH:Linux安全外壳协议 未授权案例(rsync) 桌面应用-QQ&WPS&Clash QQ RCE 漏洞复现 WPS RCE 漏洞复现 Clas* RCE 漏洞复现 知识点…

【攻防世界】ics-05

php://filter 伪协议查看源码 preg_replace 函数漏洞 1.获取网页源代码。多点点界面,发现点云平台设备维护中心时,页面发生变化。 /?pageindex 输入什么显示什么,有回显。 用php://filter读取网页源代码 ?pagephp://filter/readconvert.…

设计模式 --5观察者模式

观察者模式 观察者模式的优缺点 优点 当一个对象改变的时候 需要同时改变其他对象的相关动作的时候 ,而且它不知道有多少具体的对象需要改变 应该考虑使用观察者模式 。观察者模式的工作就是解除耦合 让耦合双方都依赖与抽象 而不是具体 是的各自改变都不会影响另…

【文献分享】ALKEMIE:加速材料发现和设计的智能计算平台

题目:ALKEMIE: An intelligent computational platform for accelerating materials discovery and design 链接:DOI: 10.1016/j.commatsci.2020.110064 ALKEMIE:加速材料发现和设计的智能计算平台 摘要 通过传统的试错方式开发具有目标特性…

ChatGPT 的核心 GPT 模型:探究其生成式预训练变换架构的革新与应用潜力

GPT(Generative Pre-trained Transformer)模型是一种深度学习模型,由OpenAI于2018年首次提出,并在随后的几年中不断迭代发展,包括GPT-2、GPT-3以及最新的GPT-4。GPT模型在自然语言处理(NLP)领域…

领地选择

题源 二维前缀和 题目描述 作为在虚拟世界里统帅千军万马的领袖,小 Z 认为天时、地利、人和三者是缺一不可的,所以,谨慎地选择首都的位置对于小 Z 来说是非常重要的。 首都被认为是一个占地 CC 的正方形。小 Z 希望你寻找到一个合适的位置&am…

程序员如何赚美元的案例

偶然的契机让我走上了开发共享软件的道路。说起编写MP3 CD Maker,要追溯到1998年。当时国内掀起了VCD热潮,中关村很多家公司做起了VCD刻录软件的生意。 我也对这个市场很感兴趣,当时市面上刻录VCD的方法,是通过几种国外软件的组合…

ssm基于HTML5的出租车管理系统论文

摘 要 网络技术和计算机技术发展至今,已经拥有了深厚的理论基础,并在现实中进行了充分运用,尤其是基于计算机运行的软件更是受到各界的关注。加上现在人们已经步入信息时代,所以对于信息的宣传和管理就很关键。因此出租车信息的管…

Linux云计算之Linux基础3——Linux基本认识操作

1、终端 终端(terminal):人和系统交互的必要设备,人机交互最后一个界面(包含独立的输入输出设备) 物理终端(console):直接接入本机器的键盘设备和显示器虚拟终端(tty):通过软件方式虚拟实现的终端。它可以…

C++相关概念和易错语法(4)(构造函数、析构函数)

一、构造函数 1.实现的功能:实例化对象的时候默认自动调用,相当于初始化。 条件:在书写时要满足构造函数的规范(函数名 类名,不写返回值,也没有返回值),可以用inline来修饰。 2.自…

Spring中依赖注入的方法有几种,分别是什么?

依赖注入的目的: 都是为了减少对象之间的紧密耦合 1. 构造函数注入:通过在类的构造函数中接受依赖对象作为参数,Spring在创建对象时将依赖注入。 2. Setter方法注入:在类中提供setter方法,Spring通过调用这些setter方法…

Docker安装Memcached

要在Docker 中安装 Memcached,你可以使用官方提供的 Memcached 镜像。以下是安装的步骤: 首先确保已经安装了 Docker。如果还没有安装,请先安装 Docker。 使用以下命令从 Docker Hub 拉取 Memcached 镜像: docker pull memcach…

Qt模拟面试(超硬核)

1. 请简要介绍一下你的 Qt 开发经验。 建议:诚实地描述你的 Qt 经验,包括你使用过的 Qt 版本、开发过的项目类型、遇到的挑战以及如何解决它们。 假如你没有开发经验,可以提供一些关于 Qt 开发的一般信息和常见的经验分享。 Qt 是一个跨平…

4.6 offset指令,jmp short指令,far,dword ptr各种跳转指令

4.6 offset指令,jmp short指令,far,dword ptr各种跳转指令 可以修改IP,或同时修改CS和IP的指令统称为转移指令。概括的讲,转移指令就是可以控制CPU执行内存中某处代码的指令 1. 转移指令 1.1 8086CPU的转移行为有以…

按照指定的分隔符和次数从右侧开始分割字符串元素numpy.char.rsplit()

【小白从小学Python、C、Java】 【计算机等级考试500强双证书】 【Python-数据分析】 按照指定的分隔符和次数 从右侧开始分割字符串元素 numpy.char.rsplit() [太阳]选择题 请问关于以下代码表述错误的选项是? import numpy as np a np.array([a b c, x,y,z, 1 2,…

HackTheBox-Mist

整体思路 端口扫描->Pluck CMS组件文件读取漏洞->文件上传获取shell->创建指向exe的快捷方式来提权-> 信息收集&端口利用 namp -sSVC 10.10.11.17目标只开放了80端口,将mist.htb加入到hosts文件后,访问mist.htb Pluck CMS文件读取 在…