我的硬盘上有一个分区,里面有重要数据。
我想阻止程序对其进行写入。
例如,如果我可以授予某些程序(如白名单)的访问权限,那就太好了?(不是必需的)
这个想法看起来很简单,但是我在网上搜索了一下并没有找到一个想法。
抱歉,但我还只是超级用户新手。
答案1
选项 1:只读.. 句号
您需要按照您的建议将这些分区中的任何一个挂载为只读。
正如您所知,默认值为 READ/WRITE。
此链接会告诉你如何去做,但我也会在这里给你讲解要点。
为了演示,我们假设 Windows 将此分区挂载为 D:\。
首先,您需要卸载现有的驱动器
如果您愿意,您可以关注这里的 Volume-GUID,这样您以后就会知道它是什么......您也可以猜到它。
mountvol
ENTER将在底部显示一个列表,其中包含您的 D:\。您可以从控制台剪切粘贴信息,以便以后简化它。
就像是:
\\?\Volume{ac0a84a0-3b42-11ee-97a7-bc091bdc34f2}\ D:\
然后,我们卸载 D:分区
mountvol D: /p
(此命令的旧版本不起作用,请使用 diskman)。
并使用diskpart
将其重新安装为只读。
diskpart
list volume
select volume X
(其中 X 是指向 D: 的数字)
att vol set readonly
检查你的工作,detail vol
在需要时重新分配,使用 mountvol 打印的卷 ID:
mountvol D: \\?\Volume{ac0a84a0-3b42-11ee-97a7-bc091bdc34f2}\
您还可以使用相同的工具将卷挂载到空文件夹(Unix 样式):
mkdir C:\fs\backup-disk
mountvol C:\fs\backup-disk \\?\Volume{ac0a84a0-3b42-11ee-97a7-bc091bdc34f2}
选项 2:“白名单”......
除了阻止程序写入之外,您还可以
- 当然要备份...你说这很重要!
- 阻止特定用户对其进行写入(即使是“管理员”以外的所有人)。
程序以用户身份运行,在这种情况下,大多数程序以您的用户身份运行。
使用标准 NTFS 安全设置,您可以让您的用户对整个分区具有只读访问权限,从而覆盖您作为自己机器的管理员可能获得的任何权限。
最简单的(也是我认为最好的)方法是让你自己的用户成为非管理员,并只提升你信任的东西。
解决这一难题的方法有很多种,但以上两种是最常见的。