问题标签 [wsl-2]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
windows-subsystem-for-linux - ddev 可以与 WSL(Linux 的 Windows 子系统)一起使用吗?
作为一个在 Windows 机器上工作但喜欢将 Ubuntu 作为工作环境的人,我想在WSL中使用 ddev 。有没有办法做到这一点?
windows-subsystem-for-linux - 在 WSL 版本 2 中,我在哪里可以找到 Windows 文件夹?
我最近根据说明安装了 WSL 版本 2 。一切都很好。但我注意到该文件夹/mnt/c
不再可用。
我了解新的 WSLvhdx
用作文件系统,它为我们提供了更好的 FS 性能,但我找不到在 Windows 中访问文件的方法。
我也试图检查wsl --help
但我找不到任何有用的东西。
有什么建议么?
阅读更多内容后,我注意到 WSL 2 实际上是 Windows 10 上的优化 VM,这意味着正在运行的 WSL 2 不知道自己在哪里。似乎应该有一种方法可以在启动它时传递一些 Windows 文件夹。还没想好怎么办。。。。。。
visual-studio-code - vscode-remote-release 和 wsl 2
有没有人已经尝试过vscode-remote-release
wsl 2 的预发布?
启动新的 wsl 服务器时出现以下错误:
java - 在 Windows 10 上使用 Intellij IDEA 在 WSL 2 中运行和调试 Java
Intellij IDEA 安装在 Windows 上。使用 maven 构建的 java 应用程序需要本地库(带有 JNI)并在 Ubuntu 上运行。
在 Windows 上使用 maven 和 git 很好。如何让 Intellij IDEA 使用 WSL 中的 JDK,以便创建使用 WSL 的运行/调试配置?
docker - 无法连接到 wsl 2 上 debian buster 上的 Docker 守护程序
我正在尝试在 Windows Subsystem for Linux (WSL) 2 上安装 docker(在 Windows Home build 19033.1 上运行)。我按照https://docs.microsoft.com/en-us/windows/wsl/wsl2-install上的说明安装了 wsl2,并从 Windows Store 安装了 debian,即 debian 10(buster)。它在 wsl 2 上运行,如下所示:
wsl -l -v
NAME STATE VERSION
* Debian Running 2$ cat /etc/os-release
PRETTY_NAME="Debian GNU/Linux 10 (buster)"
NAME="Debian GNU/Linux"
VERSION_ID="10"
VERSION="10 (buster)"
VERSION_CODENAME=buster
ID=debian
HOME_URL=" https://www.debian.org/"
SUPPORT_URL="https://www.debian.org/support"
BUG_REPORT_URL="https://bugs.debian.org/"
我按照https://linuxconfig.org/how-to-install-docker-on-debian-10-buster-linux的说明安装 docker:
sudo apt install docker.io
sudo docker run hello-world docker
:无法连接到 unix:///var/run/docker.sock 上的 Docker 守护进程。docker 守护进程是否正在运行?
查看docker是否正在运行:
sudo service docker status
[FAIL] Docker 没有运行……失败了!
所以我尝试重新启动docker守护进程:
$ sudo service docker restart
grep: /etc/fstab: No such file or directory
[ ok ] 启动 Docker: docker.
在 SO 上找到另一篇文章说我可以通过发布来解决这个问题:
须藤触摸 /etc/fstab
这似乎有效(不再出现grep错误):
$ sudo service docker restart
[ ok ] 启动 Docker:docker.
但我仍然遇到同样的问题:
$ sudo docker run hello-world
docker:无法连接到 unix:///var/run/docker.sock 上的 Docker 守护进程。docker 守护进程是否正在运行?
我查看了 docker 日志,里面充满了错误:
有点迷失了这里的问题。希望有人可以建议?
我遵循了下面@sx-tan 的出色建议,他建议遵循https://kind.sigs.k8s.io/docs/user/using-wsl2/#updating-kernel上的说明。这些说明说要发布:
cp
不幸的是,这些命令不会产生与该命令所期望的相同的 dir 结构。我没有arch/x86_x64/
目录。我确实有一个arch/x86
目录,但不包含boot/bzImage
:
我遵循了确切的说明,因此只能猜测自从编写了https://kind.sigs.k8s.io/docs/user/using-wsl2/#updating-kernel以来,回购已经发生了变化。如果它有帮助,这里是目录arch
:
仍然希望有人能澄清一下。
mysql - 使用 ngrok 公开 mysql 并使用 Datagrip (WSL2) 连接
我在我的开发机器上设置了 WSL2。它有一个 mysql 服务器正在运行,如果我从 WSL“VM”中使用 DB 查看器,我可以正确看到 DB 和 Schema,也就是说,如果我从 WSL 打开 mysql cli 甚至 Datagrip/IDEA,它会看到在 localhost:3306 上正确数据库。
我还在 Windows 上安装了 Datagrip,我想用它来连接到 mysql 数据库。由于 WSL2 改变了网络的工作方式,连接到 localhost:3306 不起作用 - 所以我需要将 WSL2 网络桥接到我的 Windows 网络。我找到了几种解决方案,但我已经成功地将 ngrok 用于本地网站。
据说,./ngrok tcp 3306
在 ubuntu shell 中运行会在外部公开 WSL2 mysql 实例,并带有特定的 url+port(它给了我)。问题是我似乎无法通过 Datagrip 连接到它,是否需要运行一些特定配置才能使其工作?
例如:
ngrok 告诉我: tcp://0.tcp.ngrok.io:11497 -> localhost:3306
如果我尝试在 Datagrip 中连接到该 url,它会超时。
c++ - 如何在 WSL 2 中读取物理内存?
如何在 WSL 2 中读取物理内存 (/dev/mem)?(我想从 WSL 读取 Windows RAM) https://shanetully.com/2014/12/translating-virtual-addresses-to-physcial-addresses-in-user-space/ 我尝试了这个人所做的,但是我在那个地址读到的文字。读取函数没有返回-1,但我什么也没读。所以我尝试了如果我什至可以阅读 /dev/mem
似乎访问被拒绝,有什么想法可以实现我想要的吗?
windows-subsystem-for-linux - wsl2为什么要在这种环境下开发
我了解在您的 Windows 机器上安装 Linux 而不是使用 VM 的原则。
我看过关于在 wsl 中使用 vscode 和 vscode wsl 扩展的文章。
我的问题是我为什么要在 Windows 上使用 vscode 来做这件事。
听起来可能是个愚蠢的问题,我听到有人说我现在可以在我的公司所在的 Linux 上开发 Windows,我只是不明白有什么好处
windows - WSL2 的 MongoDB Compass 问题
我在 WSL2 的容器中运行了一个 MongoDB 实例。
当我尝试在浏览器中发出请求时localhost:27017
,即使它显示错误,它也可以工作,因为我尝试使用 HTTP 协议访问数据库。
但是,当我尝试使用主机名 localhost 和端口 27017 从 Compass 访问我的数据库时,我在 30000 毫秒后超时,我无法访问它。
有人知道为什么吗?
windows - 如何从 CMD 执行添加到 WSL2 内的 $PATH 的二进制文件?
在我的 WSL2 环境中,我已adb
添加到 Path 环境变量中。我想像这样直接从 Windows CMD 调用它:wsl adb
但是我收到以下错误:
zsh:1: command not found: adb
就好像它在运行命令时没有源 ~/.zprofile ,因此没有调整后的 PATH 变量。任何想法如何处理这个?ZSH 是我的 WSL2 环境中的默认 shell adb
,在它内部运行就可以了。