I did some research on this question and I found that what my IT department is said is essentially correct, Linux is way more vulnerable than Windows to a power outage. The reason why is how the inode table works in Linux/unix. Since it is an unordered list and is constantly being modified, there is no separation between important, static files like kernel binaries, and worthless files like temporary files. What this means is that the inode entries to critical system files are constantly being re-written, a very bad design obviously. In fact, critical system files are actually more likely to be having their inode entries be written at any given time than non-essential files. When power goes out it tends to blow away whatever part of the inode table was being written, which likely as not contains pointers to system files. The system files themselves are fine and intact, but the directory to find them is damaged. The situation is made worse by disk caching which has the effect of increasing the size of the damaged areas of the inode table.
In Windows, even the old FAT file system is way more robust than this. FAT has a table too, but it is an ordered table, so it does not have system files mixed up with temporary files. Usually the system files are in one area of the directory all together and this area is unlikely to be written very often. Also, FAT has a backup directory, so even if the directory is corrupted, it just reverts to the backup. This means that with FAT the user is unlikely to lose any file links in the event of a power failure, even temporary files. With Linux, however, since the inode table is constantly being written, the user is virtually guaranteed to lose access to files in a power failure.
The only thing that can be done to mitigate this is to turn off disk caching.
2Well, disregarding different OS problems, power outages affects any machine, simply because every process that is running stops to. It is always preferable to let the machine shut itself off, because then all processes are allowed to stop normally. – Doktoro Reichard – 2013-08-22T22:09:56.083
Doh, I know this. The question is whether Linux is more brittle than Windows for some reason, and if so, is there something I can do to increase its robustness (like forcing it to flush its disk cache more frequently somehow, for example). – Tyler Durden – 2013-08-22T22:22:22.820
2My answer mas meant to be general and encompassing: no matter what you do, there is always a risk of something somewhere failing. If Linux is more brittle I leave it for those who can specifically answer. My personal experience (with Windows and with OSX) shown me that unless I was doing something I cared for the output (simulations, for instance), they bounced back easily. Maybe something you should add is how the machines are used. – Doktoro Reichard – 2013-08-22T22:26:38.630
"Is there some process I should be running to avoid my Linux boxes from getting nuked by a power outage?" The problem is at a hardware level, the only command you can run here that would help is "shutdown computer" If you are concerned about this, I recommend a UPS (though this gets expensive fast if you have a large number of computers) – David – 2013-08-22T22:32:35.677
I'd ask your sysadmins why they believe that. My best guess though would be depending on the file system you're using and what the system is doing when it loses power, the file system could be left in an arbitrary state, which could lead to booting issues. – ernie – 2013-08-22T22:41:45.303
7Always is a big word, its also false. Windows can become corrupt during a power outage. Why don't you have battery backups and configure your system to shutdown? I can safely say that anyone who says "always" will be wrong 99.99999% of the time. – Ramhound – 2013-08-22T23:07:15.197