WSL 安装 Arch 遇到的一些问题
没错,继物理机、VMware、VirtualBox之后,开始使用 WSL 了。原因是不想在折腾了,有很多时候需要用到 Windows,比如腾讯会议以及Office系列(还是担心WPS不兼容)。之所以使用 WSL,因为他和宿主机的无缝配合实在太香啦。
安装 WSL 和 Ubuntu
1. 通过 控制面板->程序->启用或关闭 Windows 功能 开启 虚拟机平台 和 适用于 Linux 的 Windows 子系统;
2. 略
安装 Xrdp 和 i3wm
- 安装、配置、启动 xrdp
$ sudo apt install xrdp -y #安装xrdp
$ sudo vim /etc/xrdp/xrdp.ini #将3389端口改为3390端口
$ sudo service xrdp start #启动xrdp服务
* Starting Remote Desktop Protocol server [ OK ]
- 测试远程连接
打开mstsc.exe
, 输入localhost:3390
, 在打开的窗口的窗口中输入用户名和密码, 查看是否成功进入。
- 安装i3
$ sudo apt install i3 -y #安装i3
$ sudo service xrdp stop #关闭xrdp服务
* Stopping Remote Desktop Protocol server [ OK ]
- 重启WSL2和进入i3
打开PowerShell, 运行wsl --shutdown
重启WSL 2, 在Ubuntu中$ sudo service xrdp start
重新打开xrdp服务,还是原来的页面,再次输入用户名和密码后,会进入i3的界面。
实现一键启动
现在已经不错了,但是每次都要先在WSL上开启Xrdp,然后在RDP上连接,输入用户名和密码,太麻烦了,现在来解决这个问题。
- 配置当前用户执行sudo命令免密码
# 创建配置文件
$ sudo vim /etc/sudoers.d/your_name
# 增加一行内容:your_name ALL=(ALL) NOPASSWD: ALL
- 创建一键启动脚本
# 创建脚本
$ vim ~/.local/bin/remote.sh
# 内容如下
sudo /etc/init.d/xrdp start
sleep 1 # 强制等待一秒,否则可能出现xrdp启动没完成导致无法连接
mstsc.exe /v:localhost:3390
# 给脚本加上可执行权限
$ chmod +x ~/.local/bin/remote.sh
# 测试
$ ~/.local/bin/remote.sh
- 配置xrdp保存登录账号密码
# 修改配置文件
$ sudo vim /etc/xrdp/xrdp.ini
# 找到`[Xorg]`配置部分,修改对应的条目
username=your_name
password=your_password
貌似登陆界面没法省略(就是那个OK按钮),不过也就一个回车键的事情。
- 创建一键启动快捷方式
在桌面上新建一个快捷方式,对象位置内容填写如下内容,最后双击试试。
wsl ~/.local/bin/remote.sh