WSL开发环境搭建(kali-linux篇)
安装kali-linux并简单配置
基于Debian的发行版,软件包丰富,且滚动更新,软件包较新,能够获得最新的编程语言特性。同时kali有Win-KeX会话,可以很方便的进入桌面环境而不需要借助第三方软件(如VcXsrv)
- 打开管理员终端,输入
1 |
|
重启电脑
下载内核更新包
安装内核更新包后重启
打开管理员终端,输入
1 |
|
从微软应用商店安装kali-linux
从开始菜单打开kali-linux,输入全小写英文字母用户名,设置好密码
若发生错误,请检查系统设置
保存新内容的地方
为C盘
- 进入系统后,输入
1 |
|
之后关闭kali-linux,在Windows终端输入
1 |
|
之后再次打开kali-linux即可使用zsh
- 修改root密码
输入sudo su
, 并输入刚刚设置的(管理员)密码, 进入root
用户, 接着输入passwd
修改root
密码即可
- 换源
1 |
|
编辑 /etc/apt/sources.list
文件, 在文件最前面添加以下条目:
1 |
|
保存退出
- 更新系统
1 |
|
WSL上的kali-linux为最小安装版本,没有预安装入狱所需的工具,如有需要,请参考启动kali后的提示信息
高级配置
此配置可能仅适用于Windows11
打开Windows终端,导航到Windows家目录,新建.wslconfig
文件,输入以下内容:
1 |
|
networkingMode=mirrored
为镜像网络模式
,可以直接使用Windows本地代理autoMemoryReclaim=gradual
意思是检测空闲CPU使用率后,自动缓慢释放缓存的内存
运行GUI应用
Windows安装完显卡驱动程序后,此选项应该开箱即用。
可以先使用wsl.exe --update
更新再启动
可以尝试安装以下软件
1 |
|
出现错误可以参考微软文档
安装完成后,终端输入xcalc
或nautilus
回车即可开启这些GUI应用
配置kali-linux Win-KeX会话
Win-KeX provides a GUI desktop experience for kali Linux in Windows Subsystem for Linux (WSL 2) with the following features:
- Window mode: start a kali Linux desktop in a dedicated window
- Seamless mode: share the Windows desktop between Windows and kali application and menus
- Enhanced session mode: Similar to Hyper-V, uses RDP for a more feature rich experience
- Sound support
- Shared clipboard for cut and paste support between kali Linux and Windows
- Root & unprivileged session support
- Multi-session support: root window & non-privileged window & seamless sessions concurrently
- Fully compatible with WSLg
打开kali终端,输入
1 |
|
有三种模式运行窗口化界面:
- Window Mode
- Inside of kali WSL:
kex --win -s
- On Window’s command prompt:
wsl -d kali-linux kex --win -s
- Inside of kali WSL:
- Enhanced Session Mode
- Inside of kali WSL:
kex --esm --ip -s
- On Window’s command prompt:
wsl -d kali-linux kex --esm --ip -s
- Inside of kali WSL:
- Seamless Mode
- Inside of kali WSL:
kex --sl -s
- On Window’s command prompt:
wsl -d kali-linux kex --sl -s
- Inside of kali WSL:
更多信息参阅开头参考链接
配置中文环境
输入下列命令安装字体
1 |
|
接着打开字符集配置
1 |
|
空格选中es_US.UTF-8 UTF-8
以及zh_CN.UTF-8 UTF-8
按下OK后选择默认字符集zh_CN.UTF-8 UTF-8
保存退出,重启wsl
输入sudo apt update
可以查看效果
接下来可以把man手册页换成中文:
1 |
|
输入man printf
查看效果
安装编译环境,配置VScode
先安装以下软件包
1 |
|
在Windows上安装vscode
重启电脑使Path
环境变量生效
安装必要的插件,比如中文,clangd,Java,python,GitHub Copilot,Remote Development等等,按需安装
在kali的终端输入code .
打开vscode后,按需安装插件,主题等
更多信息参考OI-Wiki
Docker开发
Latex写作
首先在kali的终端输入
1 |
|
然后在vscode里安装LaTeX Workshop
插件即可
在WSL上配置深度学习框架
安装CUDA
这一步不适用于AMDGPU以及嵌套虚拟化的WSL
不能在WSL上安装Linux上的显卡驱动程序
更多信息,请查看开头参考链接
- 先删除旧GPG密钥
1 |
|
进入网站,检查以下配置是否正确
target_os=Linux
target_arch=x86_64
Distribution=WSL-Ubuntu
target_version=2.0
target_type=deb_network
根据提示输入
1 |
|
- 安装完成后,终端输入
nvidia-smi
检查驱动程序和cuda
版本
配置深度学习环境
更多信息请参考开头所示链接
- 安装miniconda
直接在终端输入
1 |
|
- 初始化终端
1 |
|
关闭终端重新打开,会看到
base
字样,代表处于base
环境创建一个新环境
1 |
|
- 激活新环境
1 |
|
- 安装PyTorch的CPU或GPU版本
1 |
|
- 安装d2l包
1 |
|
- 下载 D2L Notebook
1 |
|
最后可以通过
jupyter notebook
运行Jupyter笔记本,(需要在pytorch文件夹下)浏览器打开http://localhost:8888即可学习在运行书籍代码、更新深度学习框架或d2l软件包之前,请始终执行
conda activate d2l
以激活运行时环境。 要退出环境,请运行conda deactivate
迁移WSL
打开Windows终端,输入下列命令:
1 |
|
迁移后默认以root
身份进入,接下来进入WSL编辑/etc/wsl.conf
文件。假设yoimiya
是之前的默认用户名:
1 |
|
注意:上述配置可能仅适用于win11
开启systemd后,如果WSLg无法启动,请手动执行
sudo rm -r /tmp/.X11-unix && ln -s /mnt/wslg/.X11-unix /tmp/.X11-unix
命令
之后保存退出,重启kali即可