Tampaknya proses apa pun yang menghubungkan ke keluarga libpulse * dari objek yang dibagikan - baik sebelum atau setelah menjalankan X dan i3 window manager - dapat secara implisit autospawn server PulseAudio, dalam proses pengguna Anda, sebagai produk sampingan dari upaya untuk berinteraksi dengan subsistem audio . Pencipta PulseAudio Lennart Poettering tampaknya mengkonfirmasi ini, dalam email 2015-05-29 ke mailing list systemd-devel :
"pulseaudio umumnya bukan layanan sistem tetapi layanan pengguna. Kecuali sesi pengguna Anda sepenuhnya dikonversi untuk dikelola oleh systemd juga (yang tidak mungkin) systemd karenanya tidak terlibat sama sekali dengan memulainya.
"PA biasanya dimulai dari skrip penyetelan sesi atau layanan. Di Gnome itu gnome-sesi, misalnya. Ini juga permintaan otomatis jika perpustakaan digunakan dan perhatikan bahwa itu hilang."
Misalnya, pada Debian Stretch (Pengujian), browser web IceWeasel menautkan ke dua objek libpulse * yang dibagikan: 1) libpulsecommon-7.1.so; dan 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
Anda dapat melihat proses yang sedang berjalan mana tautan ke libpulse *. Sebagai contoh, pertama-tama dapatkan daftar objek yang dibagikan libpulse *, kemudian jalankan lsof di masing-masing (catatan: ini berasal dari Debian Stretch (Pengujian), sehingga output Anda mungkin berbeda):
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
Untuk memberi tahu proses ini agar tidak otomatis Pulsa Audio, edit ~ / .config / pulsa / client.conf dan tambahkan baris
autospawn = no
PulseAudio dan perpustakaannya menghormati pengaturan itu, secara umum.
Libpulse * menghubungkan dengan menjalankan proses juga dapat menunjukkan mengapa PulseAudio respawn dengan begitu cepat. Halaman FreeDesktop.org, " Running PulseAudio ", tampaknya mengkonfirmasi ini:
"... biasanya beberapa aplikasi latar belakang akan segera terhubung kembali, menyebabkan server segera restart."
Anda tampaknya mengindikasikan bahwa Anda memulai manajer jendela i3 melalui konsol (dengan menjalankan xinit) dan tidak menggunakan manajer tampilan atau lingkungan desktop. Sisa dari jawaban ini merinci info untuk mereka yang menggunakan GNOME, KDE, dan sebagainya.
INFO TAMBAHAN, UNTUK AUTOMEART GNOME / KDE
Package PulseAudio (5.0-13), di Debian Jessie (Stable) amd64, instal empat file sistem berikut :
- /etc/xdg/autostart/pulseaudio-kde.desktop
- /etc/xdg/autostart/pulseaudio.desktop
- / usr / bin / start-pulseaudio-x11
- / usr / bin / start-pulseaudio-kde
Beberapa manajer sesi grafis secara otomatis menjalankan skrip autostart FreeDesktop.org pada login pengguna. Script autostart PulseAudio, pada gilirannya, memberi tahu manajer sesi grafis untuk menjalankan skrip startup PulseAudio yang sesuai:
/usr/bin/start-pulseaudio-x11
/usr/bin/start-pulseaudio-kde
Skrip-skrip ini memanggil klien PulseAudio / usr / bin / pactl untuk memuat modul PulseAudio, yang memunculkan server PulseAudio sebagai produk sampingan (catatan: jika Anda memiliki autospawn yang diatur ke "tidak", pactl menghargai itu dan tidak akan melakukan sendiri server PulseAudio).
Lebih detail, di halaman FreeDesktop.org " Running PulseAudio ".
Beberapa manajer tampilan, sebagai tambahan dan distribusi lainnya, dapat memulai PulseAudio (misalnya, SDDM, di ArchLinux . Meskipun pengelola mungkin telah menyelesaikan ini, sekarang).
systemctl list-units -a
tidak termasuk PulseAudio. xinit meluncurkan skrip dari/etc/X11/Xsession.d
dan seperti yang disebutkan, itu tidak termasuk PulseAudio juga.