WSL2 GUI切换网络后保活(vsock)

WSL2切换网络或从睡眠启动后保活

使用x11-over-vsock可以解决切换网络或从睡眠启动后WSL网络重置导致的连接失效问题。

1. 从 github action中下载x11-over-vsock与x11-over-vsock.exe

2. 将x11-over-vsock复制到wsl2中的/usr/local/bin/目录下(注意文件权限)

3. 编译~/.bashrc,在下方添加

export DISPLAY=:0

if ! pgrep x11-over-vsock >> /dev/null 2>&1 ; then
    nohup x11-over-vsock > /dev/null < /dev/null 2>&1 &
    disown

    # sleep until $DISPLAY is up
    # while ! xset q > /dev/null 2>&1 ; do
    #    sleep 0.3
    # done
fi

4. 在win10上添加计划任务

  • 打开任务计划程序
  • 操作 → 创建任务...
  • 常规 (tab): 选中 使用最高权限运行
  • 触发器 (tab): 点击 新建, 在开始任务中选择登录时
  • 操作 (tab): 点击 新建,在操作中选择启动程序, 在程序或脚本里填写程序x11-over-vsock.exe的路径, 设置 添加参数--daemon
  • 条件 (tab): 取消选中 如果计算机改用电池电源,则停止只有在计算机使用交流电源时才启动此任务
  • 设置 (tab): 取消选中 如果任务运行时间超过以下时间,停止任务

5. 重启电脑,测试是否配置成功。

本篇文章由一文多发平台ArtiPub自动发布

你可能感兴趣的:(WSL2 GUI切换网络后保活(vsock))