您尚未登录。

#1 2022-08-31 16:59:41

Span
会员
注册时间: 2022-08-31
帖子: 7

如何使用Xshell连接 Arch Linux on WSL

archlinux安装openssh后,使用systemctl start sshd 命令启动ssh服务失败

打开xshell后,使用主机的ip与默认的22端口无法连接上


世界可以被理解,但却无法知其全貌.

离线

#2 2022-08-31 17:26:40

zhuangzhuang
会员
注册时间: 2022-08-14
帖子: 164
个人网站

Re: 如何使用Xshell连接 Arch Linux on WSL

wsl的init不是systemd,试试

sudo service ssh start

上学中

离线

#3 2022-08-31 20:09:15

Span
会员
注册时间: 2022-08-31
帖子: 7

Re: 如何使用Xshell连接 Arch Linux on WSL

你好,我无法使用service命令,我试过用pacman安装但是找不到包。

service似乎是红帽下的控制系统服务的工具。

我使用了

 ~  ps -p 1 -o comm=
init

获得了本机正在使用的initial systerm,但是我不清楚我通过的init命令怎么使用,我查到init是 “Linux下的进程初始化工具”,切换到root,也获得一样的结果。

最近编辑记录 Span (2022-08-31 20:12:04)


世界可以被理解,但却无法知其全貌.

离线

#4 2022-09-01 21:13:37

zhuangzhuang
会员
注册时间: 2022-08-14
帖子: 164
个人网站

Re: 如何使用Xshell连接 Arch Linux on WSL

这个init是微软私有的,不开源,且没有命令接口。
想用完整systemd的话可以看这个


上学中

离线

#5 2023-03-27 21:42:37

Span
会员
注册时间: 2022-08-31
帖子: 7

Re: 如何使用Xshell连接 Arch Linux on WSL

问题解决,现在wsl2支持systemd了. 具体参考微软的文档: Configuration settings for wsl.conf   

首先需要打开wsl的配置文件进行编辑(在你的wsl中)

sudo nano /etc/wsl.conf 
# 在其中输入
[boot]
systemd=true 

然后关闭并重新启动wsl.(在powershell中)

wsl --shutdown
wsl

当你的wsl_arch分发版重新运行时,system应已经在运行,你可以通过如下命令来查看init进程的名称和版本(回到wsl),以及哪些服务通过systemd被启动了

ps -p 1 -o comm
systemctl --version
systemctl list-unit-files --type=service

最近编辑记录 Span (2023-03-30 00:52:12)


世界可以被理解,但却无法知其全貌.

离线

页脚