I'm fairly new on Linux, I've been playing with WSL on Windows 10 using Ubuntu, and I've managed to learn how to open GUI programs and I could take it one step further by using this tutorial which allowed me to run GUI apps even with sound, it was awesome until I ended my session and stopped the pulseaudio server, then next time I tried to run it I was met with these two error messages:

E: [(null)] pulsecore/pid.c: Daemon already running.
E: [(null)] daemon/main.c: pa_pid_file_create() failed.

I've looked everywhere without being able to find out a solution, I tried running the commands pulseaudio.exe -k --kill to kill daemon but for what I could research, these commands won't work on Windows 10. And using taskkill to end pulseaudio.exe won't end daemon properly, anyone got any idea? I'd love some help! thank you!


Short answer: delete the file


(replace USERDOMAIN with USERDOMAIN_ROAMINGPROFILE if you are using a roaming profile)

Explanation: I recently ran into this and using Sysinternals PROCMON I was able to track down the cause: Troubleshooting pulseaudio.exe launch failure using Sysinternals Procmon

Usually GNU applications designed to run as a service adhere to a practice to setup a runtime PID file in order to avoid duplicate launch. On crash, the start/stop script of the service handles removing the stale PID file in most cases.

On this case however there is no script handling the start and stop of pulseaudio.exe so on crash the PID file remains then at next startup the app refuses to start, seeing the PID file and wrongly concludes 'oops we are already running'

(WSL IS NOT LINUX, by the way; pulseaudio.exe is a GNU application compiled to run in windows independent of WSL)

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.