长期读者,第一次提问。
我按照此答案中的说明进行操作:
如何通过 SSH 连接到“Windows 10 上的 Ubuntu 上的 Bash”?
我正在尝试在同一台机器上的 Windows 中从 PuTTY 进行 SSH。使用与我的配置文件匹配的端口 22。尝试了 127.0.0.1 和 127.0.1.1。但是,我仍然收到“拒绝访问”的消息:
最终我希望建立一个 Visual Studio 远程构建,但到目前为止我根本无法远程进入。我应该采取哪些后续步骤?
Process Hacker 为端口 22 显示了这一点(不确定这意味着什么):
以下是 /etc/ssh/sshd_config 的内容:
# Package generated configuration file
# See the sshd_config(5) manpage for details
# What ports, IPs and protocols we listen for
Port 22
# Use these options to restrict which interfaces/protocols sshd will bind to
#ListenAddress ::
#ListenAddress 0.0.0.0
Protocol 2
# HostKeys for protocol version 2
HostKey …
Run Code Online (Sandbox Code Playgroud) 我在github上找到了这个文档:
不过它已经有一段时间没有更新了,所以我想知道是否有人知道 Microsoft 是否已经发布了一份技术文档来描述 WSL2 发行版作为容器的实现。
我使用 Ubuntu 22.04 安装了 WSL 2。
当我尝试在 PowerShell 中检查 WSL 内核时,得到以下结果:
PS C:\Users\user> wsl --status
Default Distribution: Ubuntu-22.04
Default Version: 2
Windows Subsystem for Linux was last updated on 6/7/2022
WSL automatic updates are on.
Kernel version: 5.10.102.1
Run Code Online (Sandbox Code Playgroud)
从上面的消息中,我假设我使用的是 Linux 内核 5.10.102.1。
但是当我运行 Ubuntu 并使用 时uname -a
,我得到了一个不同的 Linux 内核:
user@DESKTOP-:/mnt/c/Users/user$ uname -a
Linux DESKTOP-VMP6T3Q 4.4.0-19041-Microsoft #1237-Microsoft Sat Sep 11 14:32:00 PST 2021 x86_64 x86_64 x86_64 GNU/Linux
Run Code Online (Sandbox Code Playgroud)
其中表示 Linux 内核是 4.4.0。
我的问题:
我已经使用安装了 WSL Ubuntu 20.04 LTS wsl --install -d ubuntu
。
但有时当我使用 Linux 很长时间后,它会停止响应并冻结。
Windows 版本:21H2。启用CPU虚拟化、Linux子系统和虚拟机平台。
我运行的是 Windows 10 计算机,并且最近安装了适用于 Linux 的 Windows 子系统。这通常会创建一个没有“显示”环境的单个终端。看起来 Tmux 可以用来获取多个终端,但这不允许您使用任何类型的图形显示。
我想通过 Windows Subsystem for Linux 打开 Linux 浏览器,例如 Firefox。
我尝试了这里的建议,但我收到错误:
no DISPLAY environment variable specified
Run Code Online (Sandbox Code Playgroud) 我正在尝试在我的电脑 (Windows 10) 中安装适用于 Linux 的 Windows 子系统。我通过以管理员身份运行打开了“命令提示符”窗口,并wsl --install
在不更改初始默认文件夹的情况下运行C:\Windows\system32
。因此,WSL 默认安装在此位置。
后来,我通过转到Settings -> Apps & Features -> Windows Subsystem for Linux Update -> Uninstall卸载了 WSL 。
然后,我下载并安装了 WSL Update C:\users\myaccount
。但是,当我从开始菜单运行 WSL 时,它仍然会转到C:\Windows\system32
.
有没有办法将 WSL 安装的默认位置移动到C:\users\myaccount
. 此外,我注意到从“设置” -> “应用程序和功能”C:\Windows\system32
卸载 WSL 后,WSL 仍在文件夹中。
使用 Windows Subsystem for Linux 2,我想运行两个单独的 Centos 7 实例,但是当我这样做时,两个实例都具有相同的 eth0 inet 地址。这就是我所做的......
我为我的基础创建了一个基础 Centos 7 tarball,然后创建了两个独立的发行版,它的外观和运行都如我所期望的那样;
> wsl --import centos7-1 centos7-1 centos7.tar.gz --version 2
> wsl --import centos7-2 centos7-2 centos7.tar.gz --version 2
> wsl -l -v
NAME STATE VERSION
* centos7-1 Stopped 2
centos7-2 Stopped 2
> ls
Directory: C:\Users\me\centos
Mode LastWriteTime Length Name
---- ------------- ------ ----
d----- 4/8/2022 11:28 AM centos7-1
d----- 4/8/2022 11:29 AM centos7-2
-a---- 4/8/2022 11:24 AM 174323670 centos7.tar.gz
Run Code Online (Sandbox Code Playgroud)
除了当我在单独的 PS 窗口中打开并运行每个发行版并ifconfig eth0
在每个发行版中运行时,它们都显示相同的 …
我安装了 WSL wsl --install
,但现在迁移到 Windows 10 20H2 我想更新 WSL(例如使用 GUI 应用程序),但运行wsl --update
失败
PS C:\WINDOWS\system32> wsl --update
Checking for updates...
Error: 0x8024500c
Run Code Online (Sandbox Code Playgroud)
如果您无法访问 Windows 应用商店,有人知道如何更新 WSL 吗?因为我使用的是公司笔记本电脑,所以这是禁止的。
我正在尝试使用 Windows 机器部署分布式系统。然而,我想在这个系统上编译和运行的代码应该在基于Linux的环境中得到编译。因此,我在所有节点上下载并安装了 WSL 和 Ubuntu。现在,我需要从控制器节点通过 SSH 访问工作节点。有什么办法可以做到吗?
如何在 WSL2 启动时启动 OpenSSH 服务器等服务?目前,每次 WSL2 启动时我都必须重新启动它sudo service ssh start
。
windows-subsystem-for-linux ×10
wsl2 ×4
linux ×2
ssh ×2
ubuntu ×2
windows-10 ×2
bash ×1
docker ×1
documents ×1
firefox ×1
installation ×1
kernel ×1
windows ×1