Как перейти на планировщик noop?
У меня в ноутбуке есть SSD, и мне сказали, что переключение на планировщик "noop" предпочтительнее.
Как перейти к планировщику noop и где я могу внести изменения, чтобы они были постоянными при перезагрузках?
3 ответа
Отредактируйте /etc/default/grub, например gksudo gedit /etc/default/grub
, здесь вам нужно добавить elevator=noop.
+ Изменить GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
в GRUB_CMDLINE_LINUX_DEFAULT="quiet splash elevator=noop"
,
Тогда беги sudo update-grub2
и перезагрузите.
Предположим, ваш жесткий диск /dev/sda
, Затем вы можете проверить, какой планировщик в данный момент используется для него:
cat /sys/block/sda/queue/scheduler
(Используемый в настоящее время планировщик будет окружен [
]
скобки.)
И вы можете сделать это с помощью планировщика noop:
echo noop > /sys/block/sda/queue/scheduler
Смотрите эту статью для получения дополнительной информации.
Чтобы сохранить изменения, вы можете поместить команду в /etc/rc.local
,
Эта ссылка на Debian показывает, как динамически определять твердотельные накопители и соответственно изменять планировщик:
В системах с различными типами дисков вы можете настроить параметры с помощью правила udev (создайте /etc/udev/rules.d/60-ssd-scheduler.rules):
# Установить планировщик крайнего срока для невращающихся дисков
ACTION=="add|change", KERNEL=="sd[a-z]", ATTR{queue/rotational}=="0",ATTR{queue/scheduler}="deadline"
Чтобы убедиться, что ваше ядро может определять статус вращения:
$ for f in /sys/block/sd?/queue/rotational; do printf "$f is "; cat $f; done
/sys/block/sda/queue/rotational is 1
/sys/block/sdb/queue/rotational is 1
/sys/block/sdc/queue/rotational is 0 <=== Only this is SSD!
Все вышеперечисленное цитируется непосредственно из ссылки на Debian, в которой есть много других элементов, представляющих интерес для начинающих пользователей SSD.
vi /etc/rc.local
Добавить строку
for f in /sys/block/sd?/queue/scheduler; do echo "noop" > $f; cat $f; done
Затем запустите команду
chmod +x /etc/rc.local