搜了这个网站和各种Q后,很明显systemdWSL的服务和不可用。每次启动 PC 时,我都需要在 WSL 中运行一个程序,因此我阅读了有关如何使用 crontab 的页面:如何在 Windows 上运行 Ubuntu 服务(启动时)?超级用户,但我感到困惑,因为格式与 crontab 中的格式不符。
此外,该特定问题是特定于 SSH 服务器的,如果考虑并处理导致步骤过于复杂,则需要安全方面。无论如何,该问题中探索的步骤已经尝试过,但没有奏效。此外,该问题高度针对 SSH 服务器,而该问题涉及一般环境要求 i。我需要知道如何在 WSL 中运行服务(可能包括但不限于 SSH 服务器)
实际上 - 需要比如何在 Windows 上运行 Ubuntu 服务(启动时)更简单的解决方案?提供。
但是,这是我的 cron:
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
PATH=cd /usr/local/src/:cd xmr-stak-cpu:cd bin/
@reboot . sudo ./xmr-stak-cpu
Run Code Online (Sandbox Code Playgroud)
我也这样做了:
启动时运行 bash/cron 循环
在 shell:startup 中创建一个名为 linux.bat 的文件
Paste: C:\Windows\System32\bash.exe -c 'while [ true ]; do sudo /usr/sbin/cron -f; done'
Run Code Online (Sandbox Code Playgroud)
这是行不通的。
如何在 WSL 中运行服务?或者有没有办法使用Windows?
因为在 Windows 中我尝试了以下操作:使用https://github.com/Microsoft/WSL/issues/612
Run: When …Run Code Online (Sandbox Code Playgroud) 据我了解,systemd 是 Linux 的“主”守护进程,在启动并运行其 init 函数后立即管理所有其他进程。由于我遇到了这个(现已解决)问题,即无法在 WSL 上使用任何 systemd 命令,我意识到它根本没有 systemd 进程。
现在,出于好奇,我想知道 WSL 依赖于哪个进程管理而不是 systemd。由于我在“一般谷歌搜索”上没有找到令人满意的答案,我想,让我们在这里尝试一下。
我想在 Windows 启动时在 Linux 子系统(Windows 上的 Ubuntu 上的 Bash)上启动一个 SSH 服务器。问题是当 Bash 窗口关闭时,所有 Linux 进程都会终止。
有没有办法让 Linux 进程在没有 bash 窗口的情况下在后台永久运行?
ubuntu windows-10 windows-subsystem-for-linux windows-10-v1607
这是我打开 wsl2 终端时屏幕信息的一部分。
从时间上看,已经是23天前了。
如何刷新此信息?
System information as of Sat Jul 30 22:52:35 CST 2022
System load: 0.107421875
Usage of /: 90.7% of 250.98GB
Memory usage: 10%
Swap usage: 0%
Processes: 44
Users logged in: 0
IPv4 address for br-345a7fa3f56b: 172.18.0.1
IPv4 address for docker0: 172.17.0.1
IPv4 address for eth0: 172.31.228.161
Run Code Online (Sandbox Code Playgroud) windows-subsystem-for-linux ×3
linux ×2
ubuntu ×2
cron ×1
daemon ×1
process ×1
systemd ×1
windows-10 ×1
wsl2 ×1