ERROR: Allocate: can't check in named futex name = jack_sem.system err = Permission denied

ERROR: Allocate: can't check in named futex name = jack_sem.system err = Permission denied

jack 音频服务器最近在我的计算机上停止工作。我现在已经在线搜索了大约 2 个小时,但找不到针对我遇到的错误的任何解决方案。这是错误日志:

Fri Dec  9 19:33:09 2016: ------------------
Fri Dec  9 19:33:09 2016: Controller activated. Version 1.9.11 (unknown) built on Fri Dec  9 06:06:45 2016
Fri Dec  9 19:33:09 2016: Loading settings from "/home/sean/.config/jack/conf.xml" using expat_2.1.0 ...
Fri Dec  9 19:33:09 2016: setting parameter 'engine':'driver':'(null)' to value "alsa"
Fri Dec  9 19:33:09 2016: setting parameter 'engine':'realtime':'(null)' to value "true"
Fri Dec  9 19:33:09 2016: setting parameter 'engine':'verbose':'(null)' to value "false"
Fri Dec  9 19:33:09 2016: setting parameter 'engine':'client-timeout':'(null)' to value "500"
Fri Dec  9 19:33:09 2016: setting parameter 'drivers':'alsa':'device' to value "hw:USB"
Fri Dec  9 19:33:09 2016: setting parameter 'drivers':'alsa':'capture' to value "hw:USB"
Fri Dec  9 19:33:09 2016: setting parameter 'drivers':'alsa':'playback' to value "hw:USB"
Fri Dec  9 19:33:09 2016: setting parameter 'drivers':'alsa':'rate' to value "44100"
Fri Dec  9 19:33:09 2016: setting parameter 'drivers':'alsa':'period' to value "1024"
Fri Dec  9 19:33:09 2016: setting parameter 'drivers':'alsa':'nperiods' to value "2"
Fri Dec  9 19:33:09 2016: setting parameter 'drivers':'alsa':'hwmon' to value "false"
Fri Dec  9 19:33:09 2016: setting parameter 'drivers':'alsa':'hwmeter' to value "false"
Fri Dec  9 19:33:09 2016: setting parameter 'drivers':'alsa':'duplex' to value "true"
Fri Dec  9 19:33:09 2016: setting parameter 'drivers':'alsa':'softmode' to value "false"
Fri Dec  9 19:33:09 2016: setting parameter 'drivers':'alsa':'monitor' to value "false"
Fri Dec  9 19:33:09 2016: setting parameter 'drivers':'alsa':'dither' to value "n"
Fri Dec  9 19:33:09 2016: setting parameter 'drivers':'alsa':'inchannels' to value "2"
Fri Dec  9 19:33:09 2016: setting parameter 'drivers':'alsa':'outchannels' to value "2"
Fri Dec  9 19:33:09 2016: setting parameter 'drivers':'alsa':'shorts' to value "false"
Fri Dec  9 19:33:09 2016: Listening for D-Bus messages
Fri Dec  9 19:33:10 2016: Starting jack server...
Fri Dec  9 19:33:10 2016: JACK server starting in realtime mode with priority 10
Fri Dec  9 19:33:10 2016: self-connect-mode is "Don't restrict self connect requests"
Fri Dec  9 19:33:10 2016: ERROR: Allocate: can't check in named futex name = jack_sem.system err = Permission denied
Fri Dec  9 19:33:10 2016: ERROR: Cannot allocate synchro
Fri Dec  9 19:33:10 2016: ERROR: Cannot allocate internal client for driver
Fri Dec  9 19:33:10 2016: ERROR: Cannot initialize driver
Fri Dec  9 19:33:10 2016: ERROR: JackServer::Open failed with -1
Fri Dec  9 19:33:10 2016: ERROR: Failed to open server

如果有帮助,这是我的 uname -a 输出:

Linux Sean-Lappy 4.4.0-53-generic #74-Ubuntu SMP Fri Dec 2 15:59:10 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux

我能想到的唯一冲突是我最近安装了 LMMS 并使用 sudo apt-get autoremove

删除了一堆旧内核

如有任何帮助,我们将不胜感激。


更新(2016 年 12 月 14 日):

我还没有找到解决这个问题的办法。我在 jack 的源代码中挖掘并在 JackLinuxFutex.cpp

的第 114 或 124 行查明了错误

这是完整、详细的插孔输出:http://pastebin.com/1FbNwCJU

我也从源代码安装了 jack,但无济于事。

考虑到我目前无法在笔记本电脑上使用任何音频设备,如果有人知道修复方法,那就太好了。

我终于解决了这个问题。这是我使用的步骤:

  1. 卸载所有与声音相关的东西

    sudo apt-get purge jackd qjackctl cadence pulseaudio pulseaudio-module-jack alsa

  2. 重启

  3. 重新安装除 jack 之外的所有内容

    sudo apt-get install alsa alsa-firmware-loaders alsa-tools alsa-tools-gui alsa-firmware alsa-utils pulseaudio pulseaudio-module-jack cadence

  4. 重启

  5. 下载并解压jack源代码

    sudo apt-get install unzip

    wget https://github.com/jackaudio/jack2/archive/master.zip

    unzip master.zip

  6. 安装依赖项

    sudo apt-get install libasound2-dev

  7. 使用 --alsa 标志从源代码编译 jack

    cd jack2-master

    ./waf configure --alsa

    ./waf build

    sudo ./waf install

我不知道这是否是最好的方法,或者它是否适用于其他人的机器,但我可以告诉你,jack 现在 运行 成功了,我又开始听音乐了。