systemd-analyze의 dev-sda.device는 무엇입니까, 비활성화 할 수 있습니까? 7.935s NetworkManager-wait-online.service

창문과 함께 노트북에 Ubuntu 16.04가 설치되어 있습니다. 에서 systemd-analyze blame‘DEV-sda7.device’라는 서비스 너무 많은 시간을하고있다. 이 문제를 해결하는 방법 또는 비활성화해야합니까?

에 의한 결과 systemd-analyze time

Startup finished in 4.207s (firmware) + 4.576s (loader) + 3.466s (kernel) + 33.899s (userspace) = 46.149s

에 의한 결과 systemd-analyze blame

         16.326s dev-sda7.device
         12.859s ufw.service
         11.263s systemd-tmpfiles-setup-dev.service
          7.935s NetworkManager-wait-online.service
          3.203s keyboard-setup.service
          2.736s vboxdrv.service
          2.467s accounts-daemon.service
          2.349s apache2.service
          2.239s NetworkManager.service
          2.163s ModemManager.service
          1.963s lightdm.service
          1.843s nmbd.service
          1.749s samba-ad-dc.service
          1.599s systemd-fsck@dev-disk-by\x2duuid-B053\x2dA56B.service
          1.367s thermald.service
          1.127s polkitd.service
          1.112s systemd-journald.service
          1.066s teamviewerd.service
          1.007s udisks2.service
           975ms apparmor.service
           926ms plymouth-start.service

에 의한 결과 cat /etc/fstab

# /etc/fstab: static file system information.
#
# Use 'blkid' to print the universally unique identifier for a
# device; this may be used with UUID= as a more robust way to name devices
# that works even if disks are added and removed. See fstab(5).
#
# <file system> <mount point>   <type>  <options>       <dump>  <pass>
# / was on /dev/sda7 during installation
UUID=493cc833-193e-435d-840a-b862ca367fba /               ext4    errors=remount-ro 0       1
# /boot/efi was on /dev/sda2 during installation
UUID=B053-A56B  /boot/efi       vfat    umask=0077      0       1
# swap was on /dev/sda6 during installation
UUID=a49f56b1-53c3-4eaf-9460-0a221e59957a none            swap    sw              0       0


답변

/dev/sda7루트 파티션이 마운트되어 있기 때문에 비활성화 할 수 없습니다 . 시스템에서는 부팅하는 동안 처리 할 수있는 모든 것이 시스템 단위로 만들어집니다. 그런 다음 트랙 타이밍과 같은 작업을 수행하거나 서비스에 따라 작업을 수행 할 수 있습니다. 장치의 경우 체인은 다음과 같습니다.

  • 커널은 장치를로드하고 활성화합니다
  • systemd는 이것을 감시 /dev/sdxy하고 그것에 대한 노드를 만듭니다.
  • systemd는 다음에서 생성 된 다양한 마운트 장치를 활성화합니다. fstab
  • 그런 다음 파일 시스템이 마운트되기를 기다리는 다양한 다른 서비스를 트리거합니다.
  • 등등

이렇게하면 디스크 활성화 속도가 느리다는 것을 알 수 있지만 새 디스크를 얻을 수 없다면 디스크로 할 수있는 일이 많지 않습니다.

중요한 경로를 분석하고 수정할 수있는 것이 있는지 확인할 수 있습니다.

systemd-analyze critical-chain [UNIT...]  prints a tree of the
time-critical chain of units (for each of the specified UNITs or for
the default target otherwise). The time after the unit is active or
started is printed after the "@" character. The time the unit takes to
start is printed after the "+" character. Note that the output might be
misleading as the initialization of one service might depend on socket
activation and because of the parallel execution of units.

예:

graphical.target @10.868s
└─multi-user.target @10.868s
  └─squid-deb-proxy.service @10.816s +51ms
    └─network-online.target @10.814s
      └─NetworkManager-wait-online.service @2.419s +8.395s
        └─NetworkManager.service @2.243s +155ms
          └─dbus.service @2.192s
            └─basic.target @2.129s
              └─sockets.target @2.129s
                └─snapd.socket @2.127s +1ms
                  └─sysinit.target @2.127s
                    └─swap.target @2.127s
                      └─dev-disk-by\x2duuid-498d24e5\x2d7755\x2d422f\x2dbe45\x2d1b78d50b44e8.swap @2.119s +7ms
                        └─dev-disk-by\x2duuid-498d24e5\x2d7755\x2d422f\x2dbe45\x2d1b78d50b44e8.device @2.119s

예를 들어, 제 경우에는 네트워크 시작 속도가 느려집니다.