使用用户权限在OS X中执行扇区级磁盘I / O.

时间:2016-01-22 01:55:42

标签: macos

我正在编写一个应用程序,它本质上是外部存储设备的扇区级磁盘擦除器。看起来这样做的唯一方法是使用文件系统中的/ dev / rdisk *设备。问题是只有root才能写入/ dev / rdisk *,因此必须使用提升的权限启动应用程序,否则它将无效。

问题是磁盘工具能够在该级别工作(因为它可以创建文件系统)而不会有任何权限提升。我想知道这是如何实现的,因为我还没有在Apple的网站上看到任何关于它的内容。他们是否使用从磁盘工具到内核级别的某种受信任系统调用来启用此类功能?

1 个答案:

答案 0 :(得分:1)

您需要拥有root权限才能访问磁盘扇区。磁盘工具基本上依赖于以{root}身份运行的storagekitd帮助守护程序来执行低级别的操作。