Win10子系统Ubuntu实战(二)

在 Windows 10 中安装 Ubuntu 子系统(Windows Subsystem for Linux,简称 WSL)有几个主要的用途和好处:Linux 环境的支持、跨平台开发、命令行工具、测试和验证、教育用途。总体而言,WSL 提供了一种将 Windows 和 Linux 生态系统融合在一起的方式,为用户提供更灵活和多样化的开发和使用体验。本文将是系列文章的第二篇。
 

一、Ubuntu环境问题与解决方案

1、无法连外网

通过上篇文章,我们搞定了Ubuntu在局域网(内网)的通信,但是因为内网网卡没有连接外网,这样会导致安装Ubuntu软件的时候会失败,如下图:

 2、解决方案

(1)搭建内网源服务器

优点:

  • 在内网中搭建源服务器,可以加速软件的安装,减少对外网的依赖。
  • 内网服务器可以提供自定义软件包,满足特定需求。

缺点:

  • 需要维护源服务器,确保软件包及时更新。
  • 在初始设置和维护上可能需要一些额外的工作。

建议:

  • 这是一个良好的选择,特别是在一个相对封闭的内网环境中。

(2)手动安装软件包

优点:

  • 可以手动下载软件包并在离线环境中进行安装。

缺点:

  • 容易漏掉依赖项,可能需要手动解决依赖关系。
  • 不方便进行软件的更新。

建议:

  • 适用于安装较少的软件或者特定的软件包,但不适合大规模应用和频繁更新。

(3)增加一个Ubuntu子系统虚拟网卡连接外网

优点:

  • 可以通过新的虚拟网卡连接外网,实现对外通信。
  • 不需要额外的服务器维护。

缺点:

  • 可能需要一些额外的配置,特别是在 NAT 方式下。
  • 需要确保网络配置不与现有网络冲突。

建议:

  • 如果内网环境允许,这是一个灵活的选择。确保虚拟网卡的配置不干扰到其他网络。

(4)补充方案:

  • 另一个选择是使用代理服务器,通过代理服务器访问外网。这可以通过设置环境变量或者在 apt 配置中指定代理来实现。这对于临时需要访问外网的情况可能更为方便。

最终选择取决于你的具体需求、网络环境和管理复杂性。在做出决定之前,建议评估每个方案的可行性和适用性。

根据我的情况,上述方案我都不选,我选择必要时关闭或打开桥接的方式。

 二、解决过程

1、当前网卡情况

如下图,eth0对应的虚拟网卡是vEthernet(WSL),子系统用的也是该虚拟网卡。

2、连接外网

(1)选择网桥点击属性,接着取消桥接模式

(2)退出子系统并关闭

wsl --shutdown

(3) 重新进入子系统

(4)安装nfs验证联网

sudo apt-get update
sudo apt install nfs-kernel-server
sudo mkdir -p /mnt/justdoit
sudo chown nobody:nogroup /mnt/justdoit
sudo chmod 777 /mnt/justdoit
sudo nano /etc/exports# 最后一行写入以下配置/mnt/justdoit *(rw,sync,no_subtree_check)# 或 写入最高权限/mnt/justdoit  *(rw,sync,no_root_squash,no_subtree_check)sudo systemctl restart nfs-kernel-server
sudo ufw disable

 执行上述指令后,nfs安装成功,并创建了nfs挂载点 /mnt/justdoit:

3、连接内网 

(1)选择网桥点击属性,接着选择桥接模式(虚拟网卡与内网网卡桥接)

(2)直接应用原先设置好的网卡设置

sudo netplan apply

(3)在局域网Linux设备上挂载

如下图,没有报错,挂载成功。

三、内网/外网切换技巧

1、可以增加一个shell脚本维护内网/外网切换

假如我们选择非桥接模式,那么我们可以设置一个网卡脚本,专门面向外网网卡的设置;

假如我们选择桥接模式,那么我们可以设置一个网卡脚本,专门面向内网网卡的设置,如上述方式,即应用指定网卡配置即可。

通过上述方式,在涉及内网和外网的网络配置时,通过设置不同的网卡脚本,可以提供更好的灵活性和维护性。下面是这种做法的好处:

内网/外网切换灵活性:

通过设置不同的网卡脚本,你可以轻松地切换系统连接的网络环境。例如,你可以在需要时快速切换到内网或外网,而无需手动配置每个网络环境。

维护简便:

使用脚本进行内网/外网的切换可以减少手动配置的工作量。当你需要切换网络环境时,只需运行相应的脚本即可,而不必手动更改网络配置。

避免配置混淆:

在桥接模式下,内网和外网可能会使用不同的网卡,因此通过设置专门的网卡脚本,可以避免配置混淆。你可以为每个网络环境设置特定的配置,而不会影响其他环境。

避免误操作:

通过使用脚本,可以减少由于手动配置而引起的错误。配置文件的结构化和注释可以提高脚本的可读性,减少误操作的风险。

提高自动化程度:

脚本可以集成到自动化工作流中,例如部署脚本、自动化测试等。这有助于提高整体系统的自动化程度,减少人工介入。

快速部署和重现:

使用脚本可以更容易地在不同的系统上部署相同的配置,从而提高配置的可重现性。这对于在多个环境中快速部署相同的网络配置非常有用。

总体而言,通过使用脚本进行内网/外网切换,可以使网络配置更加灵活、简便,减少配置错误的可能性,提高系统的可维护性和自动化程度。

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

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

相关文章

使用PyTorch实现去噪扩散模型

在深入研究去噪扩散概率模型(DDPM)如何工作的细节之前,让我们先看看生成式人工智能的一些发展,也就是DDPM的一些基础研究。 VAE VAE 采用了编码器、概率潜在空间和解码器。在训练过程中,编码器预测每个图像的均值和方差。然后从高斯分布中对…

【Blog】记录一下如何让自己的自建网站让百度搜索收录

记录一下如何让自己的自建网站让百度搜索收录 目录 记录一下如何让自己的自建网站让百度搜索收录一、前言二、开始操作1、第一步:进入设置2、第二步:开始设置3、第三步:让百度收录我们自己的文章 三、知识点记录1、注意事项2、可能会出现的问…

Python文件自动化处理

os模块 Python标准库和操作系统有关的操作创建、移动、复制文件和文件夹文件路径和名称处理 路径的操作 获取当前Python程序运行路径不同操作系统之间路径的表示方式 windows中采用反斜杠(\)作为文件夹之间的分隔符 Mac和Linux中采用斜杠(/)作为文件夹之间的分隔符 把文件…

苹果应用上架是否需要软件著作权?

苹果应用上架是否需要软件著作权? 摘要 随着移动互联网的发展,苹果应用在市场上占据了很大份额。但是,很多开发者在上传苹果应用到App Store时,都会遇到一个问题,即是否需要进行软著申请?本文将深入探讨这…

什么牌子护眼灯好,防蓝光?安利防蓝光好用的护眼台灯

在我们小时候,并没有护眼灯这一概念,写作业的主要光源还是家中的白炽灯,有条件的会在桌上摆个台灯,但室内环境仍显得比较昏暗。如今的孩子学习环境相比我们小时候有了很大升级,家长对视力健康也更重视,护眼…

蓝桥杯练习题(三)

📑前言 本文主要是【算法】——蓝桥杯练习题(三)的文章,如果有什么需要改进的地方还请大佬指出⛺️ 🎬作者简介:大家好,我是听风与他🥇 ☁️博客首页:CSDN主页听风与他 …

Java高级工程师20道面试题、答案及案例

文章目录 Java高级工程师面试题、答案及案例: 问题: 在Java中,如何实现线程安全的单例模式?请写出双重检查锁定(Double-Checked Locking)的实现方式。 答案与案例: public class Singleton {pri…

python数据结构堆栈

堆 堆是一种树形结构:满足两个主要性质 堆是一种完全二叉树:堆中所有层级除了最后一层都是完全填满的,且最后一层的节点都是向左排列堆中的任意节点都不大于(或不小于)其子节点的值,这也是堆的属性 impo…

探索预训练模型的前沿与挑战

目录 前言1 Masked 语言模型2 跨语言模型3 跨模态模型4 GPT-3语言模型5 T5: Text-to-Text 统一框架6 Mixture of Experts (MoE)结语 前言 近年来,预训练语言模型(PLM)领域取得了巨大的进展,开创了多个家庭成员,每个成…

现代密码学 考点复盘

现代密码学 考点汇总(上) 写在最前面考试范围一、给一个简单的方案,判断是否cca安全二、随机预言机模型之下的简单应用 考试题目1.证明CBC方案是CPA安全的2. 证明哈希函数的抗碰撞性3. CBC-MAC安全:证明CPA安全的对称密钥加密方案…

Python-高阶函数

在Python中,高阶函数是指能够接收函数作为参数,或者能够返回函数的函数。这种特性使得函数在Python中可以被灵活地传递和使用。以下是一些关于Python高阶函数的详细解释: 函数作为参数: 高阶函数可以接收其他函数作为参数。这样的…

复试 || 就业day14(2024.01.10)算法篇

文章目录 前言字符串中第二大的数字字符串中不同整数的数目判断句子是否为全字母句长度为三且各字符不同的子字符串检查是否区域内所有整数都被覆盖*重新分配字符使所有字符串都相等可以输入的最大单词数检查是否所有字符出现次数相同差的绝对值为 K 的数对数目至少在两个数组中…