How do I turn off write cache in Linux? More specifically, SUSE 11?
My problem is that heavy I/O kills the system even if the generating process is a user priority class, and the starved processes are RR/RT class. So my high availability system breaks with lots of timeouts.
I have / mounted on a flash drive, and a few mount points looking into a RAID controller. For the RAID, I want to try to turn the cache off, since it has a cache inside. But if it needs to be system-wide, fine.
So far I used sync option to mount, but it's not quite like turning off the cache.
Any ideas?
14 Answers
When mounting your hard drives use -o sync which will turn off write buffering for the drive.
You can also set it up in your fstab:
/dev/sda1 / reiserfs sync 0 0 2 For a plain hard disk it would normally be
hdparm -W 0 /dev/sdXbut RAID controllers typically don't pass that through.
You'll have to check the configuration interface of your RAID controller for any options. It might not be possible.
2Maybe drop_caches can help you. It does not seem to disable the cache, merely clear it.
1please have a look here: With , you can disable file caches on a per-application level