windows wsl2工作环境

安装linux版本前准备

参考: https://www.cnblogs.com/xiaoliangyuu/p/15506352.html

不管您想要使用哪个版本的 WSL,都首先需要启用它。
以管理员身份打开命令行:

dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart

WSL 2 需要启用 Windows 10 的 “虚拟机平台” 特性。它独立于 Hyper-V,并提供了一些在 Linux 的 Windows 子系统新版本中可用的更有趣的平台集成。以管理员身份打开命令行:

dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart

重启计算机。

设置 WSL 2 为默认值:

wsl --set-default-version 2

安装wsl_update_x64.msi。下载地址: https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msi

安装ubuntu

可能需要修改dns:
8.8.4.4

114.114.115.115

C:\> ipconfig /flushdns
C:\>set http_proxy=http://127.0.0.1:8080
C:\>set https_proxy=http://127.0.0.1:8080
C:\>wsl -l -o
以下是可安装的有效分发的列表。
使用 '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
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

C:\>wsl --install -d Ubuntu-22.04
Ubuntu 22.04 LTS 已安装。
正在启动 Ubuntu 22.04 LTS...
Installing, this may take a few minutes...
Please create a default UNIX user account. The username does not need to match your Windows username.
For more information visit: https://aka.ms/wslusers
Enter new UNIX username: 
New password:
Retype new password:
passwd: password updated successfully
Installation successful!
To run a command as administrator (user "root"), use "sudo <command>".
See "man sudo_root" for details.

Welcome to Ubuntu 22.04.2 LTS (GNU/Linux 5.15.90.1-microsoft-standard-WSL2 x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/advantage


This message is shown once a day. To disable it please create the
/home/ubuntu/.hushlogin file.

直接将ubuntu安装到默认位置,因为卸载后默认的安装文件都没了,数据可以保存在 /mnt 的c盘d盘等里面

设置国内源

清华源: https://mirrors.tuna.tsinghua.edu.cn/help/ubuntu/

sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak

sudo vi /etc/apt/sources.list

# 默认注释了源码镜像以提高 apt update 速度,如有需要可自行取消注释
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-updates main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-updates main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-backports main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-backports main restricted universe multiverse

# deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-security main restricted universe multiverse
# # deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-security main restricted universe multiverse

deb http://security.ubuntu.com/ubuntu/ jammy-security main restricted universe multiverse
# deb-src http://security.ubuntu.com/ubuntu/ jammy-security main restricted universe multiverse

# 预发布软件源,不建议启用
# deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-proposed main restricted universe multiverse
# # deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-proposed main restricted universe multiverse

更新: sudo apt-get update && sudo apt-get upgrade

更新错误: E: Release file for http://security.ubuntu.com/ubuntu/dists/jammy-security/InRelease is not valid yet (invalid for another 7h 17min 15s). Updates for this repository will not be applied.

解决方案:

sudo apt install ntp 
sudo service ntp restart 

安装xfce4

sudo apt-get install tasksel && sudo tasksel

选择安装 Xfce 4 环境,安装过程中, unpacking firefox可能花费的时间比较久

切换环境:

$ sudo update-alternatives --config x-session-manager
[sudo] password for ubuntu:
There are 3 choices for the alternative x-session-manager (providing /usr/bin/x-session-manager).

  Selection    Path                    Priority   Status
------------------------------------------------------------
* 0            /usr/bin/gnome-session   50        auto mode
  1            /usr/bin/gnome-session   50        manual mode
  2            /usr/bin/startxfce4      50        manual mode
  3            /usr/bin/xfce4-session   40        manual mode

Press <enter> to keep the current choice[*], or type selection number: 2
update-alternatives: using /usr/bin/startxfce4 to provide /usr/bin/x-session-manager (x-session-manager) in manual mode

win10:使用无线网络情形

无线局域网适配器 WLAN:

   IPv4 地址 . . . . . . . . . . . . : 192.168.0.4
   子网掩码  . . . . . . . . . . . . : 255.255.255.0
   默认网关. . . . . . . . . . . . . : 192.168.0.1

以太网适配器 vEthernet (WSL):

   连接特定的 DNS 后缀 . . . . . . . :
   IPv4 地址 . . . . . . . . . . . . : 192.168.32.1
   子网掩码  . . . . . . . . . . . . : 255.255.240.0
   默认网关. . . . . . . . . . . . . :

ipconfig 获得windows的IP: 192.168.0.4

vi ~/.bashrc ,添加

export DISPLAY=192.168.0.4:0.0

重新加载:source ~/.bashrc

win10:使用有线网络情形

> ipconfig

Windows IP 配置


以太网适配器 以太网:

   连接特定的 DNS 后缀 . . . . . . . :
   IPv4 地址 . . . . . . . . . . . . : 192.168.31.193
   子网掩码  . . . . . . . . . . . . : 255.255.255.0
   默认网关. . . . . . . . . . . . . : 192.168.31.1

ipconfig 获得windows的IP: 192.168.31.193

vi ~/.bashrc ,添加

export DISPLAY=192.168.31.193:0.0

重新加载:source ~/.bashrc

禁用 wayland"

参考: https://github.com/microsoft/wslg

创建 c:\users\MyUser\.wslconfig ,添加如下内容后关闭wsl: wsl –shutdown

[wsl2]
guiApplications=false

使用 MobaXterm 配置WSL session

其他

语言支持:

sudo apt install -y language-pack-zh-hans

sudo update-locale LANG=zh_CN.UTF-8

设置代理

sudo apt install ssh proxychains curl vim net-tools fontconfig

mkdir ~/.ssh

vi ~/.ssh/config ,添加如下内容

Host *
 ServerAliveInterval 60
 ServerAliveCountMax 30

本地SSH Client每隔60s向Server端SSHD发送 keep-alive 包,如果发送30次, Server端还无回应则断开连接

设置SSH无密码登录,参考:https://www.linuxdashen.com/ssh-key

参考 结合SSH Tunnel和AutoProxy插件上网, 使用MobaXterm 连接WSL2 运行如下命令建立tunnel (用MobaXterm 可以方便的防止断链)

ssh -C -D 1080 username@server_ip
  • 参数 -C 表示启用压缩,可以加快访问速度

  • 参数 -D 则是关键,表示启用local “dynamic”应用级别的端口转发,本地会分配一个socket监听指定端口1080(实际上你可以指定任何端口,这里1080仅仅是举例)

测试代理: curl –socks5-hostname 127.0.0.1:1080 https://www.google.com/

代理设置:

sudo vi /etc/proxychains.conf

[ProxyList]
# add proxy here ...
# meanwile
# defaults set to "tor"
#socks4         127.0.0.1 9050
socks5  127.0.0.1 1080

命令行使用代理:sudo proxychains apt-get update

开启systemd

运行: ps –no-headers -o comm 1

如果命令返回的是 init 说明systemd未启用,如果是 systemd 那么你的systemd已启用成功了

# 新建wsl.conf文件
sudo vi /etc/wsl.conf
# 将以下内容添加到wsl.conf并保存文件
[automount]
root = /
options = "metadata"
[boot]
systemd = true
# 关闭wsl
wsl --shutdown
# 重新启动Ubuntu,运行sudo systemctl status命令或systemctl ,即可看到Systemd服务

可以执行sudo reboot 重启 wsl2

使用windows字体

安装字体管理工具

sudo proxychains apt-get install ttf-mscorefonts-installer fontconfig net-tools

创建子图目录,拷贝win中字体到该目录下

sudo mkdir /usr/share/fonts/winfonts

sudo cp /mnt/c/windows/Fonts/* /usr/share/fonts/winfonts

更新字体: sudo mkfontscale && sudo mkfontdir && sudo fc-cache -fsv

文档阅读器:sudo apt-get install evince

字体发虚的问题:sudo vi /etc/fonts/fonts.conf

将以下配置拷贝至/etc/fonts/fonts.conf结尾的之前,保存后退出, 等个几秒钟,或者注销下系统,应该就能看出效果了

<match target="font">
  <test name="family"><string>simsun</string></test>
  <edit name="globaladvance"><bool>false</bool></edit>
</match>

<match target="font">
  <test name="family"><string>simsun</string></test>
  <edit name="globaladvance"><bool>false</bool></edit>
</match>

<match target="font">
  <edit name="antialias"><bool>true</bool></edit>
  <edit name="hinting"><bool>false</bool></edit>
  <edit name="autohint"><bool>false</bool></edit>
</match>

<match target="font">
  <test name="pixelsize" compare="more_eq"><double>12</double></test>
  <test name="pixelsize" compare="less_eq"><double>16</double></test>
  <edit name="antialias"><bool>false</bool></edit>
  <edit name="hinting"><bool>true</bool></edit>
  <edit name="autohint"><bool>false</bool></edit>
</match>
————————————————
版权声明:本文为CSDN博主「pachleng」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/pachleng/article/details/6387344

精简软件

sudo apt-get purge libreoffice*
sudo snap remove firefox

sudo apt-get clean

sudo apt-get autoremove

配置 locales

安装locales并配置:sudo dpkg-reconfigure locales

按空格选择,选择语言编码en_US.UTF8,zh_CN GB2312,zh_CN GBK GBK,zh_CN GB18030 GB18030,zh_CN UTF-8 UTF-8, 为当前用户配置默认语言为中文zh_CN UTF-8 UTF-8

vim ~/.bashrc

在.bashrc最后添加一行

export LANG=zh_CN.UTF-8

安装中文字体 sudo apt install fonts-wqy-zenhei

更新字体: sudo mkfontscale && sudo mkfontdir && sudo fc-cache -fsv

卸载 WSL发行版

wsl --list
适用于 Linux 的 Windows 子系统分发版:
Debian (默认)
Ubuntu-22.04

wsl --unregister Debian
正在注销...

wsl --list
适用于 Linux 的 Windows 子系统分发版:
Ubuntu-22.04 (默认)

windows terminal

设置,添加新的配置文件,加入ubuntu

迁移虚机到D盘

创建文件夹 D:\wsl_ubuntu, 执行如下操作(第一次运行前,设置默认用户)

wsl --export Ubuntu-22.04 d://wsl_ubuntu//ubuntu-22.04.tar
wsl --unregister Ubuntu-22.04
wsl --import Ubuntu-22.04 d://wsl_ubuntu d://wsl_ubuntu//ubuntu-22.04.tar
ubuntu2204 config --default-user ubuntu

正文完
 0
评论(没有评论)