0
我的java应用程序使用三个相同的音频设备。 我发现本教程,如何创建设备和PCI总线之间的关系(通过udev规则):http://alsa.opensrc.org/Udev#Writing_udev_rules 它的工作,但我想创建卡ID的编程从我的应用程序不使用UDEV规则。对于此操作足以在目录/sys/devices/..../card[0-9]/
中创建标识文件。 但我不能。我无法更改/sys/
中的文件。另外,我无法更改/proc
中的文件。即使我获得root权限。ALSA。如何以编程方式更改设备ID?
任何人都可以帮助我吗?例如,我如何在/sys/devices/pci0000:00/0000:00:1c.1/0000:04:00.0/0000:05:04.0/sound/card4/
目录中创建文件?或在/proc/asound/card4/
?
$ sudo nano /sys/devices/pci0000:00/0000:00:1c.1/0000:04:00.0/0000:05:04.0/sound/card4/id
$ Saving error: /sys/devices/pci0000:00/0000:00:1c.1/0000:04:00.0/0000:05:04.0/sound/card4/id: File exists
$ sudo rm /sys/devices/pci0000:00/0000:00:1c.1/0000:04:00.0/0000:05:04.0/sound/card4/id
$ rm: can't delete '/sys/devices/pci0000:00/0000:00:1c.1/0000:04:00.0/0000:05:04.0/sound/card0/id': Operation is not permitted
是的。如果我尝试从终端创建文件 - 我得到“文件存在”错误。 如果我尝试删除它 - 我收到“操作不允许”错误。 我用sudo执行两个命令。但根不允许。这是问题。 – Virkom
'$ sudo echo XYZ> /sys/devices/pci0000:00/0000:00:1c.1/0000:04:00.0/0000:05:04.0/sound/card4/id bash:/ sys/devices/pci0000 :00/0000:00:1c.1/0000:04:00.0/0000:05:04.0/sound/card4/id:拒绝访问 – Virkom
这不是使用'sudo'的正确方法。 –