이것은 X에서 실행되는 pop!os 20.04입니다.
이 질문에 따르면https://gitlab.gnome.org/GNOME/gdm/-/issues/222 옛날 옛적에 gnome은 두 개의 gnome 쉘을 열어 두었습니다. 하나는 사용자용이고 다른 하나는 접수원용입니다(사용자 gdm에서 실행). 그런 다음 로그인 시 인사 담당자의 그놈 쉘이 "해제"되도록 변경되었습니다.
하지만 이런 일이 발생하지 않는 pop!os 20.04가 있고 gdm gnome-shell이 많은 상주 메모리를 사용하도록 증가합니다(예: 정상 작동 5일 후 >3GB).
나는 sudo kill -9 프로세스를 수행할 수 있으며 부작용은 없는 것 같습니다. 그러나 이후에도 다음 메시지가 반복적으로 나타났습니다.
journalctl _UID=110
gnome-shell-x11.service: Scheduled restart job, restart counter is at 31.
Sep 14 08:13:48 indigo systemd[1392]: Stopped GNOME Shell on X11.
Sep 14 08:13:48 indigo systemd[1392]: Starting GNOME Shell on X11...
Sep 14 08:15:18 indigo systemd[1392]: gnome-shell-x11.service: start operation timed out. Terminating.
Sep 14 08:15:23 indigo systemd[1392]: gnome-shell-x11.service: State 'stop-sigterm' timed out. Killing.
Sep 14 08:15:23 indigo systemd[1392]: gnome-shell-x11.service: Killing process 36912 (gnome-shell) with signal SIGKILL.
Sep 14 08:15:23 indigo systemd[1392]: gnome-shell-x11.service: Killing process 36917 (dconf worker) with signal SIGKILL.
Sep 14 08:15:23 indigo systemd[1392]: gnome-shell-x11.service: Main process exited, code=killed, status=9/KILL
Sep 14 08:15:23 indigo systemd[1392]: gnome-shell-x11.service: Failed with result 'timeout'.
Sep 14 08:15:23 indigo systemd[1392]: Failed to start GNOME Shell on X11.
Sep 14 08:15:23 indigo systemd[1392]: gnome-shell-x11.service: Scheduled restart job, restart counter is at 32.
Sep 14 08:15:23 indigo systemd[1392]: Stopped GNOME Shell on X11.
Sep 14 08:15:23 indigo systemd[1392]: Starting GNOME Shell on X11...
저는 역시 X11 아래의 가상 머신에서 동일한 버전의 pop을 실행하고 있으며, 가상 머신의 gdm에서는 실행되는 프로세스가 없습니다.
내 호스트 pop!os(내 실제 데스크톱)에 있는 내용은 다음과 같습니다. gdm에서 실행되는 또 다른 gnome-shell 프로세스가 있다는 점에 유의하세요. 그 중 단 한 명만이 기억 상주 가출 소비자가 되었습니다. (제가 저 한 명을 죽였습니다.)
UID PID PPID C STIME TTY TIME CMD
gdm 1392 1 0 Sep13 ? 00:00:00 /lib/systemd/systemd --user
gdm 1399 1392 0 Sep13 ? 00:00:00 (sd-pam)
gdm 1444 1392 0 Sep13 ? 00:00:00 /usr/bin/appimagelauncherd
gdm 1445 1392 0 Sep13 ? 00:00:00 /usr/bin/appimagelauncherfs
gdm 1449 1392 0 Sep13 ? 00:00:00 /usr/bin/pulseaudio --daemonize=no --log-target=journal
gdm 1451 1392 0 Sep13 ? 00:00:00 /usr/libexec/tracker-miner-fs
gdm 1458 1379 0 Sep13 tty1 00:00:00 /usr/lib/gdm3/gdm-x-session gnome-session --autostart /usr/share/gdm/greeter/autostart
gdm 1460 1458 0 Sep13 tty1 00:00:00 /usr/lib/xorg/Xorg vt1 -displayfd 3 -auth /run/user/110/gdm/Xauthority -background none -noreset -keeptty -verbose 3
gdm 1463 1392 0 Sep13 ? 00:00:00 /usr/bin/dbus-daemon --session --address=systemd: --nofork --nopidfile --systemd-activation --syslog-only
gdm 1485 1392 0 Sep13 ? 00:00:00 /usr/libexec/gvfsd
gdm 1514 1392 0 Sep13 ? 00:00:00 /usr/libexec/gvfsd-fuse /run/user/110/gvfs -f -o big_writes
gdm 1522 1392 0 Sep13 ? 00:00:00 /usr/libexec/gvfs-udisks2-volume-monitor
gdm 1528 1392 0 Sep13 ? 00:00:00 /usr/libexec/gvfs-goa-volume-monitor
gdm 1532 1392 0 Sep13 ? 00:00:00 /usr/libexec/goa-daemon
gdm 1608 1392 0 Sep13 ? 00:00:00 /usr/libexec/goa-identity-service
gdm 1643 1392 0 Sep13 ? 00:00:00 /usr/libexec/gvfs-gphoto2-volume-monitor
gdm 1651 1392 0 Sep13 ? 00:00:00 /usr/libexec/gvfs-afc-volume-monitor
gdm 1656 1392 0 Sep13 ? 00:00:00 /usr/libexec/gvfs-mtp-volume-monitor
gdm 1698 1458 0 Sep13 tty1 00:00:00 /usr/libexec/gnome-session-binary --systemd --autostart /usr/share/gdm/greeter/autostart
gdm 1745 1392 0 Sep13 ? 00:00:00 /usr/libexec/at-spi-bus-launcher
gdm 1753 1745 0 Sep13 ? 00:00:00 /usr/bin/dbus-daemon --config-file=/usr/share/defaults/at-spi2/accessibility.conf --nofork --print-address 3
gdm 1811 1392 0 Sep13 ? 00:00:00 /usr/libexec/gnome-session-ctl --monitor
gdm 1824 1392 0 Sep13 ? 00:00:00 ssh-agent -D -a /run/user/110/openssh_agent
gdm 1829 1392 0 Sep13 ? 00:00:00 /usr/libexec/gnome-session-binary --systemd-service --session=gnome-login
gdm 1955 1392 0 Sep13 ? 00:00:00 /usr/libexec/at-spi2-registryd --use-gnome-session
gdm 1962 1392 0 Sep13 ? 00:00:00 /usr/libexec/xdg-permission-store
gdm 1997 1392 0 Sep13 ? 00:00:00 /usr/libexec/gsd-a11y-settings
gdm 1998 1392 0 Sep13 ? 00:00:00 /usr/libexec/gsd-color
gdm 1999 1392 0 Sep13 ? 00:00:00 /usr/libexec/gsd-keyboard
gdm 2001 1392 0 Sep13 ? 00:00:00 /usr/libexec/gsd-media-keys
gdm 2003 1392 0 Sep13 ? 00:00:00 /usr/libexec/gsd-power
gdm 2005 1392 0 Sep13 ? 00:00:00 /usr/libexec/gsd-print-notifications
gdm 2009 1392 0 Sep13 ? 00:00:00 /usr/libexec/gsd-rfkill
gdm 2010 1392 0 Sep13 ? 00:00:00 /usr/libexec/gsd-smartcard
gdm 2011 1392 0 Sep13 ? 00:00:00 /usr/libexec/gsd-sound
gdm 2014 1392 0 Sep13 ? 00:00:00 /usr/libexec/gsd-usb-protection
gdm 2016 1392 0 Sep13 ? 00:00:00 /usr/libexec/gsd-wacom
gdm 2020 1392 0 Sep13 ? 00:00:00 /usr/libexec/gsd-wwan
gdm 2022 1392 0 Sep13 ? 00:00:00 /usr/libexec/gsd-xsettings
gdm 2058 1392 0 Sep13 ? 00:00:00 /usr/libexec/gsd-printer
gdm 2269 1392 0 Sep13 ? 00:00:00 /usr/libexec/dconf-service
gdm 37465 1392 0 08:18 ? 00:00:00 /usr/bin/gnome-shell
내 가상 인스턴스에서:
$ ps -f -u gdm
UID PID PPID C STIME TTY TIME CMD
그러니까 이상해요.
기본적으로 전체 gdm 세션을 실행하는 이유를 파악하는 방법을 모르겠습니다.
답변1
분명히 gdm3가 xserver 세션을 종료하도록 하는 패치는 상당히 새로운 것이며 아직 대부분의 장소에서 생산되지 않습니다. 내가 보고 있는 버그는 Fedora 32에서도 발생합니다(환영 프로그램이 기본값이 아닌 xorg를 사용하도록 강제하는 경우).
바라보다:https://gitlab.gnome.org/GNOME/gdm/-/issues/222
가상 머신은 wayland/xwayland를 인사말로 사용합니다. 이것이 더 쉬운 수정입니다.
/etc/gdm3/custom.conf
xorg.txt를 강제하는 행을 주석 처리하려면 편집하세요 . 즉, 다음과 같이 파일을 편집하십시오.
[daemon]
# Uncoment the line below to force the login screen to use Xorg
#WaylandEnable=false
환영 프로그램이 wayland/xwayland를 사용할 때 xorg 로그인 세션이 시작되더라도 gdm3는 해당 세션을 종료하기 때문입니다. 따라서 gdm이 소유한 x 서버는 없습니다. 이로 인해 최소 300MB의 상주 RAM이 절약되었으며 제 경우에는 메모리 누수를 피할 수 있었습니다.