Запрет перезапуска pulseaudio под gdm/systemd! Другие ответы не работают!

Когда я загружаюсь (Ubuntu 18.04), systemd запускает pulseaudio под пользователем gdm. Я не хочу этого - я хочу запускать pulseaudio под своим пользователем, из-за проблем с pulseaudio под gdm и mpd.

Так что я пытаюсь убить его, но ничто не может убить этого монстра. Он продолжает возрождаться. Люди задавали этот вопрос раньше, и все следующие решения не сработали:

  1. Добавьте "autospawn=no" в "/etc/pulse/client.conf" Добавьте "autospawn=no" в "/var/lib/gdm3/.config/pulse/client.conf"
  2. Также добавьте "daemon-binary = /bin/true" в client.conf
  3. "sudo rm -f /etc/xdg/autostart/pulseaudio.desktop"
  4. "sudo systemctl kill pulseaudio" (Возвращает "Не удалось убить модуль pulseaudio.service: Unit pulseaudio.service is not loaded.")
  5. Удаление /etc/xdg/autostart/pulseaudio*
  6. systemctl --user stop pulseaudio.socket
  7. systemctl --user stop pulseaudio.service
  8. systemctl disable pulseaudio

Согласно pstree, он продолжает перезапускаться systemd с пользователем gdm, если я убиваю его (как root), процесс умирает, и systemd просто перезапускает его.

Но я не могу понять, почему systemd запускает его:

% systemctl --type=service | grep pulse
% systemctl list-units --type=service | grep pulse

На самом деле, systemctl даже не считает его запущенным:

% systemctl | grep pulse
% systemctl --state=running | grep pulse

Вот почему:

% systemctl disable pulseaudio
Failed to disable unit: Unit file pulseaudio.service does not exist.

И systemd не признается, что запускает его:

% systemd --test | grep -i pulse
Loaded units and determined initial transaction in 27ms.

Но pstree говорит нам, что он лжет:

% pstree
    .....
    |-systemd-+-(sd-pam)
    ...
    |         |-pulseaudio---{pulseaudio}

Он также не указан в init. d или Xsession.d скриптах:

% ls /etc/init.d/*pulse*
ls: cannot access '/etc/init.d/*pulse*': No such file or directory
% ls /etc/X11/Xsession.d/*pulse*
ls: cannot access '/etc/X11/Xsession.d/*pulse*': No such file or directory

Хотя этот файл существует:

/var/lib/gdm3/.config/systemd/user/sockets.target.wants/pulseaudio.socket Который утверждает "WantedBy=sockets.target", что бы это ни значило...

Я думаю, что это может быть частично проблемой пути к systemd - его нет в пути /etc/systemd:

% find /etc/systemd/ -name '*pulse*'

Но:

% find /usr/lib/systemd | grep pulseaudio
/usr/lib/systemd/user/pulseaudio.socket
/usr/lib/systemd/user/pulseaudio.service

Я заметил, что у кого-то еще была эта ошибка на redhat:

https://bugzilla.redhat.com/show_bug.cgi?id=1635119

Разочаровывает то, что она была закрыта как NOTABUG без объяснения причин.

Что нужно сделать, чтобы убить этот процесс и сохранить его убитым, без какого-либо хака вроде временного перемещения двоичного файла?

.
0
задан 3 February 2020 в 05:48

0 ответов

Другие вопросы по тегам:

Похожие вопросы: