在C mmap中,写入文件:Permission denied。 Linux的

时间:2015-10-24 05:08:18

标签: c linux file mmap

这是我的代码:

    int fd=open("/home/victor/hello",O_WRONLY|0777);

我也试过这个

{{1}}

但是同样的错误:

错误地映射文件:权限被拒绝

执行ls -l | grep hola     -rwxrwxrwx 1 victor victor 24 oct 24 01:47你好

出了什么问题?

1 个答案:

答案 0 :(得分:3)

来自glibc手册,正如上面 R .. Iwillnotexist Idonotexist 所指出的那样:

  

请注意,大多数硬件设计都不支持写入权限   没有读取权限,许多人不区分读取和执行   允许。因此,您可能会获得比您要求的更广泛的权限,   即使您不使用,也可能会拒绝写入文件的映射   PROT_READ。

http://www.gnu.org/software/libc/manual/html_node/Memory_002dmapped-I_002fO.html