标签: wsl-2

Ubuntu 20.04 LTS WslRegisterDistribution 失败,错误:0x800701bc

安装 Ubuntu 22.04 LTS 时出错。

可能的解决方案:

  1. 在BIOS中启用CPU虚拟化。
  2. 安装 Linux 内核更新。(对我有用!):在 linux 上安装更新。安装完成后,打开Windows PowerShell并写入wsl --set-default-version 2并完成!问题解决了!

ubuntu wsl-2

15
推荐指数
2
解决办法
7万
查看次数

如何在 WSL2 上的 Ubuntu 20.04 中提高打开文件的限制?

我的设置如下所示:Windows 10, Release 1909 (Build 18363.1082),在 Ubuntu 20.04 环境中使用 WSL2。大多数时候一切都很好,但有些问题我无法解决。

在使用parcel(React bundler) 进行开发期间,我遇到了 bundler 显然同时打开大量文件的问题,并且在某个时候,我遇到了以下问题:

EMFILE: too many open files, open '/home/myusername/Projects/some-project-path/node_modules/@material-ui/icons/esm/RoundedCornerRounded.js'
Run Code Online (Sandbox Code Playgroud)

由于parcel看似不容易支持使用类似的东西graceful-fs,我试图增加在 Ubuntu 环境中打开文件的限制。到目前为止我尝试过的:

  • 一个简单的ulimit -n 4096(默认情况下是最高的),但显然(到目前为止?)还不够
  • 我尝试增加到fs.files-max非常高的值/etc/sysctl.conf,但它似乎没有效果(无论sysctl -p是在 重启之后还是重启之后wsl
  • 我也尝试增加fs.inotify.max_user_watches,但这似乎也没有效果
  • 还设置软硬限制/etc/security/limits.conf似乎没有效果
  • 我还发现,信息变更DefaultLimitNOFILE/etc/systemd/system.conf可以有效果(所以我这样做,以及)

有没有人设法在 WSL2 上的 Ubuntu 20.04 上解决类似的系统?这让我很困惑,它阻止我parcel在这个环境中使用。这真的很遗憾,因为其他一切都运行良好。


更新

所以我发现我在不同地方(可能是/etc/security/limits.conf)的变化产生了某种影响。只是在直接登录时不会。这说明了这一点:

donmartin@SOMEMACHINE:~$ ulimit -Hn
4096
donmartin@SOMEMACHINE:~$ su donmartin
Password: …
Run Code Online (Sandbox Code Playgroud)

ulimit windows-subsystem-for-linux parceljs wsl-2

14
推荐指数
1
解决办法
4954
查看次数

Xdebug: [Step Debug] 无法连接到调试客户端。试过: localhost:9003(通过 xdebug.client_host/xdebug.client_port 回退):-(

xdebug ang php 的此消息的解决方法是什么?

Xdebug: [Step Debug] Could not connect to debugging client. Tried: localhost:9003 (fallback through xdebug.client_host/xdebug.client_port) :-(
Run Code Online (Sandbox Code Playgroud)

当我composer updateWSL2安装时运行时显示此消息UBUNTU 20.01

我当前的 php 版本是 php8xdebug3

更新:

这是 x-debug 部分

xdebug

__   __   _      _
\ \ / /  | |    | |
 \ V / __| | ___| |__  _   _  __ _
  > < / _` |/ _ \ '_ \| | | |/ _` |
 / . \ (_| …
Run Code Online (Sandbox Code Playgroud)

php wsl-2 ubuntu-20.04 xdebug-3

14
推荐指数
1
解决办法
7779
查看次数

在 Ubuntu WSL 中,如何存储永久环境变量?

我已经尝试过,但每次重新启动系统时,我的变量都会消失。

如何在 Ubuntu WSL2 上永久存储环境变量?

ubuntu environment-variables windows-subsystem-for-linux wsl-2

14
推荐指数
3
解决办法
3万
查看次数

如何使用 Visual Studio 和 WSL 2 调试 .NET Core 单元测试?

借助 Visual Studio,我可以调试在 Windows 和 WSL 2 中运行的 .NET Core 应用程序。对于 WSL 2,我使用此扩展。这工作正常。我还可以在 Windows 中调试我的单元测试。这也工作得很好。但是,我不知道如何使用在 WSL 2 中运行的 Visual Studio 来调试我的单元测试。我希望有人可以帮助我并解释我如何不仅可以调试 WSL 2 中的控制台应用程序和 Web 应用程序,还可以调试我的单元测试。请告诉我。

visual-studio .net-core windows-subsystem-for-linux .net-5 wsl-2

14
推荐指数
2
解决办法
3885
查看次数

WSL2使用“localhost”访问Windows服务

我在 Windows 10 上使用 WSL2。

我的开发堆栈在主机操作系统上使用本地网络服务器(localwp 或 wamp)。我使用 WSL2 作为主终端(SSH、Git、SASS、自动化工具……)。

我需要的是一种使用服务器名称而不是随机 IP 地址从 WSL2 系统连接到我的主机服务 (MySql) 的方法。

Windows 主机已经可以使用“localhost”连接到 WSL2 服务。有没有办法以其他方式做到这一点?

local windows-10 wsl-2

14
推荐指数
2
解决办法
2万
查看次数

如何修复 Windows Subsystem for Linux (WSL) 中的“错误:错误的 fsmonitor 版本 2”?

我确实安装了 Git Bash(WSL2 在大型 git 存储库(如 llvm 和 webkit)上仍然非常慢)。在 WSL2 Ubuntu 20.04 中:

matt@Surface2:/mnt/c/Users/matt/src/roact-alignment$ git --version
git version 2.25.1
Run Code Online (Sandbox Code Playgroud)

在命令中:

C:\Users\matt>git --version
git version 2.33.0.windows.1
Run Code Online (Sandbox Code Playgroud)

即使没有打开 cmd,我也会得到这个 git 操作:

matt@Surface2:/mnt/c/Users/matt/src/roact-alignment$ git pull
error: bad fsmonitor version 2
error: bad fsmonitor version 2
Run Code Online (Sandbox Code Playgroud)

git visual-studio-code windows-subsystem-for-linux wsl-2

14
推荐指数
2
解决办法
7308
查看次数

VS Code Remote - 无法在 WSL Ubuntu 18 或 WSL 2 Ubuntu 20 中运行“code”命令 - 路径错误

当我尝试code在 WSL Ubuntu 中从 Visual Studio Code 运行命令时遇到问题。我收到以下错误:

$ code .

/mnt/c/Users/Name/.vscode/extensions/ms-vscode-remote.remote-wsl-0.64.2/scripts/wslCode.sh: 63: /mnt/c/Users/Name/.vscode/extensions/ms-vscode-remote.remote-wsl-0.64.2/scripts/wslCode.sh: /home/barry/.vscode/bin/899d46d82c4c95423fb7e10e68eba52050e30ba3/bin/remote-cli/code: not found
Run Code Online (Sandbox Code Playgroud)

当我运行以下命令时,它会安装 VS Code 服务器并且该命令按预期工作:

$ /mnt/c/Users/Name/AppData/Local/Programs/Microsoft\ VS\ Code/bin/code .
Run Code Online (Sandbox Code Playgroud)

当我运行时which -a code,我可以看到我有两个与该命令相关的路径,并且我相信正确的路径是/mnt/c/Users/Name/AppData/Local/Programs/Microsoft VS Code/bin/code,但我不知道如何删除第一个路径,或者它如何首先将两个路径与该命令相关联?

barry@RandomName:~$ which -a code
/mnt/c/Program Files/Microsoft VS Code/bin/code
/mnt/c/Users/Name/AppData/Local/Programs/Microsoft VS Code/bin/code
Run Code Online (Sandbox Code Playgroud)

有人可以帮忙吗?

windows-subsystem-for-linux ubuntu-18.04 vscode-remote wsl-2 ubuntu-20.04

14
推荐指数
3
解决办法
3万
查看次数

如何在 wsl2 上从 python3 运行 Selenium ChromeDriver?

我正在尝试使用 python 3 从 WSL2(Ubuntu 18.04)无头打开 Chrome。

在 Windows 上,我使用的是 Chrome 84。我已经从ChromeDriver - WebDriver for Chrome下载了 Chrome Driver 84 。并在 C:\ChromeDriver\chromedriver.exe 下安装了 .exe

我已经设置了从 Windows Chrome 和 ChromeDriver 到 WSL2 的符号链接:

sudo ln -s '/mnt/c/Program Files (x86)/Google/Chrome/Application/chrome.exe' /usr/bin/google-chrome
sudo ln -s /mnt/c/ChromeDriver/chromedriver.exe /usr/bin/chromedriver
Run Code Online (Sandbox Code Playgroud)

两个 Chrome 都设置为可由 WSL2 上的任何用户执行。

在 WSL2 上,当我在控制台中输入时:

google-chrome --use-gl=swiftshader
Run Code Online (Sandbox Code Playgroud)

Chrome 在 Windows 上启动。

这是我的脚本:

from selenium import webdriver
browser = webdriver.Chrome()    # fails
# browser = webdriver.Chrome('/usr/bin/chromedriver') fails
# browser = webdriver.Chrome('/mnt/c/ChromeDriver/chromedriver.exe') fails
browser.get('https://stackoverflow.com') …
Run Code Online (Sandbox Code Playgroud)

selenium google-chrome python-3.x selenium-chromedriver wsl-2

13
推荐指数
2
解决办法
6301
查看次数

从 WSL2 内部访问在 Windows 中运行的本地主机?

我在我的Windows 机器上运行本地AEM 服务器。服务器在localhost:4502上运行。我正在使用在 WSL2 中运行的 Ubuntu 发行版进行开发。我想在我的WSL2 Ubuntu 中访问在 Windows 机器上运行的 localhost:4502 。

有什么办法可以做到这一点还是不可能?

windows portforwarding aem windows-subsystem-for-linux wsl-2

13
推荐指数
4
解决办法
1万
查看次数