我遇到了一个非常奇怪的问题。我使用的是安装了 SP1 的 Windows 7 Professional。我有一个 My Book 500GB 外置硬盘,通过 Linksys E3000 连接到网络。现在我在 Windows 7 中以管理员身份登录。网络磁盘在 Linksys 中配置,管理员组可以读写。现在我已将这些设置添加到凭据管理器,我已在其中指定了磁盘的网络地址、用户名和密码。我已添加它,因为否则 Windows 7 会在系统重新启动时忘记用户名和密码。
现在网络磁盘工作正常。我可以访问文件,在其中写入文件,从中删除文件。问题出现了,如果我想删除包含其他文件或文件夹的文件夹。现在这里由于某种原因显示此错误:
我尝试再试一次,它显示错误 0x8007045D (I/O 错误):
这个错误应该是当 USB 端口或 USB 驱动程序出现问题时发生的,但这个驱动器不是通过 USB 访问的,它是一个基于网络的磁盘。另外,我使用通过 USB 连接的设备时没有遇到任何问题,但这个问题并不重要。
然后我点击了取消。现在真正奇怪的是,文件夹消失了丢失的!如果我重新连接网络磁盘或重新启动计算机,我将能够再次看到它。现在我真的不明白权限问题,因为我已经是管理员了。我在网络磁盘属性 -> 安全下查找,这是我找到的:
如您所见,似乎帐户“未知帐户”控制着可以访问的内容。它只允许特殊权限。因此,我尝试将其更改为允许一切(这可能不会产生任何影响,因为似乎该特殊权限涵盖几乎所有内容,正如我所说,除了删除包含其他文件或其他文件夹的文件夹外,我可以做任何事情)。当我想应用我选择的完全控制时,它给出了此错误:
似乎我无法更改此权限。所以我想知道这个权限到底是谁授予的,我在“高级”->“所有者”下找到了以下内容:
我猜 Linksys E3000 操作了这个权限。但正如我在第一段中所说,我在 Linksys E3000 设置 (192.168.1.1) 下将磁盘设置为 adming 组,这意味着它具有完全的读写访问权限。
现在最奇怪的是:我还有另一台电脑,Windows XP SP3安装在它上面。我也将网络磁盘添加到计算机中。不同之处在于,我也能够删除包含文件或其他文件夹的文件夹。它会毫无错误地删除它们。
另外,如果我将磁盘连接到装有 Windows 7 的计算机(我无法删除其中包含其他文件夹或文件的文件夹),那么我可以毫无问题地删除这些文件夹。我想指出的是,我也在第二台计算机(笔记本电脑)上尝试过这个,它也安装了 Windows 7 SP1,它显示了相同的错误,这意味着 Windows 7 一定有问题,否则 Windows XP 会出现同样的错误。
我真的不明白为什么我可以从 Windows XP 中删除它,却不能从 Windows 7 中删除它。安装了 Windows XP 的计算机通过 UTP 电缆通过 Linksys E3000 LAN 连接,就像运行 Windows 7 的计算机一样。请帮助我解答我的问题,非常感谢您的回答!
编辑:添加本地组策略编辑器的屏幕截图:
答案1
转到命令提示符并输入rd /s/q 目录。
答案2
XP 没有这些问题,而 Win7/Vista 却有,这一事实足以说明问题。Vista/7 中最大的网络变化之一是引入了 SMB v2.0。除此之外,他们还大大增强了 NTLM 的 Windows 身份验证过程。
很可能,MyBook 中运行的 Samba 服务器未与 NTLMv2 和/或 SMBv2 兼容。一般来说,Vista/7 会拒绝 XP 可以接受的旧身份验证方法。
您应该尝试一些设置。转到您的 Win7 gpedit.msc:
- 最大的一个是检查 LAN Manager 身份验证方法。Vista/7 仅使用 NTLMv2。XP 也可以使用 NTLMv2,但会回退到 NTLM。将设置切换为发送 LM 和 NTLM. (XP 中的默认设置实际上仅发送 NTML)
- 网络安全:NTML SSP 会话安全:这不太可能是解决方案,但 7 现在需要 128 位加密
- 网络访问:允许匿名 SID - 已启用 - 域成员:数字加密.....(始终)此功能在 XP 下已禁用。XP 使用“当可能时”选项。
我希望这些能有所帮助
尝试这两种设置,我们可以从那里开始
**编辑 **
我可能应该澄清一下我要做什么。基本上,我们在 Windows 7 机器上逐一重现 XP 的网络安全设置,直到发现问题所在。
一直到我们只是以匿名身份进行身份验证并使用访客帐户登录:) MyBook 内部的软件可能与 Win7 的网络安全不兼容。
答案3
我怀疑您的网络驱动器上的文件被设置为“只读” - 解决方法很简单。右键单击文件或文件夹,单击“属性”,然后单击“常规”,在“属性”中取消单击“只读”,然后您应该能够删除文件(至少是大多数文件)。我在 Linksys3000、网络硬盘和 W7 上遇到了同样的问题。
答案4
如果您使用的是 EN Windows,请将其添加到您的注册表中,然后右键单击并选择获取所有权。之后,您可以删除该文件。将以下代码保存为 *.reg
获取所有权:
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\*\shell\runas]
@="Take Ownership"
"NoWorkingDirectory"=""
[HKEY_CLASSES_ROOT\*\shell\runas\command]
@="cmd.exe /c takeown /f \"%1\" && icacls \"%1\" /grant administrators:F"
"IsolatedCommand"="cmd.exe /c takeown /f \"%1\" && icacls \"%1\" /grant administrators:F"
[HKEY_CLASSES_ROOT\Directory\shell\runas]
@="Take Ownership"
"NoWorkingDirectory"=""
[HKEY_CLASSES_ROOT\Directory\shell\runas\command]
@="cmd.exe /c takeown /f \"%1\" /r /d y && icacls \"%1\" /grant administrators:F /t"
"IsolatedCommand"="cmd.exe /c takeown /f \"%1\" /r /d y && icacls \"%1\" /grant administrators:F /t"
要从注册表中删除它:
Windows Registry Editor Version 5.00
[-HKEY_CLASSES_ROOT\*\shell\runas]
[-HKEY_CLASSES_ROOT\Directory\shell\runas]
您也可以运行 cmd。
首先运行这个:
takeown /f c:\badfile.xxx /r /d y
运行之后:
icacls c:\badfile.xxx /grant administrators:F /t