Fedora

更改特定磁碟的 I/O 調度程序

  • September 26, 2014

我想永久更改 Fedora 20 上特定磁碟的 I/O 調度程序。根據我的發現,這可以通過以 root 身份執行以下 shell 行來實現:

echo {SCHEDULER-NAME} > /sys/block/{DEVICE-NAME}/queue/scheduler

但是,重新啟動後更改會失去。似乎實現我想要的一種方法是創建一個 systemd 服務,但我完全迷失了,因為它必須在安裝磁碟後執行。有人可以幫我寫這樣一個 systemd 服務嗎?也歡迎任何其他可行的解決方案。

您只需在*/etc/systemd/system/io-scheduler.service*中創建一個文件,其內容如下:

[Unit]
Description=I/O Scheduler Setter
After=local-fs.target

[Service]
Type=oneshot
ExecStart=/bin/bash -c 'echo noop > /sys/block/sda/queue/scheduler'
TimeoutSec=0
RemainAfterExit=yes

[Install]
WantedBy=multi-user.target

然後,啟用該服務以在啟動時自動啟動並為目前會話啟動它:

chmod 755 /etc/systemd/system/io-scheduler.service
systemctl enable io-scheduler.service
systemctl start io-scheduler.service

和包tunedtuned-utils用於 Fedora(它們也在 Red Hat 中)。這是一個系統服務,可以即時應用預定義或使用者定義的系統配置文件和可調參數,包括掛載選項、磁碟調度程序、sysctl 參數等。許多 Liinux 管理員忽略了這些設置。

請參閱 Fedora 20 手冊:
http ://docs.fedoraproject.org/en-US/Fedora/20/html/Power_Management_Guide/sect-tuned-installation-and-usage.html

就像是:

tuned-adm profile virtual-guest

或者

tuned-adm profile enterprise-storage

這是 RHEL 的設置時間表。Fedora 可能略有不同。

在此處輸入圖像描述

我知道您正在尋找特定磁碟上的設置,但我傾向於將 I/O 調度參數應用於所有磁碟。無論哪種方式,看看預定義的配置文件是否適合您(無需重複工作)。如果沒有,配置文件很容易定制。

引用自:https://serverfault.com/questions/612949