即使使用sudo,打开/ dev / rdisk0也会出现“不允许操作”错误

时间:2019-10-10 18:23:06

标签: macos terminal disk

在Mac OSX Mojave 10.14.6上,以下简单代码不再起作用:

#include <stdio.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <errno.h>
#include <string.h>

int main(int argc, char** argv)
{
        int fd = open ("/dev/rdisk0", O_RDONLY);
        if (fd == -1)
        {
                fprintf(stdout, "open(%s) error = %s\n", "/dev/rdisk0", strerror(errno));
                fflush(stdout);
                return 1;
        }

        return 0;
}

它给出了:

open(/dev/rdisk0) error = Operation not permitted

即使使用sudo运行可执行文件,也会发生这种情况。

此代码曾经在10.13和更低版本下工作。

我认为这可能是由于SIP所致,我给了终端机和可执行文件Full Disk Access,但没有帮助。

还有另一种解决此问题的方法吗?我现在如何打开/dev/rdisk0

预先感谢

0 个答案:

没有答案