gpt4 book ai didi

linux - 字符设备权限问题

转载 作者:塔克拉玛干 更新时间:2023-11-03 02:01:32 25 4
gpt4 key购买 nike

我希望能够直接写入字符设备。这是我的做法:

cd /dev
mknod moo c 0 0
echo hello >> moo

我明白了

bash: moo: Permission denied

我试过使用 chmod 来给所有者用户写访问权限,如下所示:

chmod 777 moo

然后,当我尝试写入时,我被告知该设备或地址不存在。 ls 否则会通知我。

另外值得注意的是,据我所知,将 0 0 作为主要次要数字对会导致 Linux 只为设备提供一些方便的东西。

我一定在这里遗漏了一些基本的东西,我认为设备节点可以被视为普通文件。谁能告诉我我做错了什么?理想情况下,我想制作一个所有者可以写入并且任何人都可以读取的字符设备节点(我知道 777 在这里是错误的权限,我会在最终版本中修复它)。

我也(最初)尝试通过 Python 与它交谈,这给了我同样的问题。

编辑:

0 0 是错误的做法。我曾经读过一件事告诉我它会起作用,它在撒谎。我需要做的是制作一个字符设备模块和一个匹配的节点,然后使用它

最佳答案

所有设备都有在驱动程序中定义的特定主要和次要编号。您不能将其设置为您想要的任何值,并且 0 0 看起来非常无效。您必须想出有效的方法,然后也许您会成功。

主要和次要编号将节点条目与特定驱动程序联系起来。不,/dev/* 文件与其他文件不同。它们很特殊,因为内核将输入/输出/控制操作重定向到特定的驱动程序例程。

关于linux - 字符设备权限问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7471810/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com