systemd продолжает возрождать pulseaudio и не позволяет мне его остановить

Поэтому я пытался остановить пульс pulseaudio -k, но он продолжал перезагружаться "сам по себе", хотя у меня есть конфигурация autospawn = no на месте.

Я почти уверен, что systemd продолжает его перезапускать, как указано в /usr/lib/systemd/user/pulseaudio.service:

[Unit]
Description=Sound Service

[Service]
# Note that notify will only work if --daemonize=no
Type=notify
ExecStart=/usr/bin/pulseaudio --daemonize=no
Restart=on-failure

[Install]
Also=pulseaudio.socket
WantedBy=default.target

Но дело в том, что когда я пытаюсь остановить эту службу с systemctl stop pulseaudio.service, systemctl возвращает мне следующее:

Failed to stop pulseaudio.service: Unit pulseaudio.service not loaded.

Как мне остановить / отключить эту услугу?

3 ответа

Для остановки пользовательских сервисов необходимо использовать параметр --user:

systemctl --user stop pulseaudio.socket
systemctl --user stop pulseaudio.service

systemctl --user mask pulseaudio.socketпомогло мне сделать так, чтобы он не перезапускался после его убийства. изменение конфигураций autospawn и daemon-binary не помогло, отключение службы также не помогло.

источник: https://winaero.com/blog/disable-pulseaudio-per-user-in-linux/

Также см. https://gitlab.freedesktop.org/pulseaudio/pulseaudio/-/issues/979 .

В файлах:
/usr/lib/systemd/user/pulseaudio.socket
/usr/lib/systemd/user/pulseaudio.service
чуть ниже строки:
ConditionUser=!root
добавляем:
ConditionUser=!gdm

Вот и все!

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