Verbindung vom Peer auf systemctl als Root zurückgesetzt

Verbindung vom Peer auf systemctl als Root zurückgesetzt

Ich habe WSL 2 (Ubuntu) eingerichtet und dort systemd (und systemd-sysv) installiert. Danach habe ich Folgendes ausgeführt:

sudo mkdir -p /run/dbus
sudo dbus-daemon --system
sudo daemonize /usr/bin/unshare --fork --pid --mount-proc /lib/systemd/systemd --system-unit=basic.target

Vor der Installation systemdhabe ich Ubuntu auf 18.10 aktualisiert ( sudo do-release-upgrademehrmals verwendet).

Es hat eine Weile funktioniert, aber jetzt funktioniert es nur noch als normaler Benutzer. Als Root habe ich

Failed to list units: Connection reset by peer

auf jeden systemctlBefehl.

Aus diesem Grund kann ich beispielsweise den Status von Diensten überprüfen, aber ich kann den Start dieser Dienste nicht aktivieren/deaktivieren oder sie starten/stoppen.

Ich könnte es auch bei einer Neuinstallation reproduzieren:

Ich habe Debian (WSL2) aus dem Microsoft Store installiert

Ich habe die folgenden Befehle ausgeführt: sudo apt-get update -y sudo apt-get install -y dbus-x11 sudo apt-get install daemonize

Anschließend habe ich es wsl --shutdownauf dem Host ausgeführt und Folgendes ausgeführt:

sudo mkdir -p /run/dbus
sudo dbus-daemon --system
sudo daemonize /usr/bin/unshare --fork --pid --mount-proc /lib/systemd/systemd --system-unit=basic.target

Danach hatte ich die gleichen Ergebnisse:

systemctl

EINHEIT LAST AKTIV SUB BESCHREIBUNG

proc-sys-fs-binfmt_misc.automount geladen aktiv ausgeführt beliebige ausführbare Datei

sys-devices-LNXSYSTM:00-LNXSYBUS:00-ACPI0004:00-VMBUS:00-fc785225\x2d9131\x2d5661\x2dac0c\x2d3a157c61ae15-net-eth0.device geladen aktiv eingesteckt /sys/devices/LNXSYSTM:00/

sys-devices-LNXSYSTM:00-LNXSYBUS:00-ACPI0004:00-VMBUS:00-fd1d2cbd\x2dce7c\x2d535c\x2d966b\x2deb5f811c95f0-host0-target0:0:0-0:0:0:0-block-sda.device geladen aktiv angeschlossen Virtual_Disk sys-devices-LNXSYSTM:00-LNXSYBUS:00-ACPI0004:00-VMBUS:00-fd1d2cbd\x2dce7c\x2d535c\x2d966b\x2deb5f811c95f0-host0-target0:0:0-0:0:0:1-block-sdb.device geladen aktiv angeschlossen Virtual_Disk

und so weiter, aber als ich rannte

sudo systemctl

ich habe

Auflisten der Einheiten fehlgeschlagen: Verbindung vom Peer zurückgesetzt

Anderes Beispiel:

$ systemctl status dbus
● dbus.service - D-Bus System Message Bus
   Loaded: loaded (/lib/systemd/system/dbus.service; static; vendor preset: enabled)
   Active: active (running) since Fri 2019-12-13 17:56:36 CET; 13min ago
     Docs: man:dbus-daemon(1)
 Main PID: 110
    Tasks: 1 (limit: 4915)
   Memory: 1.2M
   CGroup: /system.slice/dbus.service
           └─110 /usr/bin/dbus-daemon --system --address=systemd: --nofork --nopidfile --systemd-activation --syslog-only

Dec 13 17:56:36 Daniellaptop systemd[1]: Started D-Bus System Message Bus.
$ sudo systemctl status dbus
Failed to get properties: Connection reset by peer

[Spezifikationen]

Ausgabe verauf meinem Host:Microsoft Windows [Version 10.0.19013.1122]

Danach habe ich auch neofetchauf dem Debian-System installiert (um es Ihnen zu zeigen):

       _,met$$$$$gg.          dan@Daniellaptop
    ,g$$$$$$$$$$$$$$$P.       ----------------
  ,g$$P"     """Y$$.".        OS: Debian GNU/Linux 10 (buster) on Windows 10 x86_64
 ,$$P'              `$$$.     Kernel: 4.19.79-microsoft-standard
',$$P       ,ggs.     `$$b:   Uptime: 9 mins
`d$$'     ,$P"'   .    $$$    Packages: 226 (dpkg)
 $$P      d$'     ,    $$P    Shell: bash 5.0.3
 $$:      $$.   -    ,d$$'    Terminal: /dev/pts/0
 $$;      Y$b._   _,d$P'      CPU: Intel i7-7500U (4) @ 2.903GHz
 Y$$.    `.`"Y$$$$P"'         Memory: 80MiB / 6868MiB
 `$$b      "-.__
  `Y$$
   `Y$$.
     `$$b.
       `Y$$b.
          `"Y$b._
              `"""

Ausgabe von uname -a:

Linux <hostname of the host> 4.19.79-microsoft-standard #1 SMP Mon Oct 14 00:50:46 UTC 2019 x86_64 GNU/Linux

[Notiz]

Dasselbe Ergebnis tritt auf, wenn ich das System starte und ausführe

sudo daemonize /usr/bin/unshare --fork --pid --mount-proc /lib/systemd/systemd --system-unit=basic.target

ohne

sudo mkdir -p /run/dbus
sudo dbus-daemon --system

Antwort1

Dies ist durch systemdeine andere Installationsart möglich, wie beschriebenHier. Zuerst müssen Sie installieren git, dieses Repository klonen und das Installationsprogramm wie im beschrieben ausführen README.md.

sudo apt update
sudo apt install -y git
git clone https://github.com/DamionGans/ubuntu-wsl2-systemd-script.git
cd ubuntu-wsl2-systemd-script/
bash ubuntu-wsl2-systemd-script.sh

Danach führen Sie wsl --shutdowncmd aus und starten WSL erneut.

verwandte Informationen