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

WSL 2 Oracle Linux 9.1 安装配置

文章目录

  • 环境
  • 使用体验
  • 安装 Oracle Linux 9.1
  • 修改默认存储路径
  • 默认 root 用户登录
  • 启用 systemd
  • 启用 SSH 连接
  • WSL 无法 ping 通宿主机和域名
  • WSL 使用主机代理(测试通过)
  • WSL 常用命令

环境

OS:Win11 24H2 (OS 内部版本26120.1252)
wsl --version 执行结果
WSL 版本: 2.3.11.0
内核版本: 6.6.36.3-1
WSLg 版本: 1.0.63
MSRDC 版本: 1.2.5326
Direct3D 版本: 1.611.1-81528511
DXCore 版本: 10.0.26100.1-240331-1435.ge-release
Windows 版本: 10.0.26120.1252

使用体验

首次使用还是有一些坑的,特此记录
Windows Subsystem for Linux 比 VMware 虚拟机

  1. 更轻量
  2. 启动速度快
  3. 资源占用低

安装 Oracle Linux 9.1

# 查看可安装的有效分发
wsl -l -o
或
wsl --list --online
# 2024.7 执行结果
以下是可安装的有效分发的列表。
使用 'wsl.exe --install <Distro>' 安装。NAME                                   FRIENDLY NAME
Ubuntu                                 Ubuntu
Debian                                 Debian GNU/Linux
kali-linux                             Kali Linux Rolling
Ubuntu-18.04                           Ubuntu 18.04 LTS
Ubuntu-20.04                           Ubuntu 20.04 LTS
Ubuntu-22.04                           Ubuntu 22.04 LTS
Ubuntu-24.04                           Ubuntu 24.04 LTS
OracleLinux_7_9                        Oracle Linux 7.9
OracleLinux_8_7                        Oracle Linux 8.7
OracleLinux_9_1                        Oracle Linux 9.1
openSUSE-Leap-15.5                     openSUSE Leap 15.5
SUSE-Linux-Enterprise-Server-15-SP4    SUSE Linux Enterprise Server 15 SP4
SUSE-Linux-Enterprise-15-SP5           SUSE Linux Enterprise 15 SP5
openSUSE-Tumbleweed                    openSUSE Tumbleweed
# 安装 Oracle Linux 9.1
wsl --install OracleLinux_9_1

修改默认存储路径

防止 C 盘爆满

wsl --shutdown
wsl -l -v# 旧路径导出
wsl --export OracleLinux_9_1 E:\OracleLinux_9_1.tar# 删除旧的
wsl --unregister OracleLinux_9_1# 导入新路径
# wsl --import <DistroName> <InstallLocation> <InstallTarFile>
wsl --import OracleLinux_9_1 E:\WSL\OracleLinux_9_1 E:\OracleLinux_9_1.tar# E:\OracleLinux_9_1.tar 可删除

默认 root 用户登录

# 切换至 root
sudo su
# 重置 Root 密码
passwd# WSL 默认 root 用户登录
vim /etc/wsl.conf
[user]
default=root # 首次启动 WSL 会话时以哪个用户身份运行

启用 systemd

默认无法使用 systemctl 命令

https://learn.microsoft.com/zh-cn/windows/wsl/wsl-config#systemd-support

vim /etc/wsl.conf[boot]
systemd=truewsl --shutdown
wsl

启用 SSH 连接

yum -y install openssh-server# 允许 root 用户 ssh 登录(非必须)
vim /etc/ssh/sshd_config# 编辑内容如下
Port=22 # 启用端口号22
ListenAddress 0.0.0.0 # 监听所有地址
PermitRootLogin yes # 是否允许 root 账户登录
PasswordAuthentication yes # 是否支持账号密码形式的登录systemctl restart sshd
systemctl status sshd
systemctl enable sshd

WSL 无法 ping 通宿主机和域名

宿主机管理员终端(powershell)执行

# 移除旧的防火墙规则
Remove-NetFirewallRule -DisplayName "WSL"
# 新增防火墙规则,在 https://blog.csdn.net/u011526331/article/details/134782442 第五步查看网络连接名称,此处为 vEthernet (WSL (Hyper-V firewall))
New-NetFirewallRule -DisplayName "WSL" -Direction Inbound -InterfaceAlias "vEthernet (WSL (Hyper-V firewall))" -Action Allow
# 重启
wsl --shutdown

WSL 使用主机代理(测试通过)

# 开启代理# 从 resolv.conf 获取的 IP 不正确,为 10.255.255.254
# hostip=$(cat /etc/resolv.conf | grep nameserver | awk '{ print $2 }')
# CatV 用户查看位置:设置 > 局域网连接右侧图标 > vEthernet (WSL (Hyper-V firewall)) > IP 地址
hostip=172.23.128.1
port=your port
PROXY_HTTP="http://${hostip}:${port}"
export http_proxy="${PROXY_HTTP}"
export https_proxy="${PROXY_HTTP}"# 同时需要在宿主机添加防火墙规则
管理员 powershell
Remove-NetFirewallRule -DisplayName "WSL"
New-NetFirewallRule -DisplayName "WSL" -Direction Inbound -InterfaceAlias "vEthernet (WSL)" -Action Allow
# 关闭代理
unset http_proxy
unset https_proxy# 查看环境变量
echo $http_proxy
echo $https_proxy

WSL 常用命令

# 运行指定发行版
wsl --distribution <distribution>
# 停止某个分发版
wsl -t <distribution>
# 立即终止所有正在运行的分发和 WSL 2 轻型工具虚拟机
wsl --shutdown
# 显示有关所有分发的详细信息
wsl -l -v
# 卸载指定分发版
wsl --unregister <distribution>
wsl --status
# 检查更新
wsl --update

一切正常的配置

[root@LAPTOP-JPRG2D01 username]# cat /etc/resolv.conf
# [network]
# generateResolvConf = false
nameserver 10.255.255.254[root@LAPTOP-JPRG2D01 username]# cat /etc/wsl.conf
[boot]
systemd=true
[network]
# 是否将 WSL 设置为生成 /etc/resolv.conf。 resolv.conf 包含能够将给定主机名解析为其 IP 地址的 DNS 列表。
generateResolvConf = false
[user]
default=root

/etc/wsl.conf 和 %UserProfile%/.wslconfig 区别

  • wsl.conf 用于为在 WSL 1 或 WSL 2 上运行的每个 Linux 发行版按各个发行版配置本地设置,位于从机

  • .wslconfig 用于在 WSL 2 上运行的所有已安装发行版中配置全局设置,位于主机

http://www.lryc.cn/news/405338.html

相关文章:

  • MySQL日志文件详解
  • MySQL零散拾遗(三)
  • 鸿蒙 使用 Refresh 实现下拉刷新
  • 【JavaScript 算法】图的遍历:理解图的结构
  • Ubuntu 中默认的 root 用户密码
  • Rust编程-高级特性
  • JavaRegexImprove练习(1) (2024.7.22)
  • 基于YOLO模型的鸟类识别系统
  • WebRTC通话原理(SDP、STUN、 TURN、 信令服务器)
  • 面试场景题系列--(1)如果系统的 QPS 突然提升 10 倍该怎么设计?--xunznux
  • 【数学建模】——前沿图与网络模型:新时代算法解析与应用
  • 视频分帧【截取图片】(YOLO目标检测【生成数据集】)
  • Redis7(二)Redis持久化双雄
  • 发布支持TS的npm包
  • 计算机视觉9 全卷积网络
  • 02.C++入门基础(下)
  • 【数据结构】探索排序的奥秘
  • 数据结构面试知识点总结3
  • python-爬虫实例(5):将进酒,杯莫停!
  • AGI 之 【Hugging Face】 的【从零训练Transformer模型】之二 [ 从零训练一个模型 ] 的简单整理
  • 十大排序的稳定性和时间复杂度
  • 【系列教程之】1、点亮一个LED灯
  • 搜维尔科技:Manus Metagloves使用精确的量子跟踪技术捕捉手部每一个细节动作
  • 机器学习 | 阿里云安全恶意程序检测
  • python打包exe文件-实现记录
  • 基本的DQL语句-单表查询
  • Vue3 对比 Vue2
  • 2024中国大学生算法设计超级联赛(1)
  • offer题目51:数组中的逆序对
  • 45、PHP 实现滑动窗口的最大值