从编码人员的角度来看文件权限
Posted
技术标签:
【中文标题】从编码人员的角度来看文件权限【英文标题】:File permissions from a coders perspective 【发布时间】:2016-02-10 00:04:23 【问题描述】:文件权限是仅存储在 HDD(或其他存储介质)上并受到操作系统尊重的东西。或者硬盘驱动器是否以某种方式主动执行它们?
我知道,如果我尝试以任何方式访问/修改文件,其中涉及通过操作系统提供的功能,包括使用实际上通过操作系统/驱动程序的任何编程语言的任何类/方法,那么文件权限将强制执行。
如果我编写的代码直接与 HDD 接口会发生什么?也许如果我要研究特定 HDD 固件使用的 API,并编写代码直接向 HDD 发送信号,这将导致其固件执行某些操作。如果我这样做,文件权限会有什么影响吗?
如果我的代码需要一个尊重文件权限的操作系统,会有什么不同吗?
【问题讨论】:
【参考方案1】:文件访问权限的存储和处理方式因文件系统和操作系统而异。例如,类 Unix 操作系统有一个 3 位八进制数,用于定义谁可以读取、写入和执行哪些文件。另一方面,Windows 以不同的方式存储此信息,并且不像 Un*x 那样具有“执行”标志。
如果您要直接写入 HDD 而不通过操作系统的文件系统驱动程序,您将不得不编写自己的文件系统版本 - 每一个都以不同的方式存储它的分配表、日志等。
进一步阅读: https://unix.stackexchange.com/questions/201831/how-do-file-permissions-work-with-partition-filesystem
【讨论】:
文件系统同时兼容windows和linux(即fat32)会发生什么以上是关于从编码人员的角度来看文件权限的主要内容,如果未能解决你的问题,请参考以下文章