Dường như bất kỳ quá trình nào liên kết đến họ libpulse * của các đối tượng được chia sẻ - trước hoặc sau khi chạy X và trình quản lý cửa sổ i3 - đều có thể tự động lưu trữ máy chủ PulseAudio, theo quy trình người dùng của bạn, như một sản phẩm phụ của các nỗ lực để giao tiếp với hệ thống con âm thanh . Người tạo ra PulseAudio Lennart Poettering dường như đã xác nhận điều này, trong một email 2015-05-29 đến danh sách gửi thư systemd-devel :
"Pulseaudio nói chung không phải là dịch vụ hệ thống mà là dịch vụ người dùng. Trừ khi phiên người dùng của bạn được chuyển đổi hoàn toàn để được quản lý bởi systemd (điều không thể xảy ra) vì vậy systemd hoàn toàn không liên quan đến việc khởi động nó.
"PA thường được bắt đầu từ tập lệnh hoặc dịch vụ thiết lập phiên. Chẳng hạn, trong Gnome đó là phiên gnome. Nó cũng tự động sinh ra theo yêu cầu nếu các thư viện được sử dụng và lưu ý rằng nó bị thiếu."
Ví dụ: trên Debian Stretch (Kiểm tra), trình duyệt web IceWeasel liên kết với hai đối tượng libpulse * được chia sẻ: 1) libpulsecommon-7.1.so; và 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
Bạn có thể thấy các quá trình đang chạy liên kết đến libpulse *. Ví dụ: trước tiên hãy lấy danh sách các đối tượng được chia sẻ libpulse *, sau đó chạy lsof trên mỗi (lưu ý: điều này đến từ Debian Stretch (Kiểm tra), do đó đầu ra của bạn có thể khác nhau):
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
Để yêu cầu các quá trình này không tự động khởi động PulseAudio, hãy chỉnh sửa ~ / .config / Pulse / client.conf và thêm dòng
autospawn = no
Nhìn chung, PulseAudio và các thư viện của nó tôn trọng cài đặt đó.
Liên kết libpulse * bằng cách chạy các quy trình cũng có thể chỉ ra lý do tại sao PulseAudio lại xuất hiện nhanh như vậy. Trang FreeDesktop.org, " Running PulseAudio ", dường như đã xác nhận điều này:
"... thông thường một số ứng dụng nền sẽ ngay lập tức kết nối lại, khiến máy chủ được khởi động lại ngay lập tức."
Dường như bạn cho biết bạn khởi động trình quản lý cửa sổ i3 thông qua bảng điều khiển (bằng cách chạy xinit) và không sử dụng trình quản lý hiển thị hoặc môi trường máy tính để bàn. Phần còn lại của câu trả lời này chi tiết thông tin cho những người sử dụng Gnome, KDE, v.v.
THÔNG TIN BỔ SUNG, CHO TỰ ĐỘNG Gnome / KDE
Gói PulseAudio (5.0-13), trong Debian Jessie (Ổn định) amd64, cài đặt bốn tệp hệ thống sau:
- /etc/xdg/autostart/pulseaudio-kde.desktop
- /etc/xdg/autostart/pulseaudio.desktop
- / usr / bin / start-pulseaudio-x11
- / usr / bin / start-pulseaudio-kde
Một số trình quản lý phiên đồ họa tự động chạy các kịch bản tự khởi động FreeDesktop.org khi đăng nhập người dùng. Lần lượt, tập lệnh tự khởi động PulseAudio sẽ cho các nhà quản lý phiên đồ họa chạy tập lệnh khởi động PulseAudio thích hợp:
/usr/bin/start-pulseaudio-x11
/usr/bin/start-pulseaudio-kde
Những kịch bản gọi PulseAudio client / usr / bin / pactl để nạp module PulseAudio, mà bầy server PulseAudio như một sản phẩm phụ (lưu ý: nếu bạn có bộ autospawn để "không", khía cạnh pactl đó và sẽ không autospawn máy chủ PulseAudio).
Chi tiết hơn, tại trang FreeDesktop.org " Chạy PulseAudio ".
Một số trình quản lý hiển thị, ngoài ra và trong các bản phân phối khác, có thể khởi động PulseAudio (ví dụ: SDDM, trên ArchLinux . Mặc dù hiện tại các nhà bảo trì có thể đã giải quyết vấn đề này).
systemctl list-units -a
không bao gồm PulseAudio. xinit khởi chạy các tập lệnh từ/etc/X11/Xsession.d
và như đã đề cập, nó cũng không bao gồm PulseAudio.