Какие службы dev-loop запущены при загрузке?


13

После загрузки я запустился systemd-analyze blameи вот результаты:

     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

Что это за услуги dev-loopxx.device( xxобозначает номера) и почему они занимают так много времени? Они связаны с монтажом защелок? Можно ли сократить время загрузки, отключив их? Я использую Ubuntu 18.04 вместе с Windows 10.


Мой максимум 14 мс. Кроме того, у меня есть только 5 из них.
— Йос

@Jos Означает ли это, что в моей системе есть ошибки?
— Апурв Потнис

Нет, это не значит, что есть ошибки как таковые. Это означает, что вы получили больше программного обеспечения из контейнеров. Каждое петлевое устройство легко устанавливается.
— Rinzwind

@Rinzwind Тогда, если я удалил эти снимки и установил версии этих приложений, не относящиеся к моментальным снимкам, моя загрузка станет быстрее?
— Апурв Потнис

1
Да, он удалит один цикл на установку (а также старые версии, если они есть).
— Rinzwind

Ответы:


18

Вы можете определить список всех установленных моментальных снимков snap list, для связи между точкой монтирования и именем моментального снимка, который вы можете использовать systemctl status, mountи losetup.

Например, на моем Ubuntu MATE 18.04 LTS у меня установлены следующие снимки:

$ 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

Они создают loop-устройства следующим образом:

$ 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

Точки монтирования следующие:

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

Давайте посмотрим ближе на 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

Папка /sys/devices/virtual/block/loop4содержит очень полезный файл loop/backing_file, мы можем прочитать его содержимое:

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

Таким образом, мы просто определили, что /dev/loop4создается coreоснасткой.


Но самый простой способ - использовать losetup(см. 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

Надеюсь, это поможет лучше понять точки монтирования Snaps.

Итог: используя Snaps для обновления программного обеспечения, мы в конечном итоге платим за него более высоким сетевым трафиком, большим использованием диска и более медленным временем загрузки. Если вы вообще не хотите использовать Snaps, удалите их с помощью sudo apt-get purge snapd.


К настоящему моменту оснастка значительно улучшилась, так что, возможно, у кого-нибудь не будет такого времени загрузки
— rubo77
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.