Parece que qualquer processo vinculado à família libpulse * de objetos compartilhados - antes ou depois da execução do X e do gerenciador de janelas do i3 - pode implicitamente iniciar automaticamente o servidor PulseAudio, sob o processo do usuário, como um subproduto das tentativas de interface com o subsistema de áudio. O criador do PulseAudio, Lennart Poettering, parece confirmar isso, em um e-mail de 2015-05-29 para o systemd -devel mailing list :
"pulseaudio is generally not a system service but a user service. Unless your user session is fully converted to be managed by systemd too (which is unlikely) systemd is hence not involved at all with starting it.
"PA is usually started from the session setup script or service. In Gnome that's gnome-session, for example. It's also auto-spawned on-demand if the libraries are used and note that it is missing."
Por exemplo, no Debian Stretch (Testing), o navegador da Web IceWeasel vincula-se a dois objetos compartilhados libpulse *: 1) libpulsecommon-7.1.so; e 2) libpulse.so.0.18.2:
k@bucket:~$ ps -ef | grep iceweasel
k 17318 1 5 18:58 tty2 00:00:15 iceweasel
k 17498 1879 0 19:03 pts/0 00:00:00 grep iceweasel
k@bucket:~$ sudo pmap 17318 | grep -i pulse
00007fee08377000 65540K rw-s- pulse-shm-2442253193
00007fee0c378000 65540K rw-s- pulse-shm-3156287926
00007fee11d24000 500K r-x-- libpulsecommon-7.1.so
00007fee11da1000 2048K ----- libpulsecommon-7.1.so
00007fee11fa1000 4K r---- libpulsecommon-7.1.so
00007fee11fa2000 8K rw--- libpulsecommon-7.1.so
00007fee121af000 316K r-x-- libpulse.so.0.18.2
00007fee121fe000 2044K ----- libpulse.so.0.18.2
00007fee123fd000 4K r---- libpulse.so.0.18.2
00007fee123fe000 4K rw--- libpulse.so.0.18.2
Você pode ver quais processos em execução estão vinculados ao libpulse *. Por exemplo, primeiro obtenha uma lista de objetos compartilhados libpulse *, então execute lsof, em cada (note: isso vem do Debian Stretch (Testing), então sua saída pode ser diferente):
sudo find / -type f -name "*libpulse*"
*snip*
/usr/lib/x86_64-linux-gnu/pulseaudio/libpulsedsp.so
/usr/lib/x86_64-linux-gnu/pulseaudio/libpulsecommon-7.1.so
/usr/lib/x86_64-linux-gnu/libpulse.so.0.18.2
/usr/lib/x86_64-linux-gnu/libpulse-simple.so.0.1.0
/usr/lib/x86_64-linux-gnu/libpulse-mainloop-glib.so.0.0.5
/usr/lib/libpulsecore-7.1.so
/usr/lib/ao/plugins-4/libpulse.so
sudo lsof /usr/lib/x86_64-linux-gnu/pulseaudio/libpulsecommon-7.1.so
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
gnome-she 864 Debian-gdm mem REG 252,1 524312 274980 /usr/lib/x86_64-linux-gnu/pulseaudio/libpulsecommon-7.1.so
gnome-set 965 Debian-gdm mem REG 252,1 524312 274980 /usr/lib/x86_64-linux-gnu/pulseaudio/libpulsecommon-7.1.so
gnome-set 1232 k mem REG 252,1 524312 274980 /usr/lib/x86_64-linux-gnu/pulseaudio/libpulsecommon-7.1.so
gnome-she 1286 k mem REG 252,1 524312 274980 /usr/lib/x86_64-linux-gnu/pulseaudio/libpulsecommon-7.1.so
chrome 2730 k mem REG 252,1 524312 274980 /usr/lib/x86_64-linux-gnu/pulseaudio/libpulsecommon-7.1.so
pulseaudi 18356 k mem REG 252,1 524312 274980 /usr/lib/x86_64-linux-gnu/pulseaudio/libpulsecommon-7.1.so
Para dizer a esses processos para não exibir o PulseAudio, edite ~ / .config / pulse / client.conf e adicione linha
autospawn = no
O PulseAudio e suas bibliotecas respeitam essa configuração, geralmente.
A ligação libpulse *, executando processos, também pode indicar porque o PulseAudio reaparece tão rapidamente. A página FreeDesktop.org, " Running PulseAudio ", parece confirmar isso:
"...typically some background application will immediately reconnect, causing the server to get immediately restarted."
Você parece indicar que inicia o gerenciador de janelas do i3, por meio do console, executando xinit e não usa um gerenciador de exibição ou ambiente de área de trabalho. O restante desta resposta detalha informações para aqueles que usam o GNOME, o KDE e assim por diante.
INFORMAÇÕES ADICIONAIS PARA O AUTOSTART DO GNOME / KDE
O Pacote PulseAudio (5.0-13), no Debian Jessie (Stable) amd64, instala os quatro arquivos do sistema :
- /etc/xdg/autostart/pulseaudio-kde.desktop
- /etc/xdg/autostart/pulseaudio.desktop
- / usr / bin / start-pulseaudio-x11
- / usr / bin / start-pulseaudio-kde
Alguns gerenciadores de sessão gráfica executam automaticamente scripts de autostart do FreeDesktop.org , no login do usuário . O script de inicialização automática do PulseAudio, por sua vez, informa aos gerenciadores de sessão gráficos para executar o script de inicialização apropriado do PulseAudio:
/usr/bin/start-pulseaudio-x11
/usr/bin/start-pulseaudio-kde
Esses scripts chamam o cliente PulseAudio / usr / bin / pactl para carregar módulos PulseAudio, que geram o servidor PulseAudio, como um subproduto (observação: se você tiver autospawn definido como "não", o pactl respeitará isso e não servidor PulseAudio autospawn).
Mais detalhes, na página FreeDesktop.org " Running PulseAudio ".
Alguns gerentes de exibição, além disso, em outras distribuições, podem iniciar o PulseAudio (por exemplo, SDDM , no ArchLinux , embora os mantenedores possam ter resolvido isso, até agora).