Dizüstü bilgisayarımda bir SSD var ve "noop" zamanlayıcısına geçmenin tercih edildiğini söylediler.
Noop zamanlayıcısına nasıl geçebilirim ve yeniden başlatmalar arasında kalıcı olması için değişikliği nerede yaparım?
Dizüstü bilgisayarımda bir SSD var ve "noop" zamanlayıcısına geçmenin tercih edildiğini söylediler.
Noop zamanlayıcısına nasıl geçebilirim ve yeniden başlatmalar arasında kalıcı olması için değişikliği nerede yaparım?
Yanıtlar:
Düzenleme / etc / default / grub, örneğin gksudo gedit /etc/default/grub
burada asansör = noop eklemelisiniz.
Değişim GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
için GRUB_CMDLINE_LINUX_DEFAULT="quiet splash elevator=noop"
.
Ardından çalıştırın sudo update-grub2
ve yeniden başlatın.
Diyelim ki sabit diskiniz /dev/sda
. Daha sonra, hangi programlayıcının şu anda kullanımda olduğunu görmek için kontrol edebilirsiniz:
cat /sys/block/sda/queue/scheduler
(Kullanılmakta olan zamanlayıcı, [
]
parantez içine alınacaktır .)
Ve noop zamanlayıcıyı kullanmasını sağlayabilirsiniz:
echo noop > /sys/block/sda/queue/scheduler
Biraz daha fazla bilgi için bu makaleye bakın .
Değişikliğin devam etmesi için komutu girebilirsiniz /etc/rc.local
.
sudo echo noop > /sys/block/sda/queue/scheduler
? Bu, kullanıcı olarak çalışan kabuk, çıktısı yönlendirilen komutu çalıştırmadan önce yönlendirmeyi ayarlar. Bunun echo noop | sudo tee /sys/block/sda/queue/scheduler
yerine kullanabilirsiniz . Bkz Can “Merhaba”> x.txt bile sudo ile echo değil? ve Bash'de yeniden yönlendirme ile sudo kullanırken “izin verilmeyen izinler” nasıl çözülür? daha fazla bilgi ve diğer yaklaşımlar için. (Eğer demek istediğin bu değilse, lütfen bana bildirin.)
Bu Debian referansı SSD'lerin dinamik olarak nasıl algılandığını ve zamanlayıcıyı buna göre nasıl değiştireceğinizi gösterir:
Farklı sürücü tiplerine sahip sistemlerde, ayarları udev kuralına göre ayarlayabilirsiniz (create /etc/udev/rules.d/60-ssd-scheduler.rules):
# Dönmeyen diskler için son tarih zamanlayıcıyı ayarla
ACTION=="add|change", KERNEL=="sd[a-z]", ATTR{queue/rotational}=="0",ATTR{queue/scheduler}="deadline"
Çekirdeğinizin dönme durumunu algılayabildiğinden emin olmak için:
$ 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!
Yukarıdakilerin tümü, ilk kez SSD kullanıcıları için ilgi çekici başka birçok unsuru olan Debian referansından doğrudan alıntılanmıştır.