AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 612949
Accepted
Laurent
Laurent
Asked: 2014-07-17 03:12:10 +0800 CST2014-07-17 03:12:10 +0800 CST 2014-07-17 03:12:10 +0800 CST

更改特定磁盘的 I/O 调度程序

  • 772

我想永久更改 Fedora 20 上特定磁盘的 I/O 调度程序。根据我的发现,这可以通过以 root 身份执行以下 shell 行来实现:

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

但是,重新启动后更改会丢失。似乎实现我想要的一种方法是创建一个 systemd 服务,但我完全迷失了,因为它必须在安装磁盘后执行。有人可以帮我写这样一个 systemd 服务吗?也欢迎任何其他可行的解决方案。

fedora
  • 4 4 个回答
  • 6902 Views

4 个回答

  • Voted
  1. ewwhite
    2014-07-17T03:56:47+08:002014-07-17T03:56:47+08:00

    和包tuned可tuned-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 调度参数应用于所有磁盘。无论哪种方式,看看预定义的配置文件是否适合您(无需重复工作)。如果没有,配置文件很容易定制。

    • 8
  2. Best Answer
    Laurent
    2014-07-17T04:23:03+08:002014-07-17T04:23:03+08:00

    您只需在/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
    
    • 6
  3. Boscoe
    2014-07-17T13:43:33+08:002014-07-17T13:43:33+08:00

    您可以通过将以下内容添加到内核命令行来更改所有磁盘的默认调度程序,该命令行可以在以下位置找到/boot/grub/menu.lst:

    elevator={SCHEDULER-NAME}

    • 0
  4. Cale
    2014-09-27T09:33:09+08:002014-09-27T09:33:09+08:00

    @ewwhite,您已经提供了操作人员未提出的问题的答案。

    您建议的资源中没有提供“永久更改特定磁盘的 I/O 调度程序”的答案,并且评论“Fedora 和 Red Hat 记录和预期的方式”由于我不会的几个原因而脱离基础不要进入这里。

    要更改特定磁盘的 io 调度程序,操作选择了正确的方法:

    echo noop > /sys/block/sda/queue/scheduler

    他选择如何运行这个命令有些随意。这可以通过配置管理应用程序、脚本或像他所做的那样创建服务单元来完成。


    @boscoe - 这将是 grub2 系统上的一个问题。这个问题是针对F20的。此外,它将电梯应用于所有磁盘,这不是操作所追求的。

    • 0

相关问题

  • 将 Fedora 用于服务器有什么问题?

  • /usr/bin/ld: 找不到 -lssl

  • Ubuntu、Fedora、openSUSE 对比

  • Fedora 11 上的 DNS 服务器

  • 在 VM 中运行 Fedora 目录服务器

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve