Systeem is niet opgestart met systemd als init-systeem (PID 1). Kan niet werken

Ik probeer het Redis-installatieproces te volgen zoals besproken in deze artikelvan digitale oceaan, in WSL. De geïnstalleerde Ubuntu-versie is Ubuntu 18.04.

Alles in de redis-installatie is in orde, maar toen ik deze sudo systemctl start redisprobeerde uit te voeren, kreeg ik dit bericht.

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

Enig idee wat ik daarmee moet doen?


Antwoord 1, autoriteit 100%

Gebruik in plaats daarvan: sudo service redis-server start

Ik had hetzelfde probleem met het stoppen/starten van andere services vanuit Ubuntu op WSL. Dit werkte, waar systemctl niet deed.

En men zou zich redelijkerwijs kunnen afvragen: “hoe weet u dat de servicenaam ‘redis-server’ was?” Je kunt ze zien met service --status-all


Antwoord 2, autoriteit 8%

In plaats van

sudo systemctl start redis

gebruik:

sudo /etc/init.d/redis start

vanaf nu hebben we geen systemd in WSL


Antwoord 3, autoriteit 4%

Ik had dit probleem met WSL 2

de oplossing was het commando

$ sudo dockerd

als je daarna nog steeds een probleem hebt met toestemming, voer dan het commando uit:

$ sudo usermod -aG docker your-user

Antwoord 4, autoriteit 3%

Als u Docker gebruikt, kunt u een afbeelding proberen waarop Ubuntu met systeem D al actief is, met deze opdracht:

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

Dan hoef je alleen maar het volgende uit te voeren:

docker exec -it redis /bin/bash

en daar kun je gewoon Redis installeren, starten, herstarten of wat je maar nodig hebt.


Antwoord 5

Ik probeerde Docker te starten binnen ubuntu en WSL.

Dit werkte voor mij,

sudo service docker start


Antwoord 6

Voor WSL2 moest ik cgroupfs-mount installeren en vervolgens de daemon starten, zoals beschreven hier:

sudo apt-get install cgroupfs-mount
sudo cgroupfs-mount
sudo service docker start

Antwoord 7

Dit werkte voor mij (met behulp van WSL)

sudo /etc/init.d/redis start

(controleer voor elke andere service de map init.d voor bestandsnamen)


Antwoord 8

U kunt eenvoudig sudo service docker startuitvoeren, waarmee uw docker-server wordt gestart. U kunt controleren of u de docker-server heeft door service --status-alluit te voeren, u zou docker in de lijst moeten zien staan.


Antwoord 9

Totale newbie hier – na het proberen van de meeste van de bovenstaande suggesties, was de opdracht die voor mij werkte sudo service apache2 --full-restarten de webserver startte op.

Misschien is de fout opgetreden omdat ik veel installatie-instructies heb gevolgd zonder opnieuw op te starten/opnieuw op te starten. Ik werk aan Ubuntu 20.04 in WSL2 met Apache2 Debian.


Antwoord 10

gebruik deze opdracht om elke service uit te voeren
schrijf gewoon naamservice bijvoorbeeld :

voor xrdp:

sudo /etc/init.d/xrdp start

voor opnieuw:

sudo /etc/init.d/redis start

(controleer voor elke andere service de map init.d voor bestandsnamen)


Antwoord 11

Start je computer opnieuw op, voer bootloader in (bijvoorbeeld GRUB) en start op met systemd – dan zal het werken!!!


Antwoord 12

Voor mij loste het uitvoeren van deze tijdelijke oplossing mijn probleem op:
https://github.com/DamionGans/ubuntu-wsl2-systemd-script


Antwoord 13

Als u deze fout heeft gevonden bij het uitvoeren van een Docker-container, moet u deze mogelijk zo uitvoeren:

docker run --pid=host --name myname --privileged -u root [IMAGE]

Deze oplossing valt buiten het bereik van WSLen kan ook problemen met Linux-hosts oplossen


Antwoord 14

Ik heb hetzelfde probleem ondervonden!
ps --no-headers -o comm 1
Nadat dit in de terminal is uitgevoerd, geeft het systeem systemdof init

terug

als het ‘init’ retourneert, werkt de opdracht ‘systemctl’ niet voor uw systeem


Antwoord 15

Allereerst, voer Ubuntu uit als beheerder.

Voer vervolgens sudo dockerd

uit

Other episodes