📜  Linux 中的 ionice 命令示例

📅  最后修改于: 2022-05-13 01:57:27.181000             🧑  作者: Mango

Linux 中的 ionice 命令示例

CFQ I/O 磁盘电梯包含一个名为 ionice 的工具,该工具鼓励控制器在进程周期级别分配需求,以加速或限制特定周期的磁盘子系统使用。例如,如果您需要运行 rsync 命令或内容以在本地或远程加强您的文档,请单独使用 ionice 和 rsync 语言结构来加速或限制 rsync 周期。

注意: ionice 中塞满了 util-Linux rpm。

ionice 命令在 Linux 中的使用:

  • 空闲:如果没有不同的周期需要最佳使用或更高的信息请求准入,则分配的 I/O 需要处于非活动状态的周期可以被允许进入磁盘子系统。对运行任务非常有帮助,就像 updateb 一样糟糕。
  • 尽力而为:默认情况下,所有不需要特定 I/O 需求的周期都指定给此类。 Cycles 将获得其特定 CPU 体面水平到 I/O 需求等级的 8 度需求。
  • 常量:最值得注意的可访问 I/O 需求是连续的,这意味着单个周期将始终被允许进入磁盘子系统。连续需要设置同样可以确认8个需要级别。

句法:

ionice -c scheduling_class -n priority_nice_value command

ionice 设备确认随附的替代方案:



TagDescription
-c, –class classDetermine the name or number of the scheduling class to utilize; 0 for none, 1 for real-time, 2 for best-exertion, 3 for inactive. 
-n, –classdata levelDetermine the scheduling of class information. This possibly has an impact if the class acknowledges a contention. For constant and best-exertion, 0-7 are legitimate information (need levels), and 0 speaks to the most noteworthy need level. 
-p, –pid PID…Indicate the cycle IDs of running cycles for which to get or set the scheduling boundaries. 
-P, –pgid PGID…Indicate the cycle bunch IDs of running cycles for which to get or set the scheduling boundaries. 
-t, –ignoreOverlook the inability to set the mentioned need. On the off chance that an order was determined, run it even in the event that it was unrealistic to set the ideal scheduling need, which can occur because of deficient benefits or an old piece form. 
 -h, –helpShow help text and exit. 
-u, –uid UID…Indicate the client IDs of running cycles for which to get or set the scheduling boundaries. 
-V, –versionShow variant data and exit.

使用 ionice 命令

1.要设置一个进程,假设 PID 为 1 为空闲 I/O 进程。

sudo ionice -c 3 -p 1

使用 pid ionjice 设置进程

这里,使用“sudo”前缀,如果没有它,由于特权,操作将不被允许。

2.将“bash”或任何其他程序作为尽力而为的程序运行。

ionice -c 2 bash

尽力而为计划

在这里,bash 程序将与调度类一起执行,以达到最佳状态。

3.运行具有调度类和优先级的程序。

sudo ionice -c 1 -n 0 bash

调度类和优先级



执行完上述命令后,用户将以超级用户身份登录。这里,“0”指定最高优先级。

4.打印进程的类和优先级,PID 为 1 和 2。

ionice -p 1 2

这里,PID 为 1 和 2 的进程的优先级都是空闲的。

5.获取正在运行的进程的ID。

sudo ionice -u 1

在这里,上面的命令将显示一个错误,因为 PID 为 1 的进程被列为空闲进程。

6.获取与命令相关的帮助文本。

ionice -h

7.显示ionice 的版本和元数据。

ionice -V

8.忽视与过程相关的无能。

sudo ionice -t 

执行上述命令后,失败将被忽略。

笔记; Linux 自 2.6.13 起通过 CFQ I/O 调度器支持 I/O 调度优先级和类。