尚未使用systemd作为初始化系统(PID 1)引导系统。无法操作


143

我正在尝试按照WSL中关于数字海洋的这篇文章中的讨论来遵循Redis安装过程。安装的Ubuntu版本是Ubuntu 18.04。

Redis安装中的一切都很好,但是当我尝试运行此命令时sudo systemctl start redis,收到了此消息。

System has not been booted with systemd as init system (PID 1). Can't operate.

关于该怎么办的任何想法?


Answers:


254

而是使用: sudo service redis-server start

我有同样的问题,在WSL上的Ubuntu中停止/启动其他服务。这工作,而systemctl没有。

有人可能会怀疑,“您怎么知道服务名称是'redis-server'?” 您可以使用查看它们service --status-all


是的。自从我写问题以来,我也一直在使用它,评论中的一个也有帮助的评论
截至

太好了,非常感谢。这项功能适用于WSL环境中已安装的大多数服务,而我们无法使用systemctl来启动|停止|重新启动服务。
巴渝德维

1
鉴于这是评分最高的答案,很高兴看到更多信息,这里发生了什么。据我了解service是一个抽象,可以退回到init.dsysv init)或systemd隐含的问题不起作用。serverfault.com/questions/867322/...
fraleone

1
fraleone,因为这是我的答案,所以我会尽力解决您的问题。明确地说,问题是有关尝试启动Redis的错误(特别是在WSL上),在该错误中使用在其他地方记录的通用启动命令systemctl start redis不适用于OP。这对我也不起作用。我找到了这个替代方法(redis-server start),并来到这里提供了答案。我很高兴它帮助了其他人。但是我不是/不能解释“这里发生了什么”,或者它为什么违反了您的期望。随便发现更多,或者其他人会发现。
查理·阿瑞哈特


7

如果您使用的是Docker,则可以使用以下命令尝试使用已激活System D的Ubuntu映像:

docker run -d --name redis --privileged -v /sys/fs/cgroup:/sys/fs/cgroup:ro jrei/systemd-ubuntu:18.04

然后,您只需要运行:

docker exec -it redis /bin/bash

您就可以在其中安装,启动,重新启动Redis或进行任何所需的操作。


Docker不会在WSL中运行。
Aditya T

2
@Aditya它在WLS 2中
thanos.a

5

我在运行WSL 2时遇到此问题

解决方案是命令

 $ sudo dockerd

如果在那之后您仍然有权限问题,请运行以下命令:

 $ sudo usermod -aG docker your-user

1
您还必须开始发行。所以我有2个终端,一个运行docker,另一个运行我的工作
Svetoslav Marinov

2

我试图在ubuntu和WSL中启动Docker。

这对我有用

sudo service docker start


0

这对我有用(使用WSL)

sudo /etc/init.d/redis start

(对于其他任何服务,请检查init.d文件夹中的文件名)


0

使用此命令运行每个服务, 只需编写名称服务即可,例如:

对于xrdp

sudo /etc/init.d/xrdp start

对于redis

sudo /etc/init.d/redis start

(对于其他任何服务,请检查init.d文件夹中的文件名)


-1

我遇到了同样的问题! ps --no-headers -o comm 1 在终端中运行此命令后,系统将返回systemdinit

如果返回“ init”,则“ systemctl”命令不适用于您的系统


您能否再详细说明一下您的答案?
jpnadas

为了运行和管理mongod进程,您将使用操作系统的内置init系统。Linux的最新版本倾向于使用systemd(使用systemctl命令),而Linux的较早版本则倾向于使用System V init(使用service命令)。如果您的系统使用systemd,则命令为:-'sudo systemctl start mongod的”,如果它使用System V启动则命令为: - ‘须藤服务的mongod开始’
RoninS28
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.