我的桌面上有一个非常重要的文件夹。我偶尔清理桌面,我非常担心自己可能会无意中删除提到的文件夹。有没有一种方法可以防止这种灾难,而又不限制我对文件夹内容的频繁读写操作?请注意,我不介意偶尔一次删除文件夹中的内容,但文件夹本身对我很重要。如果将其删除,我会付出很多努力。
我的桌面上有一个非常重要的文件夹。我偶尔清理桌面,我非常担心自己可能会无意中删除提到的文件夹。有没有一种方法可以防止这种灾难,而又不限制我对文件夹内容的频繁读写操作?请注意,我不介意偶尔一次删除文件夹中的内容,但文件夹本身对我很重要。如果将其删除,我会付出很多努力。
Answers:
不要试图避免不可避免的情况。使用备份和版本控制。
但是,您可以拒绝自己的“删除”权限。删除该目录中的文件和文件夹是一个单独的权限,您也可以在需要时将其禁用。
有一个更好的解决方案:将文件夹移到更合适的位置(例如,%USERPROFILE%\ Documents)
如果必须从桌面访问该文件夹,则始终可以创建快捷方式。这样可以确保即使您不小心删除了快捷方式,也不会真正删除该文件夹或其宝贵内容。
如果其他应用程序依赖于此文件夹位于桌面上,则可以使用“ mklink”命令创建符号链接。由于符号链接是在文件系统级别处理的(而快捷方式是仅指向其他位置的实际文件),因此,尝试在路径中使用这种“快捷方式”的程序应该没有任何兼容性问题。
是的,可能受您拥有的Windows版本的限制(家庭版可能无法调整所有权)。另外,请注意,删除删除权限并不能保证您无法删除文件夹。我被烧了好多次了。
这是一种通常很简单的方法:
我已经在Windows NT到Windows 7上使用了这个技巧。有时,您必须在设置完善之前仔细研究一下这些设置。
首先测试新文件夹(包括在测试文件夹中创建文件和文件夹!
另外:请注意“使用备份和版本控制”的建议。如果文件那么重要,则至少需要2个副本。
Windows文件系统具有“只读”标志。这比必须为这种简单的效果设置DACL权限要简单。
在命令提示符下,使用ATTR命令。在GUI外壳程序中,它应该位于“属性”中,尽管gui可能会做一些复杂的事情,并且超出了您真正想要的范围。
同样,如果您使用相同的名称重新创建目录,则可以在其上应用“还原以前的版本”。
我在Win7系统上进行了实验。该GUI删除(不回收站)忽略了R
对目录标志。也没有其他警告提示,就像我见过的for H
和/或S
flags一样。rd
从命令行发出使访问被拒绝,正如预期的那样。但是,rd
无论如何,您不能只是一个非空目录:delete file和remove directory是不同的命令。递归地删除包含目录的命令的命令将删除目录,而不会删除现在为空的目录。
因此,保护目录本身在您想到的GUI操作中不起作用。这意味着任何更高级的防止目录本身被删除的方法都不会阻止它被首先清空!您说您仍然希望通过目录内的常规访问权限来创建和删除文件,因此完全锁定它不是您的解决方案。
最好的解决方案似乎是符号链接。制作一个符号链接(新的风格,什么样的Windows Vista及以上的现在叫符号链接)台式机,当目录确实存在别的地方,就到该目录的工作在这个意义上,如果我删除的桌面图标(Shift-Delete键,无回收站),实际目录不受影响,因为仅删除了链接。
桌面图标的Shift-Delete不在乎是否已使用R
属性标记。
使用标准Windows文件打开对话框的程序可以毫无问题地浏览符号链接。它实际上解析了链接目录的名称,因此打开的文件是真实名称;例如,当我浏览它时Desktop\MyFolder
变成D:\scratch\MyFolder
了。
程序使用旧式链接(Junction),看到名称仍在路径中;例如,C:\Users\john\Desktop\MyFolder\test.txt
因此它是一个链接的事实是不可见的。但是,GUI删除操作仍将其视为链接,而不是在其后面进行。
无论哪种方式,如果程序确实直接使用别名,它将起作用。但是,有时使用一个名称查看文件,有时使用另一个名称查看文件,可能会使事情变得混乱。
在桌面上使用Junction的情况下,该文件夹确实位于其他位置,这将是完全透明的。(可选)使用DACL防止意外删除桌面上的连接点文件。至少,有一个脚本可以在需要时重新创建。
我没有尝试过,但是我想知道您是否可以在“新项目”中添加一些东西来重新创建结点或符号链接?然后,右键单击现在为空的桌面,选择“新建...”,然后从菜单中选择“桌面垃圾”。让它还原您在台式机上真正想要的一切。
mklink mylink %userprofile%\Documents\Temp
在其上运行。它起作用了,我似乎在处理目录的程序上没有问题。
您可能考虑做的另一件事是启用Windows 8.1的文件历史记录功能。这将使您的系统自动保留文件和文件夹更改的历史记录。最好与外部存储位置一起使用,但也可以与本地驱动器一起使用。
http://blogs.msdn.com/b/b8/archive/2012/07/10/protecting-user-files-with-file-history.aspx
一个有效的解决方案是将文件夹移出桌面,然后使用命令设置NTFS联结MKLINK
。
C:\ Users \ Administrator> MKLINK 创建一个符号链接。 MKLINK [[/ D] | [/ H] | [/ J]]连结目标 / D创建目录符号链接。默认为文件 符号链接。 / H创建一个硬链接,而不是符号链接。 / J创建目录连接。 链接指定新的符号链接名称。 目标指定新链接的路径(相对或绝对) 指。
因此,在您的情况下,命令将是:
MKLINK /J %userprofile%\Desktop\ImportantFolder D:\ImportantFolder
D:\ImportantFolder
实际文件夹在哪里,在哪里是%userprofile%\Desktop\ImportantFolder
交界处。
笔记:
D:\ImportantFolder
与执行操作相同。因此,如果您删除passwords.txt
联结中的文件,则也将其删除d:/ImportantFolder
。您可以改为安装Link Shell Extension,然后将文件夹移动到其他位置,右键单击并选择,Pick link source...
然后右键单击桌面,然后选择drop as...
-> Junction
。您完成了。
这是我在全新系统上安装的第一个应用程序,因为它是一个非常有用的解决方案。如果您必须在PC上管理路口或硬/符号链接,我强烈建议您这样做。
您可以将所有文件和文件夹备份在onedrive中。您可以免费使用它,但限制为15gb。但是,如果您有Office 365订阅,则您在onedrive中有1TB存储空间,并且该存储空间已包括在内。