1

我有一个名为 test 的文件,没有 rwx 权限(我已使用 chmod 删除了所有权限)

[root@dev]# ls -l test ----------。1 根 21 Sep 7 22:22 测试

Q1)我正在尝试运行以下代码来检查文件是否可以打开。返回给 fd 的值为正。fd 不应该是-1。?

    fd = open(fname, O_RDONLY);
    if (fd == -1) {
        /* Print error message */
        return (-1);
    }
    close(fd);

Q2)我什至可以对文件进行分类。我 cat 文件时不应该有错误。[root@dev]# cat test 这是一个测试文件。[root@dev]#

注意:我使用的是 root 帐户。

4

1 回答 1

4

简短的回答:root 可以做任何事情。

更长的答案:通常,要以给定模式打开文件,POSIX 要求基于您的 uid 和 gid 的权限允许您请求的访问类型,或者您具有“适当的权限”,这是一个由实现定义的短语. 在大多数现实世界的实现中,满足“适当特权”的一种条件是 root 用户(uid 0)。

于 2012-09-07T04:58:08.087 回答