У мене в ноутбуці є SSD, і мені сказали, що краще переходити на "noop" планувальник.
Як я переходжу до планувальника noop і де я можу внести зміни, щоб воно було стійким під час перезавантаження?
У мене в ноутбуці є SSD, і мені сказали, що краще переходити на "noop" планувальник.
Як я переходжу до планувальника noop і де я можу внести зміни, щоб воно було стійким під час перезавантаження?
Відповіді:
Редагувати / 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
.
sudo echo noop > /sys/block/sda/queue/scheduler
? Це не працює, оскільки оболонка, яка працює як ваш користувач, встановлює перенаправлення перед запуском команди, вихід якої переспрямований. Ви можете використовувати echo noop | sudo tee /sys/block/sda/queue/scheduler
замість цього. Див. Не можете повторювати "привіт"> x.txt навіть із судо? і як вирішити "дозвіл відхилений", коли використовується sudo з перенаправленням в Bash? для отримання додаткової інформації та інших підходів. (Якщо ви це не маєте на увазі, будь ласка, повідомте мене про це.)
Ця посилання на Debian показує, як динамічно виявляти SSD та відповідно змінювати планувальник:
У системах з різними типами приводів ви можете налаштувати параметри за допомогою правила udev (create /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.