WSL 2 Oracle Linux 9.1 安装配置

使用体验

Windows Subsystem for Linux 比 VMware 虚拟机

  1. 更轻量

  2. 启动速度快

  3. 资源占用低

安装 Oracle Linux 9.1

# 查看可安装的有效分发
wsl --list --online
# 安装 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 会话时以哪个用户身份运行

启用 systemctl

默认无法使用 systemctl 命令

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

vim /etc/wsl.conf

[boot]
systemd=true

wsl --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
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 }')
# 查看位置:clashV > 设置 > 局域网连接右侧图标 > 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}"

# 关闭代理
unset http_proxy
unset https_proxy

# 查看环境变量
echo $http_proxy
echo $https_proxy

# 同时需要在宿主机添加防火墙规则
管理员 powershell
Remove-NetFirewallRule -DisplayName "WSL"
New-NetFirewallRule -DisplayName "WSL" -Direction Inbound -InterfaceAlias "vEthernet (WSL)" -Action Allow

WSL 常用命令

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

一切正常的配置

[root@LAPTOP-JPRG2D01 pcdd]# cat /etc/resolv.conf
# [network]
# generateResolvConf = false
nameserver 10.255.255.254

[root@LAPTOP-JPRG2D01 pcdd]# 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 上运行的所有已安装发行版中配置全局设置,位于主机

相关推荐

  1. wsl-oraclelinux 固定ip

    2024-07-22 13:12:02       39 阅读
  2. WSL 2 Oracle Linux 9.1 安装配置

    2024-07-22 13:12:02       19 阅读
  3. WSL2-在Ubuntu-22.04上安装MySQL(deb包)并配置ODBC

    2024-07-22 13:12:02       34 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-22 13:12:02       52 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-22 13:12:02       54 阅读
  3. 在Django里面运行非项目文件

    2024-07-22 13:12:02       45 阅读
  4. Python语言-面向对象

    2024-07-22 13:12:02       55 阅读

热门阅读

  1. 项目进行到中后期,我发现开发改了代码

    2024-07-22 13:12:02       19 阅读
  2. OpenStack中nova的架构

    2024-07-22 13:12:02       14 阅读
  3. MCU常见相关术语缩写说明

    2024-07-22 13:12:02       13 阅读
  4. 【Statement对象】

    2024-07-22 13:12:02       18 阅读