загрузка: восстановление и оптимизация

Вопросы программного кода и архитектуры Linux

Модератор: Olej

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Re: загрузка: восстановление и оптимизация

Непрочитанное сообщение Olej » 08 фев 2022, 21:02

Olej писал(а):
08 фев 2022, 19:21
Свободному драйверу nouveau (говно, в общем) не хватает ещё какого-то firmware для NVIDIA GeForce GT 520:
После смены этой приблуды nouveau на оригинальный драйвер от NVIDIA время загрузки стало ещё хуже:

Код: Выделить всё

[olej@xenix ~]$ inxi -Gxxx
Graphics:
  Device-1: NVIDIA GF119 [GeForce GT 520] vendor: ASUSTeK ENGT520 SILENT
    driver: nvidia v: 390.147 bus-ID: 01:00.0 chip-ID: 10de:1040 class-ID: 0300
  Display: x11 server: X.Org 1.20.14 driver: loaded: nvidia
    unloaded: fbdev,modesetting,nouveau,vesa alternate: nv
    resolution: 1920x1080~60Hz s-dpi: 96
  OpenGL: renderer: GeForce GT 520/PCIe/SSE2 v: 4.6.0 NVIDIA 390.147
    direct render: Yes

Код: Выделить всё

nvidia_drm             53248  2
nvidia_modeset       1060864  8 nvidia_drm
nvidia              15884288  324 nvidia_modeset
drm_kms_helper        315392  1 nvidia_drm
drm                   630784  5 drm_kms_helper,nvidia_drm
ipmi_msghandler       118784  2 ipmi_devintf,nvidia

Код: Выделить всё

[olej@xenix ~]$ 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 @2min 46.523s
└─multi-user.target @2min 46.523s
  └─plymouth-quit-wait.service @5.401s +2min 41.120s
    └─systemd-user-sessions.service @5.356s +33ms
      └─remote-fs.target @5.332s
        └─remote-fs-pre.target @5.332s
          └─nfs-client.target @5.062s
            └─gssproxy.service @4.931s +128ms
              └─network.target @4.921s
                └─systemd-resolved.service @4.363s +557ms
                  └─systemd-tmpfiles-setup.service @4.320s +34ms
                    └─local-fs.target @4.313s
                      └─boot.mount @4.298s +15ms
                        └─systemd-fsck@dev-disk-by\x2duuid-6337320c\x2d1562\x2d4db4\x2d8880\x2dff984ce1eea0.service @4.252s +43ms
                          └─local-fs-pre.target @4.249s
                            └─lvm2-monitor.service @1.734s +1.364s
                              └─dm-event.socket @1.706s
                                └─system.slice
                                  └─-.slice

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Re: загрузка: восстановление и оптимизация

Непрочитанное сообщение Olej » 08 фев 2022, 21:23

Olej писал(а):
08 фев 2022, 19:21
Свободному драйверу nouveau (говно, в общем) не хватает ещё какого-то firmware для NVIDIA GeForce GT 520:
После замены nouveau на оригинальный драйвер от NVIDIA:

Код: Выделить всё

[olej@xenix ~]$ inxi -Gxxx
Graphics:
  Device-1: NVIDIA GF119 [GeForce GT 520] vendor: ASUSTeK ENGT520 SILENT
    driver: nvidia v: 390.147 bus-ID: 01:00.0 chip-ID: 10de:1040 class-ID: 0300
  Display: x11 server: X.Org 1.20.14 driver: loaded: nvidia
    unloaded: fbdev,modesetting,nouveau,vesa alternate: nv
    resolution: 1920x1080~60Hz s-dpi: 96
  OpenGL: renderer: GeForce GT 520/PCIe/SSE2 v: 4.6.0 NVIDIA 390.147
    direct render: Yes

Код: Выделить всё

[olej@xenix ~]$ lsmod | grep nvidia
nvidia_drm             53248  2
nvidia_modeset       1060864  8 nvidia_drm
nvidia              15884288  324 nvidia_modeset
drm_kms_helper        315392  1 nvidia_drm
drm                   630784  5 drm_kms_helper,nvidia_drm
ipmi_msghandler       118784  2 ipmi_devintf,nvidia
Всё становится лучше с точки зрения графики, но ещё хуже - по времени загрузки:

Код: Выделить всё

[olej@xenix ~]$ 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 @2min 46.523s
└─multi-user.target @2min 46.523s
  └─plymouth-quit-wait.service @5.401s +2min 41.120s
    └─systemd-user-sessions.service @5.356s +33ms
      └─remote-fs.target @5.332s
        └─remote-fs-pre.target @5.332s
          └─nfs-client.target @5.062s
            └─gssproxy.service @4.931s +128ms
              └─network.target @4.921s
                └─systemd-resolved.service @4.363s +557ms
                  └─systemd-tmpfiles-setup.service @4.320s +34ms
                    └─local-fs.target @4.313s
                      └─boot.mount @4.298s +15ms
                        └─systemd-fsck@dev-disk-by\x2duuid-6337320c\x2d1562\x2d4db4\x2d8880\x2dff984ce1eea0.service @4.252s +43ms
                          └─local-fs-pre.target @4.249s
                            └─lvm2-monitor.service @1.734s +1.364s
                              └─dm-event.socket @1.706s
                                └─system.slice
                                  └─-.slice

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Re: загрузка: восстановление и оптимизация

Непрочитанное сообщение Olej » 08 фев 2022, 21:29

Olej писал(а):
08 фев 2022, 21:23
но ещё хуже - по времени загрузки:
Возможно (предположение), что nouveau нужно явно вручную занести в blacklist:

Код: Выделить всё

[olej@xenix ~]$ dmesg | grep nouveau
[    0.000000] Command line: BOOT_IMAGE=(hd0,msdos1)/vmlinuz-5.16.5-200.fc35.x86_64 root=UUID=d0c2512d-1e50-4057-99dc-19a989152be9 ro rootflags=subvol=root00 rd.driver.blacklist=nouveau modprobe.blacklist=nouveau nvidia-drm.modeset=1 rhgb quiet systemd.unified_cgroup_hierarchy=0
[    0.079134] Kernel command line: BOOT_IMAGE=(hd0,msdos1)/vmlinuz-5.16.5-200.fc35.x86_64 root=UUID=d0c2512d-1e50-4057-99dc-19a989152be9 ro rootflags=subvol=root00 rd.driver.blacklist=nouveau modprobe.blacklist=nouveau nvidia-drm.modeset=1 rhgb quiet systemd.unified_cgroup_hierarchy=0

Код: Выделить всё

[olej@xenix ~]$ journalctl -b | grep nouveau
фев 08 19:48:17 xenix.localdomain kernel: Command line: BOOT_IMAGE=(hd0,msdos1)/vmlinuz-5.16.5-200.fc35.x86_64 root=UUID=d0c2512d-1e50-4057-99dc-19a989152be9 ro rootflags=subvol=root00 rd.driver.blacklist=nouveau modprobe.blacklist=nouveau nvidia-drm.modeset=1 rhgb quiet systemd.unified_cgroup_hierarchy=0
фев 08 19:48:17 xenix.localdomain kernel: Kernel command line: BOOT_IMAGE=(hd0,msdos1)/vmlinuz-5.16.5-200.fc35.x86_64 root=UUID=d0c2512d-1e50-4057-99dc-19a989152be9 ro rootflags=subvol=root00 rd.driver.blacklist=nouveau modprobe.blacklist=nouveau nvidia-drm.modeset=1 rhgb quiet systemd.unified_cgroup_hierarchy=0
фев 08 19:48:17 xenix.localdomain dracut-cmdline[243]: Using kernel command line parameters:  rd.driver.pre=btrfs   BOOT_IMAGE=(hd0,msdos1)/vmlinuz-5.16.5-200.fc35.x86_64 root=UUID=d0c2512d-1e50-4057-99dc-19a989152be9 ro rootflags=subvol=root00 rd.driver.blacklist=nouveau modprobe.blacklist=nouveau nvidia-drm.modeset=1 rhgb quiet systemd.unified_cgroup_hierarchy=0
фев 08 19:51:04 xenix.localdomain systemd[1]: Condition check resulted in Fallback to nouveau as nvidia did not load being skipped.
Отключение модуля nouveau
Если установщик nvidia-installer обнаружит активный драйвер Nouveau, он предложит создать файл настроек modprobe для отключения Nouveau. После чего потребуется перезагрузить компьютер и снова запустить nvidia-installer. Но мы пойдём инным путём и создадим такой файл настроек modprobe вручную.
Добавлю:

Код: Выделить всё

root@xenix etc]# touch /etc/modprobe.d/disable-nouveau.conf

[root@xenix modprobe.d]# cat /etc/modprobe.d/disable-nouveau.conf
blacklist nouveau
options nouveau modeset=0

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Re: загрузка: восстановление и оптимизация

Непрочитанное сообщение Olej » 22 ноя 2022, 19:28

Olej писал(а):
08 фев 2022, 21:29
Добавлю:
Вот это оно и есть:

Код: Выделить всё

[olej@xenix ~]$ 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 @8.583s
└─multi-user.target @8.583s
  └─plymouth-quit-wait.service @5.668s +2.914s
    └─systemd-user-sessions.service @5.568s +88ms
      └─remote-fs.target @5.490s
        └─remote-fs-pre.target @5.490s
          └─nfs-client.target @5.067s
            └─gssproxy.service @4.928s +138ms
              └─network.target @4.916s
                └─NetworkManager.service @4.612s +303ms
                  └─basic.target @4.610s
                    └─dbus-broker.service @4.552s +55ms
                      └─dbus.socket @4.544s
                        └─sysinit.target @4.471s
                          └─plymouth-read-write.service @4.283s +187ms
                            └─local-fs.target @4.279s
                              └─boot.mount @4.270s +9ms
                                └─systemd-fsck@dev-disk-by\x2duuid-6337320c\x2d1562\x2d4db4\x2d8880\x2dff984ce1eea0.service @4.083s +160ms
                                  └─local-fs-pre.target @4.079s
                                    └─lvm2-monitor.service @1.746s +1.199s
                                      └─dm-event.socket @1.719s
                                        └─system.slice
                                          └─-.slice

Код: Выделить всё

[olej@xenix ~]$ systemd-analyze blame
8.252s dnf-makecache.service
2.914s plymouth-quit-wait.service
2.143s systemd-udev-settle.service
1.966s initrd-switch-root.service
1.913s akmods.service
1.199s lvm2-monitor.service
 715ms libvirtd.service
 610ms smartd.service
 602ms accounts-daemon.service
 568ms NetworkManager-wait-online.service
 497ms dracut-initqueue.service
 455ms lightdm.service
 399ms systemd-journal-flush.service
 395ms user@1000.service
 369ms polkit.service
 359ms ModemManager.service
 345ms cups.service
 343ms nfs-server.service
 325ms initrd-parse-etc.service
 306ms udisks2.service
 304ms proc-fs-nfsd.mount
 303ms NetworkManager.service
 248ms systemd-resolved.service
 235ms lm_sensors.service
 218ms teamviewerd.service
 206ms rpc-statd.service
 205ms nfs-mountd.service
 199ms systemd-udevd.service
 194ms vboxdrv.service
 187ms plymouth-read-write.service
 186ms systemd-vconsole-setup.service
 181ms systemd-logind.service
 177ms rsyslog.service
 167ms systemd-udev-trigger.service
 160ms systemd-fsck@dev-disk-by\x2duuid-6337320c\x2d1562\x2d4db4\x2d8880\x2dff984ce1eea0.service
 152ms avahi-daemon.service
 149ms chronyd.service
 138ms gssproxy.service
 121ms systemd-zram-setup@zram0.service
 120ms dracut-cmdline.service
 116ms upower.service
 103ms plymouth-switch-root.service
  90ms gpm.service
  88ms systemd-user-sessions.service
  86ms livesys.service
  85ms modprobe@drm.service
  85ms dev-zram0.swap
  81ms rtkit-daemon.service
  67ms sshd.service
  66ms dracut-pre-pivot.service
  64ms colord.service
  63ms setup-cyrfont@tty1.service
  61ms systemd-tmpfiles-setup-dev.service
  60ms setup-cyrfont@tty2.service
  59ms setup-cyrfont@tty3.service
  58ms setup-cyrfont@tty4.service
  55ms dbus-broker.service
  55ms systemd-journald.service
  52ms systemd-sysctl.service
  51ms systemd-remount-fs.service
  50ms rpcbind.service
  50ms systemd-modules-load.service
  49ms systemd-random-seed.service
  47ms modprobe@configfs.service
  46ms setup-cyrfont@tty5.service
  44ms systemd-tmpfiles-clean.service
  44ms home-olej-\xd0\x97\xd0\xb0\xd0\xb3\xd1\x80\xd1\x83\xd0\xb7\xd0\xba\xd0\xb8.mount
  42ms rpc-statd-notify.service
  41ms setup-cyrfont@tty6.service
  38ms dev-disk-by\x2duuid-e636cb90\x2d5b2c\x2d4383\x2db9d1\x2d290b0f29269a.swap
  38ms systemd-tmpfiles-setup.service
  37ms nfs-convert.service
  37ms systemd-machined.service
  37ms dev-hugepages.mount
  35ms dev-mqueue.mount
  35ms dracut-pre-udev.service
  32ms sys-kernel-debug.mount
  32ms readonly-root.service
  31ms sys-kernel-tracing.mount
  29ms kmod-static-nodes.service
  29ms systemd-fsck-root.service
  29ms initrd-cleanup.service
  24ms sys-fs-fuse-connections.mount
  24ms nfs-idmapd.service
  21ms sys-kernel-config.mount
  21ms nfsdcld.service
  18ms livesys-late.service
  16ms systemd-update-utmp.service
  15ms plymouth-start.service
  14ms user-runtime-dir@1000.service
  12ms initrd-udevadm-cleanup-db.service
  10ms var-lib-nfs-rpc_pipefs.mount
  10ms systemd-update-utmp-runlevel.service
   9ms boot.mount
   6ms dracut-shutdown.service
   5ms modprobe@fuse.service
   4ms tmp.mount
8.5 сек. до загрузки графической сессии.

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

загрузка: восстановление и оптимизация

Непрочитанное сообщение Olej » 27 июл 2023, 13:56

Решил посмотреть что там начудили с запуском сервисов в Fedora 38:

Код: Выделить всё

[olej@xenix ~]$ lsb_release -a
LSB Version:	:core-4.1-amd64:core-4.1-noarch
Distributor ID:	Fedora
Description:	Fedora release 38 (Thirty Eight)
Release:	38
Codename:	ThirtyEight

Код: Выделить всё

[olej@xenix ~]$ systemd-analyze blame | wc -l
197
Это нужно разбираться в теме Fedora ...
Но там обнаруживаются любопытные вещи:

Код: Выделить всё

[olej@xenix ~]$ systemd-analyze blame | grep sys-devices-platform-serial8250-tty-ttyS | wc -l
32

Код: Выделить всё

[olej@xenix ~]$ ls /dev/ttyS*
/dev/ttyS0   /dev/ttyS12  /dev/ttyS16  /dev/ttyS2   /dev/ttyS23  /dev/ttyS27  /dev/ttyS30  /dev/ttyS6
/dev/ttyS1   /dev/ttyS13  /dev/ttyS17  /dev/ttyS20  /dev/ttyS24  /dev/ttyS28  /dev/ttyS31  /dev/ttyS7
/dev/ttyS10  /dev/ttyS14  /dev/ttyS18  /dev/ttyS21  /dev/ttyS25  /dev/ttyS29  /dev/ttyS4   /dev/ttyS8
/dev/ttyS11  /dev/ttyS15  /dev/ttyS19  /dev/ttyS22  /dev/ttyS26  /dev/ttyS3   /dev/ttyS5   /dev/ttyS9
Это что, они заранее создают 32 штуки последовательных консолей RS-232 :?: :-o

Ответить

Вернуться в «Linux изнутри»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 7 гостей