The saying goes that nothing monitors AD better than Exchange. While the symptom is an Exchange issue, the underlying root cause is typically something else. Though as an added “feature” Exchange can also monitor additional elements of your infrastructure and indicate they are also unhealthy…
This is one of those such cases, where an Exchange CU was not installing. In the screenshot below, you will see that error 3221685616 is logged, and setup aborts.
Note that there is a hint here as to what is wrong, the message that “The file or directory is corrupted and unreadable“.
You may also find EventID 55 in the system event log stating there are NTFS issues for example.
Scanning and Repairing Corruption
In this case, we were able to run a check against the disk and repair the corruption. The NTFS corruption was only on the OS drive, the Exchange database and log volumes were fine. You may need to repeat this on additional drives. In such cases, look at the different scan options within CHKDsk.exe – the example below is an offline scan of the C:\ Drive.
CHKDsk.exe C: /F /R
Since this is on the C:\ drive, a restart is needed so the disk can be scanned.
It would also be prudent to investigate why this issue occurred. File systems do not go bad on their own accord. In the case of this customer, these are VMs on a datastore and the SAN controller abended causing some pretty serious issues across the board. But due to a lack of monitoring, that was not detected nor investigated at the time.
Once the file system scan completes, It would also be good to verify the OS servicing health so you can deal with any issues there. Take a look at this post for related Component Based Servicing issues.
This incident took me back to a day in the spring of 2001. One of my esteemed colleagues (let’s call them Andy) was having severe issues trying to mount an Exchange 5.5 database, and the server was having none of it. This was in the days of SCSI and all of the related bus and terminator issues. Since there had been a spate of SCSI bus warnings, I was suspect of the drive’s integrity. So I wanted to run a CHKDsk to make sure it was happy. He said no as the disk was an IDE disk and the SCSI messages were irrelevant, remember that quirk from NT? Turns out that the database was on SCSI and it the file system was corrupted, so running the check resolved the MFT issues and allowed the database to mount.