I’m trying to change my Global I/O Scheduler in Yast2 > Kernel Settings to Deadline. Everytime I change it to deadline it goes back to Not Configured. I was reading there is a bug on this. My question is is there a way to change this manually via a config file. Any help is appreciated.
Just change the boot options in yast. For grub2: Go to Boot Loader -> Boot Loader Options -> Optional Kernel Command Line Parameter. Append elevator=deadline to the end. This is much easier on grub2 as you only have to do it once. For grub1 I think you have to edit the individual kernels with this option. And again every time you get a new kernel.
Edit you can also just run:
echo deadline > /sys/block/device/queue/scheduler
And this to confirm it works:
cat /sys/block/device/queue/scheduler
Obviously replace device with “sda” or similar. The boot option way works for all devices. The command way only works for the single device specified.
Please note it will revert on every boot. So you will need to do add commands to a boot script to make the choices permanent. It is a lot of fun playing with i/o schedulers. I use deadline myself. It seems even with cfq having priorities I still get stutters in audio playback, so I might as well use something a bit simpler. If I could ever get a kernel to compile correctly I would try bfq.