Quels sont les services de boucle de développement qui ont démarré au démarrage?

12

Après le démarrage, j'ai couru systemd-analyze blameet voici les résultats:

     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

Quels sont ces services dev-loopxx.device(en xxchiffres) et pourquoi prennent-ils autant de temps? Sont-ils liés au montage de boutons-pression? Puis-je réduire le temps de démarrage en les désactivant? J'utilise Ubuntu 18.04 avec Windows 10.

Apoorv Potnis
la source
Les miennes prennent au plus 14 ms. De plus, je n'en ai que 5.
Jos
@Jos Cela signifie-t-il qu'il y a des erreurs dans mon système?
Apoorv Potnis
Non, cela ne signifie pas que des erreurs persistent. Cela signifie que vous avez installé plus de logiciels à partir des conteneurs. Chaque périphérique de boucle est une installation instantanée.
Rinzwind
@Rinzwind Ensuite, si j'ai désinstallé ces snaps et installé les versions non-snap de ces applications, mon démarrage sera-t-il plus rapide?
Apoorv Potnis
1
Oui, il supprimera une boucle par installation (et aussi les anciennes révisions s'il y en a).
Rinzwind

Réponses:

17

Vous pouvez déterminer la liste de tous les snaps installés avec snap list, pour la relation entre le point de montage et le nom du snap que vous pouvez utiliser systemctl status, mountet losetup.

Par exemple, sur mon Ubuntu MATE 18.04 LTS, j'ai les snaps suivants installés:

$ 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

Ils créent des périphériques de boucle comme suit:

$ 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

Les points de montage sont les suivants:

$ 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)

Regardons de plus près 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

Le dossier /sys/devices/virtual/block/loop4contient un fichier très utile loop/backing_file, on peut lire son contenu:

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

Nous avons donc simplement déterminé que cela /dev/loop4est créé par coresnap.


Mais la façon la plus simple est d'utiliser losetup(voir 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

J'espère que cela vous aidera à mieux comprendre les points de montage Snaps.

Conclusion: en utilisant Snaps pour avoir des logiciels à jour, nous finissons par payer pour cela avec un trafic réseau plus élevé, plus d'utilisation du disque et un temps de démarrage plus lent. Si vous ne souhaitez pas du tout utiliser Snaps, supprimez-les avec sudo apt-get purge snapd.

N0rbert
la source
A présent, le snap s'est beaucoup amélioré, donc il n'y a peut-être pas de malus de démarrage aussi
rubo77