Pop!_OS 21.10에서 엄청나게 긴 부팅 시간 진단

Pop!_OS 21.10에서 엄청나게 긴 부팅 시간 진단

최근에 컴퓨터를 Win10에서 Pop OS로 변경했습니다. 로그인 화면으로 이동하는 데 시간이 훨씬 더 오래 걸립니다. 예전에는 거의 즉각적으로 느껴졌지만 지금은 1분 이상 걸립니다. 빠른 NVME M.2에서 부팅되고 Ryzen 7-5800h가 함께 제공되므로 하드웨어 제한이 아니라는 것을 알고 있습니다.

터미널을 좀 뒤져보니 다음과 같은 내용이 나왔습니다.

jianzen@dragon-7:~$ systemd-analyze
Startup finished in 5.520s (firmware) + 388ms (loader) + 4.798s (kernel) + 1min 37.591s (userspace) = 1min 48.299s 
graphical.target reached after 1min 37.544s in userspace

jianzen@dragon-7:~$ systemd-analyze blame
6.388s NetworkManager-wait-online.service
5.102s plymouth-quit-wait.service
 562ms docker.service
 305ms accounts-daemon.service
 274ms man-db.service
...

jianzen@dragon-7:~$ systemd-analyze critical-chain
The time when unit became active or started is printed after the "@" character.
The time the unit took to start is printed after the "+" character.

graphical.target @1min 37.544s
└─multi-user.target @1min 37.544s
  └─docker.service @1min 36.981s +562ms
    └─network-online.target @1min 36.950s
      └─NetworkManager-wait-online.service @1min 30.560s +6.388s
        └─NetworkManager.service @1min 30.483s +64ms
          └─dbus.service @1min 30.481s
            └─basic.target @1min 30.477s
              └─sockets.target @1min 30.477s
                └─cups.socket @1min 30.589s
                  └─sysinit.target @1min 30.443s
                    └─systemd-backlight@backlight:acpi_video0.service @1.820s +3ms
                      └─system-systemd\x2dbacklight.slice @1.819s
                        └─system.slice @130ms
                          └─-.slice @130ms

blame범인과 critical-chain병목 현상이 발생한 위치를 가리키는 것이 없으므로 sysinit.target시작이 느려지는 원인을 찾기 위해 다음에 어디로 가야할지 모르겠습니다.

편집하다: 파일 시스템에 대한 추가 정보를 명시합니다.

jianzen@dragon-7:~$ lsblk
NAME        MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
nvme1n1     259:0    0 931.5G  0 disk 
├─nvme1n1p1 259:1    0 431.5G  0 part /mnt/SLibrary
└─nvme1n1p2 259:2    0   500G  0 part /mnt/Drive 2
nvme0n1     259:3    0 476.9G  0 disk 
├─nvme0n1p1 259:4    0     3G  0 part /boot/efi
├─nvme0n1p2 259:5    0    30G  0 part /home
├─nvme0n1p3 259:6    0    30G  0 part [SWAP]
└─nvme0n1p4 259:7    0 413.9G  0 part /

jianzen@dragon-7:~$ 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>
PARTUUID=1e9f9308-e092-4249-b178-4c1e61d9bd37  /boot/efi  vfat  umask=0077  0  0
UUID=375f4eac-da6d-4d87-a17a-aed548fe7961  /home  ext4  noatime,errors=remount-ro  0  0
/dev/mapper/cryptswap  none  swap  defaults  0  0
UUID=7f37168f-738f-475e-b593-237ccf58d0a5  /  ext4  noatime,errors=remount-ro  0  0
/dev/disk/by-uuid/FCC2A5FFC2A5BE70 /mnt/Drive\0402 auto nosuid,nodev,nofail,x-gvfs-show,x-gvfs-name=Drive%202 0 0
/dev/disk/by-uuid/6bee998f-b10b-4d1e-951a-a86b6d1b8b59 /mnt/SLibrary auto nosuid,nodev,nofail,x-gvfs-show,x-gvfs-name=SLibrary 0 0

편집자: Pt. 2 실행하면 dmesg다음과 같은 오류가 발생합니다(다른 모든 오류와 함께).

[    0.240256] ACPI BIOS Error (bug): Could not resolve symbol [\_SB.PCI0.PB2], AE_NOT_FOUND (20210930/dswload2-162)
[    0.240269] ACPI Error: AE_NOT_FOUND, During name lookup/catalog (20210930/psobject-220)
[    0.839449] integrity: Problem loading X.509 certificate -65

[    4.826083] ================================================================================
[    4.826138] UBSAN: invalid-load in /build/linux-RFp8Q8/linux-5.16.19/drivers/net/wireless/mediatek/mt76/dma.c:162:13
[    4.826199] load of value 103 is not a valid value for type '_Bool'

[   98.377451] [drm:nv_drm_master_set [nvidia_drm]] *ERROR* [nvidia-drm] [GPU ID 0x00000100] Failed to grab modeset ownership

[  114.634906] ================================================================================
[  114.634914] UBSAN: invalid-load in /build/linux-RFp8Q8/linux-5.16.19/net/mac80211/status.c:1164:21
[  114.634921] load of value 255 is not a valid value for type '_Bool'
[  120.040061] [drm:nv_drm_master_set [nvidia_drm]] *ERROR* [nvidia-drm] [GPU ID 0x00000100] Failed to grab modeset ownership

[  355.714107] TCP: wlp4s0: Driver has suspect GRO implementation, TCP performance may be compromised.

답변1

맙소사, 목록이 너무 많네요.

한 번 볼게요:

[0.240256] ACPI BIOS 오류(오류): 기호 [_SB.PCI0.PB2], AE_NOT_FOUND(20210930/dswload2-162)를 확인할 수 없습니다. [0.240269] ACPI 오류: AE_NOT_FOUND, 이름 조회/디렉토리(20210930/psobject-220) 중

이것은 심각한 것이 아니며 단지 커널이 특정 BIOS 기능을 지원하지 않는다는 것입니다. 이를 사용하거나 acpi=off부팅 시 acpi를 끌 수 있습니다. 그것은 큰 문제가 아닙니다.

[ 0.839449] 무결성: X.509 인증서 로드 중 문제 발생 -65

이 문제는 해결되어야 합니다. UEFI를 통해 부팅하는 것 같습니다. 영향을 확인하세요. (시작 프로세스와 모듈에 서명해야 합니다.커널 모듈 서명)

[4.826138] UBSAN: /build/linux-RFp8Q8/linux-5.16.19/drivers/net/wireless/mediatek/mt76/dma.c:162:13의 잘못된 페이로드 [4.826199] 값 103의 페이로드는 유효한 유형이 아닙니다. '_Bool'의 값 114.634914] UBSAN: /build/linux-RFp8Q8/linux-5.16.19/net/mac80211/status.c:1164:21 [114.634921] 값 255의 잘못된 페이로드는 " _Bool 유형의 유효한 값이 아닙니다. ”

무선 드라이버에 문제가 있습니다. 표시되는 값이 103 또는 255가 아니기 때문에 일부 버그가 있을 수 있습니다 _Bool. 어쩌면 뭔가가 올바르게 인식되지 않을 수도 있습니다. 소스를 확인하실 수 있습니다.

[98.377451][drm:nv_drm_master_set[nvidia_drm]]실수 [nvidia-drm] [GPU ID 0x00000100] 모드 세트 소유권을 얻을 수 없습니다.

아, NVIDIA 독점 드라이버에 문제가 있습니다. 글쎄, 여기서는 소스 코드를 확인할 수 없기 때문에 Nvidia가 직접 수정해야 하는 이 버그를 찾아야 합니다. 그것을 찾아보십시오. 어쩌면 모듈에 버그가 있을 수도 있습니다 nvidia-drm.

[355.714107] TCP: wlp4s0: 드라이버에 의심스러운 GRO 구현이 있으며 TCP 성능이 영향을 받을 수 있습니다.

GRO(일반 수신 오프로드)를 설정하려는 시도이지만 값이 마음에 들지 않습니다. 커널에 RH 수정 사항이 적용되었는지 확인하기 위해 커널을 검사할 수 있습니다. 자세한 내용은 다음을 참조하세요.운전자는 GRO가 구현한 것을 의심했습니다...

편집하다:Debian bookworm(Intel(R) Core(TM) i5-8350U CPU를 탑재한 Intel 노트북)의 부팅 속도 게시:

systemd-analyze
Startup finished in 18.763s (firmware) + 7.674s (loader) + 13.889s (kernel) + 6.821s (userspace) = 47.148s 
graphical.target reached after 6.795s in userspace

부팅 시간을 잡아먹는 것이 무엇인지 추측해야 한다면 Nvidia 드라이버일 것입니다. Nouveau 드라이버를 사용해 보고 부팅이 개선되는지 확인할 수 있습니다.

관련 정보