Welche Dev-Loop-Dienste wurden beim Booten gestartet?

12

Nach dem Booten bin ich gelaufen systemd-analyze blameund hier sind die Ergebnisse:

     21.596s systemd-journal-flush.service
     18.658s dev-sda8.device
     15.099s dev-loop33.device
     15.034s dev-loop19.device
     15.012s dev-loop34.device
     14.989s dev-loop21.device
     14.877s dev-loop15.device
     14.866s dev-loop26.device
     14.773s dev-loop27.device
     14.684s dev-loop30.device
     14.677s dev-loop32.device
     14.649s dev-loop35.device
     14.590s dev-loop25.device
     14.267s dev-loop23.device
     14.192s dev-loop24.device
     14.156s dev-loop29.device
     14.133s dev-loop16.device
     14.065s dev-loop31.device
     14.059s dev-loop28.device
     13.821s dev-loop20.device
     13.531s dev-loop22.device
     13.495s dev-loop14.device
     13.364s dev-loop18.device

Was sind diese Dienste dev-loopxx.device( xxbezeichnet Zahlen) und warum nehmen sie so viel Zeit in Anspruch? Beziehen sie sich auf die Montage von Druckknöpfen? Kann ich die Startzeit reduzieren, indem ich sie deaktiviere? Ich verwende Ubuntu 18.04 neben Windows 10.

Apoorv Potnis
quelle
Meins dauert höchstens 14ms. Außerdem habe ich nur 5 davon.
Jos
@Jos Bedeutet dies, dass in meinem System einige Fehler vorliegen?
Apoorv Potnis
Nein, es bedeutet nicht, dass Fehler bestehen bleiben. Dies bedeutet, dass Sie mehr Software aus Containern installiert haben. Jedes Loop-Gerät ist eine Schnellinstallation.
Rinzwind
@Rinzwind Wenn ich dann diese Snaps deinstalliert und die Nicht-Snap-Versionen dieser Apps installiert habe, wird mein Boot schneller?
Apoorv Potnis
1
Ja, es wird eine Schleife pro Installation entfernt (und auch alte Revisionen, falls vorhanden).
Rinzwind

Antworten:

16

Sie können die Liste aller installierten Snaps mit bestimmen snap list für die Beziehung zwischen Einhängepunkt und Snap-Name, die Sie verwenden können systemctl status, mountundlosetup .

Zum Beispiel habe ich auf meinem Ubuntu MATE 18.04 LTS die folgenden Snaps installiert:

$ snap list
Name                 Version           Rev   Tracking  Developer      Notes
core                 16-2.33.1         4917  stable    canonical      core
software-boutique    18.04.0-5b99b84   31    stable/…  flexiondotorg  classic
ubuntu-mate-welcome  17.10.23-e4f4c4c  169   stable/…  flexiondotorg  classic

Sie erstellen Loop-Geräte wie folgt:

$ systemd-analyze blame | grep dev-loop
          4.303s dev-loop4.device
          4.267s dev-loop2.device
          4.193s dev-loop0.device
          4.146s dev-loop3.device
           111ms dev-loop5.device

Die Montagepunkte sind wie folgt:

$ mount | grep snapd
/var/lib/snapd/snaps/core_4830.snap on /snap/core/4830 type squashfs (ro,nodev,relatime,x-gdu.hide)
/var/lib/snapd/snaps/ubuntu-mate-welcome_169.snap on /snap/ubuntu-mate-welcome/169 type squashfs (ro,nodev,relatime,x-gdu.hide)
/var/lib/snapd/snaps/software-boutique_31.snap on /snap/software-boutique/31 type squashfs (ro,nodev,relatime,x-gdu.hide)
/var/lib/snapd/snaps/core_4650.snap on /snap/core/4650 type squashfs (ro,nodev,relatime,x-gdu.hide)
/var/lib/snapd/snaps/core_4917.snap on /snap/core/4917 type squashfs (ro,nodev,relatime,x-gdu.hide)

Schauen wir uns das genauer an dev-loop4.device :

$ systemctl status dev-loop4.device
● dev-loop4.device - /dev/loop4
   Follow: unit currently follows state of sys-devices-virtual-block-loop4.device
   Loaded: loaded
   Active: active (plugged) since Tue 2018-07-17 13:05:41 MSK; 4min 44s ago
   Device: /sys/devices/virtual/block/loop4

Der Ordner /sys/devices/virtual/block/loop4enthält eine sehr nützliche Dateiloop/backing_file , wir können den Inhalt lesen:

$ cat /sys/devices/virtual/block/loop4/loop/backing_file 
/var/lib/snapd/snaps/core_4650.snap

Also haben wir gerade festgestellt, dass /dev/loop4erstellt voncore Snap .


Am einfachsten ist es jedoch, Folgendes zu verwenden losetup(siehe man losetup):

$ losetup 
NAME       SIZELIMIT OFFSET AUTOCLEAR RO BACK-FILE                                         DIO LOG-SEC
/dev/loop4         0      0         1  1 /var/lib/snapd/snaps/core_4650.snap                 0     512
/dev/loop2         0      0         1  1 /var/lib/snapd/snaps/ubuntu-mate-welcome_169.snap   0     512
/dev/loop0         0      0         1  1 /var/lib/snapd/snaps/core_4830.snap                 0     512
/dev/loop5         0      0         1  1 /var/lib/snapd/snaps/core_4917.snap                 0     512
/dev/loop3         0      0         1  1 /var/lib/snapd/snaps/software-boutique_31.snap      0     512

Hoffe, dies hilft, Snaps-Mount-Punkte besser zu verstehen.

Fazit: Durch die Verwendung von Snaps für die Aktualisierung der Software zahlen wir am Ende dafür mit höherem Netzwerkverkehr, höherer Festplattennutzung und langsamerer Startzeit. Wenn Sie Snaps überhaupt nicht verwenden möchten, entfernen Sie sie mit sudo apt-get purge snapd.

N0rbert
quelle
Inzwischen hat sich der Snap stark verbessert, so dass es möglicherweise niemanden gibt, der einen solchen Malus beim Booten hat
rubo77