防止文件删除
Prevent file deletion
我正在寻找一种防止文件在 MacOSX 中被删除的简单方法。我知道总有办法删除它,比如用另一个操作系统加载 HD,但我正在寻找一些简单的方法让没有技术知识的人有点困难。
我尝试将包含文件夹的权限更改为只读,并将所有者更改为 "nobody",但用户可以使用管理员密码使用 finder 轻松删除它。
我也尝试过使用 fileHandleForUpdatingAtPath 打开文件,我认为无法删除正在使用的文件,但 finder 可以毫无问题地删除它。
有没有办法防止文件在 MacOSX 中被删除?
可以锁定文件,这样即使root也不能删除它们。
使用 chflags 命令,可以使用各种选项:
arch "archived flag"
opaque "opaque flag"
nodump "nodump flag"
sappnd "system append-only flag"
schg "system immutable flag"
uappnd "user append-only flag"
uchg "user immutable flag"
假设我们有一个名为 testFile
的文件,请执行以下操作
chflags schg testfile
尝试删除文件,即使是根用户,也会被拒绝。现在,删除文件的唯一方法是启动到单用户模式。
我正在寻找一种防止文件在 MacOSX 中被删除的简单方法。我知道总有办法删除它,比如用另一个操作系统加载 HD,但我正在寻找一些简单的方法让没有技术知识的人有点困难。
我尝试将包含文件夹的权限更改为只读,并将所有者更改为 "nobody",但用户可以使用管理员密码使用 finder 轻松删除它。
我也尝试过使用 fileHandleForUpdatingAtPath 打开文件,我认为无法删除正在使用的文件,但 finder 可以毫无问题地删除它。
有没有办法防止文件在 MacOSX 中被删除?
可以锁定文件,这样即使root也不能删除它们。
使用 chflags 命令,可以使用各种选项:
arch "archived flag"
opaque "opaque flag"
nodump "nodump flag"
sappnd "system append-only flag"
schg "system immutable flag"
uappnd "user append-only flag"
uchg "user immutable flag"
假设我们有一个名为 testFile
的文件,请执行以下操作
chflags schg testfile
尝试删除文件,即使是根用户,也会被拒绝。现在,删除文件的唯一方法是启动到单用户模式。