ฉันจะรีสตาร์ท pulseaudio โดยไม่ต้องออกจากระบบได้อย่างไร


138

บางครั้งบริการ pulseaudio หยุดทำงานและไม่รีสตาร์ทตัวเองเมื่อฉันเปิดไฟล์เสียงด้วยแบนชีหรือโทเท็ม

ฉันจะทำให้ pulseaudio เริ่มต้นใหม่โดยไม่ต้องออกจากระบบได้อย่างไร


1
ฉันกล้าที่จะแนะนำให้ยอมรับคำตอบของ TikTak ได้หรือไม่? มันใช้งานได้สำหรับฉันในขณะที่คำตอบของ upvotes ที่สุดมีขั้นตอนที่ไม่จำเป็นเพิ่มเติม
WinEunuuchs2Unix

คำตอบ:


155

ฉันแก้ไขปัญหาของฉัน

  1. ตรวจสอบว่าอินสแตนซ์ pulseaudio ใด ๆ กำลังทำงานอยู่:

    pulseaudio --check
    

    ปกติแล้วมันจะพิมพ์ออกไม่เพียงแค่ออกจากรหัส 0หมายถึงการทำงาน Mine ไม่ทำงานดังนั้นฉันเพิ่งไปถึงขั้นตอนที่ 3

  2. หากอินสแตนซ์ใด ๆ กำลังทำงาน:

    pulseaudio -k
    
  3. ในที่สุดเริ่ม pulseaudio อีกครั้งในฐานะ daemon:

    pulseaudio -D
    
  4. เริ่มแบนชีอีกครั้งแล้วสนุกไปกับมัน!


2
สำหรับฉัน - ตรวจสอบไม่ได้แสดงอะไรเลยแม้ว่า -k หยุดการเล่นเสียงหมายความว่า pulseaudio กำลังทำงานอยู่
Cerin

3
สำหรับฉัน pulseaudio จะถูกวางสาย (ลืมอ่างล้างจาน) ที่pulseaudio -kไม่ทำงาน หลังจากนั้นsudo killall pulseaudioทุกอย่างจะเริ่มขึ้นอีกครั้งและทำงานได้ดี (Ubuntu 16.04)
Raphael

2
fyi, ขั้นตอนที่ 1: " pulseaudio --check โดยปกติไม่มีการพิมพ์เอาต์พุต , เพียงแค่ออกจากรหัส 0 ซึ่งหมายถึงการทำงาน" => ดังนั้น, ไม่มีการส่งออก, มันกำลังทำงานอยู่; แต่ถ้าคุณต้องการตรวจสอบรหัสออกให้เรียกใช้: echo $?ซึ่งควรพิมพ์0หากทำงานอยู่ (คน$?เป็นรหัสทางออกของคำสั่งก่อนหน้านี้หากคุณใช้มันสองครั้งแล้วพิมพ์รหัสทางออกของ. echo)
ไมเคิล

40

ในการเรียกใช้การตั้งค่ามาตรฐานpulseaudio -kรีสตาร์ท daemon ไม่มีอะไรให้ทำอีกแล้ว

ในกรณีที่ PA ไม่ได้ทำงานพิมพ์pulseaudioโดยไม่มีตัวเลือกต่อไปจะเริ่มภูตโดยใช้ค่าเริ่มต้นในและ/etc/pulse/daemon.conf/etc/pulse/default.pa

การตั้งค่าที่ผู้ใช้กำหนดใน~/.pulse/หรือ~/.config/pulse/จะแทนที่การตั้งค่าทั่วทั้งระบบ ในกรณีที่มีปัญหามักจะช่วยในการลบไดเรกทอรีเหล่านี้ก่อนที่จะรีสตาร์ท pulseaudio

สำหรับรายละเอียดดูPulseAudio วิกิพีเดีย


/usr/bin/pulseaudioส่งคืนbash: /usr/bin/pulseaudio: Permission deniedแม้ว่าสิทธิ์ของไฟล์จะดูดี: -rwxr-xr-x+ 1 root root 87K Jun 21 08:09 /usr/bin/pulseaudioทำไม
Thorsten Niehues

เพราะภูตกำลังทำงานเป็นรูท
username.ak

rm ~/.config/pulse/*ตามด้วยpulseaudio -kการหลอกลวง
WinEunuuchs2Unix

11

ใช้คำสั่งบริการ (Ubuntu 14.04 หรือเก่ากว่าเท่านั้น):

sudo service pulseaudio restart

น่าเสียดายที่ฉันไม่มีความรู้เฉพาะเพิ่มเติมจากคำสั่งที่ชัดเจนมาก หากมีฉันจะอธิบายเพิ่มเติม หากคุณมีความคิดใด ๆ โปรดเป็นแขกของฉัน
PowerKiKi

30
Ubuntu 16.04:Failed to restart pulseaudio.service: Unit pulseaudio.service not found.
user1182474

1
pulseaudio ทำงานในโหมดผู้ใช้ (เช่นผู้ใช้ที่เข้าสู่ระบบในปัจจุบัน) ไม่มีการลงทะเบียน "บริการ" เพื่อให้คำสั่งนั้นใช้งานไม่ได้
อิซซี่

อันที่จริง pulseaudio ทำงานในโหมดผู้ใช้ ดูคำตอบของฉัน
Rolf

10

Pulseaudio เป็นบริการผู้ใช้ดังนั้น:

systemctl --user restart pulseaudio.service

นอกจากนี้ยังมีสิ่งนี้:

systemctl --user restart pulseaudio.socket

สำหรับการตรวจสอบแทนที่ด้วยrestartstatus


1
เพื่อให้ทำงานเหมือนผู้ใช้ปกติผู้ใช้ที่ทำงาน pulseaudio แน่นอน ควรเป็นคำตอบที่ดีที่สุด และฉันต้องบอกว่าสำหรับฉัน pulseaudio ทำงานได้ดี แต่หลังจากห้องสมุดบางแห่งที่มีการอัพเกรดจะต้องเริ่มต้นใหม่
Stéphane

9

นี่คือวิธีการทำใน Ubuntu 15.10:

  1. เรียกใช้ Terminal
  2. วิ่งpulseaudio -kเพื่อฆ่าภูตวิ่ง คุณจะได้รับข้อผิดพลาดเฉพาะในกรณีที่ไม่มี daemon ทำงานอยู่มิฉะนั้นจะไม่มีข้อความปรากฏขึ้น
  3. Ubuntu จะพยายามรีสตาร์ท daemon โดยอัตโนมัติโดยสมมติว่าไม่มีปัญหากับการกำหนดค่า คุณสามารถเรียกใช้pulseaudio --checkเพื่อตรวจสอบว่า Pulseaudio กำลังทำงานอยู่ clean exit (ไม่มีข้อความ) จากcheckคำสั่งบ่งชี้ว่า daemon เริ่มต้นได้สำเร็จ มิฉะนั้นให้เรียกใช้pulseaudio --startเพื่อเรียกใช้daemon หากคุณเพิ่งเปลี่ยนไฟล์กำหนดค่าของคุณและ daemon ล้มเหลวในการเริ่มให้ตรวจสอบไฟล์ของคุณเพื่อหาข้อผิดพลาดและตรวจสอบ syslog (ด้วยแอป SystemLog) สำหรับข้อความใด ๆ จาก Pulseaudio


1

หาก pulseaudio ที่ล้มเหลวในการทำงานเกี่ยวข้องกับ S3 sleep (Suspend to RAM) สาเหตุที่แท้จริงอาจเป็นปัญหาฮาร์ดแวร์เสียงและจากนั้นคุณต้องทำการรีเซ็ตแบบหนักหน่วง:

pulseaudio -k && sudo alsa force-reload && sleep 2 && pulseaudio -k && sudo alsa force-reload

ใช่มันต้องทำสองครั้งด้วยความล่าช้าเล็กน้อย ฉันไม่รู้ว่าทำไม แต่สิ่งนี้ดูเหมือนว่าจะทำงานทุกครั้ง

หากคุณมีสภาพแวดล้อมเดสก์ทอปหลายแบบขนาน

sudo killall pulseaudio && sudo alsa force-reload && sleep 2 && sudo killall pulseaudio && sudo alsa force-reload

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.