安装 Ubuntu 22.04 LTS 时出错。
可能的解决方案:
wsl --set-default-version 2
并完成!问题解决了!我的设置如下所示: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) 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 update
在WSL2
安装时运行时显示此消息UBUNTU 20.01
。
我当前的 php 版本是 php8
和xdebug3
更新:
这是 x-debug 部分
xdebug
__ __ _ _
\ \ / / | | | |
\ V / __| | ___| |__ _ _ __ _
> < / _` |/ _ \ '_ \| | | |/ _` |
/ . \ (_| …
Run Code Online (Sandbox Code Playgroud) 我已经尝试过,但每次重新启动系统时,我的变量都会消失。
如何在 Ubuntu WSL2 上永久存储环境变量?
ubuntu environment-variables windows-subsystem-for-linux wsl-2
借助 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
我在 Windows 10 上使用 WSL2。
我的开发堆栈在主机操作系统上使用本地网络服务器(localwp 或 wamp)。我使用 WSL2 作为主终端(SSH、Git、SASS、自动化工具……)。
我需要的是一种使用服务器名称而不是随机 IP 地址从 WSL2 系统连接到我的主机服务 (MySql) 的方法。
Windows 主机已经可以使用“localhost”连接到 WSL2 服务。有没有办法以其他方式做到这一点?
我确实安装了 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) 当我尝试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
我正在尝试使用 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
我在我的Windows 机器上运行本地AEM 服务器。服务器在localhost:4502上运行。我正在使用在 WSL2 中运行的 Ubuntu 发行版进行开发。我想在我的WSL2 Ubuntu 中访问在 Windows 机器上运行的 localhost:4502 。
有什么办法可以做到这一点还是不可能?
windows portforwarding aem windows-subsystem-for-linux wsl-2
wsl-2 ×10
windows-subsystem-for-linux ×6
ubuntu ×2
ubuntu-20.04 ×2
.net-5 ×1
.net-core ×1
aem ×1
git ×1
local ×1
parceljs ×1
php ×1
python-3.x ×1
selenium ×1
ubuntu-18.04 ×1
ulimit ×1
windows ×1
windows-10 ×1
xdebug-3 ×1