systemd 不断重生 pulseaudio,不允许我停止它

systemd 不断重生 pulseaudio,不允许我停止它

因此,我尝试使用 停止 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.

我如何停止/禁用此服务?

答案1

要停止用户服务,必须使用以下参数--user

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

答案2

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

答案3

在文件中:
/usr/lib/systemd/user/pulseaudio.socket
/usr/lib/systemd/user/pulseaudio.service
在以下行下方:
ConditionUser=!root
添加:
ConditionUser=!gdm

就是这样!

相关内容