BSOD后无法访问NTFS文件。 腐败检测不到chkdsk?

在Windows服务器上有几个文件出现在目录列表中,但无法访问。 我可以获取文件的所有权,并且ACL显示每个人都具有读取/写入/执行访问权限; 但我无法打开文件。 chkdsk在卷上找不到任何问题。

该服务器是64位Win 2008 R2 Standard SP1。

我们最近在这个服务器上有一个蓝屏死机,而且这些文件在崩溃前不久就被修改了。 崩溃不是与文件系统有关的任何事情,但我认为它损坏了内核内存中的东西,并损坏了文件系统。

下面是一些当我试图访问文件“com2.log”时看到的:

D:\Logs\Application>dir com2* Volume in drive D is Data Volume Serial Number is 84D5-FD84 Directory of D:\Logs\Application 09/07/2011 06:57 PM 169,025 com2.log 1 File(s) 169,025 bytes 0 Dir(s) 39,320,612,864 bytes free D:\Logs\Application>dir com2.log Directory of \\. File Not Found D:\Logs\Application>dir com2.* Directory of \\. File Not Found D:\Logs\Application>cacls com2.log The filename, directory name, or volume label syntax is incorrect. D:\Logs\Application>more com2.log Cannot access file \\.\com2 D:\Logs\Application>more com2* Cannot access file D:\Logs\Application\com2.log 

(cacls不显示ACL,但我可以在Windows资源pipe理器中看到它。)

这似乎可能是扩展的问题。 dir com2*find它,但dir com2.*不。

该文件在Windows资源pipe理器中显示为com2.log,但是当我双击它时,在记事本中引用了.txt文件扩展名时出现此错误:

 Cannot find the \\.\com2.txt file. Do you want to create a new file? 

有没有人见过这样的事情? 任何疑难解答build议?

COM2是一个保留关键字,对于硬件端口COM2来说,我不确定这个文件是如何到达那里的,因为Windows不会让你创build一个名为COM2.log的文件。 现在试试,你会得到一个错误信息。 为了好玩,也尝试创buildLPT1.txt

根据命名文件,path和名称空间 ,以下是所有保留的名称,不应将其用作文件名。

  • 不要使用以下保留的设备名称作为文件的名称:

    CON,PRN,AUX,NUL,COM1,COM2,COM3,COM4,COM5,COM6,COM7,COM8,COM9,LPT1,LPT2,LPT3,LPT4,LPT5,LPT6,LPT7,LPT8和LPT9。 还要避免这些名字后跟一个扩展名; 例如,不build议使用NUL.txt。

你可以尝试重命名文件在资源pipe理器或使用ren com2.log somethingelse.log来看看你是否可以操纵文件然而,但我有一种感觉,不会出于同样的原因,你不应该能够创build该文件在第一个地方。

否则,如果按照如何在Windows中删除带保留名称的文件,则应该可以使用以下命令删除文件。 使用相同的“完全限定”的path,我想你也可以通过使用REN而不是DEL来重命名文件。

DEL \。\ C:\ SomeDirectory \ com2.log

您可以尝试移动文件: move com2* com2.log.new或类的东西。 文件名本身可能会搞砸了。