ioo 命令
用途
管理 I/O 可调参数。
语法
ioo [ -p | -r [ -K ]] [ -y ]{ -o Tunable [ =NewValue ] }
ioo [ -p | -r [ -K ]] [ -y ] { -d Tunable }
ioo [ -p | -r [-K ]] [ -y ] -D
ioo [ -p | -r | -K ] [ -F ] -a
ioo -h [ Tunable ]
ioo [ -F ] [ -K ] -L [ Tunable ]
ioo [ -F ] [ -K ] -x [ Tunable ] 描述
ioo 命令配置输入/输出 (I/O) 调整参数。 该命令设置或显示所有 I/O 调整参数的当前或下一次启动值。 还可以用此命令进行永久性更改,或将更改推迟到下一次重新引导之后生效。 命令是否设置或显示参数由附带的标记决定。 -o 标志可显示参数值或设置新参数值。
如果进程按顺序读取文件, minpgahead 参数指定的值将决定首次检测到条件时提前读取的页数。 maxpgahead 参数指定的值设置提前读的最大页数,不管先前顺序读的数目为多少都是如此。
操作系统允许调整文件系统
bufstructs 的数目 (numfsbuf) 以及延迟写算法所处理的数据量 (numclust)。
- 改变可调参数的效果
- 滥用 ioo 命令会导致性能下降或操作系统故障。 在尝试使用 ioo 命令之前,请参考虚拟内存管理器性能概述。
有关修改任何可调参数及其用途的更多信息,请参阅可调参数部分中的可调参数特性。
确保可调参数的诊断和调整部分适用于您的情况。 更改可调参数的值可能会提高系统性能。
如果 "诊断 "和 "调整 "部分都只包含 "不适用",除非得到开发人员的指示,否则不要更改可调参数。 AIX 开发。
标志
| 项 | 描述 |
|---|---|
| -h [ 可调 ] | 显示指定可调参数的帮助信息。 如果未指定可调参数, -h 标志将显示 ioo 命令的用法说明。 |
| -a | 显示当前值、重启值(与 -r 标记)、实时更新值(与 -K 标志)或永久值(与 -p 标志),每行一个,成对显示 tunable =
value。 对于永久选项,只有在可调参数的重启值和当前值相等时,才会显示该参数的值。 否则,NONE 显示为该值。 |
| -d Tunable | 将指定的可调参数重置为默认值。 如果因未设置为默认值而必须更改的可调参数符合以下一个或多个标准,则会显示警告信息,且不会对可调参数进行更改:
有关不同类型可调参数的更多信息,请参阅可调参数类别。 |
| -D | 将所有可调参数重置为默认值。 如果因未设置为默认值而必须更改的可调参数符合以下一组或多组标准,则会显示警告信息,且不会对可调参数进行更改:
有关不同类型可调参数的更多信息,请参阅可调参数类别。 |
| -F | 时,强制显示受限的可调参数。 -a, -L或 -x 标记时,将显示受限的可调参数。 如果不指定 -F 标记,受限可调参数将不被包括在内,除非它们的名称与显示标记相关,如 -o, -a, -x 或 -L 标志。 |
| -K | 在 /etc/tunables/nextboot 和 /etc/tunables/nextliveupdate 文件中设置可调参数值。 -K 标志仅与 -r 标志一起使用。 当您用 和 标志或 和 标志指定 -K-r -d 标志或 -r 和 -D 标志时,可调参数值将被设置为 /etc/tunables/nextboot 和 /etc/tunables/nextliveupdate 文件中的默认值,并在下一次启动或实时更新操作中使用。 当您使用 -L 或 -x 标志指定 -K 标志时, ioo 命令将显示实时更新值。 |
| -L [ 可调 ] | 使用以下格式列出一个或所有可调参数的特性,每行一个:如果使用 -L 标志指定 -K 标志,那么还会显示 "实时更新" 值。 |
| -o Tunable[=NewValue] | 显示可调参数的值或将其设置为新值。 使用 -o 标志更改动态可调参数值时, /etc/tunables/usermodified 文件会用新的可调参数值更新。 如果要更改的可调参数符合以下一组标准中的一个或多个标准,则会显示警告信息,并且不会对可调参数进行更改:
有关不同类型可调参数的更多信息,请参阅可调参数类别。 指定 -r 标志而不指定 NewValue 时,将显示可调参数的下一次启动值。 当 -K 标志与 -o 标志结合使用且不带 NewValue 时,将显示可调参数的下一个实时更新值。 当 -p 标志与 -o 标志一起使用且不带 NewValue 时,只有当可调整参数的当前值和下一次启动值相同时,才会显示该值。 否则, |
| -p | 使用 -o、 -d 或 -D 标志时,指定更改同时应用于当前值和重启值。 通过可调参数,您可以更新 /etc/tunables/nextboot 文件和当前值。 这些组合不能用于 Reboot 和 Bosboot 类型的可调参数。 Reboot 和 Bosboot 可调参数类型的当前值不可更改。 当您指定 -a 或 -o 标志而不指定新值时,只有当可调整参数的当前值和下一次启动值相同时,才会显示这些值。 否则, |
| -r | 与 -o、 -d 或 -D 标志一起使用时,对 reboot 参数值进行修改。 通过可调参数,您可以更新 /etc/tunables/nextboot 文件。 如果更改了 Bosboot 类型的任何可调参数,系统会提示用户运行 bosboot 命令。 当 -r 标志与 -a 或 -o 标志一起使用而未指定新值时,将显示可调参数的下一次启动值,而不是当前值。 与 -K 标志一起使用时,更改同时适用于 /etc/tunables/nextboot 文件和 /etc/tunables/nextliveupdate 文件。 |
| -x[可调整] | 使用以下电子表格格式列出一个或所有可调参数的特性,每行一个:如果使用 -x 标志指定 -K 标志,那么还会显示 "实时更新" 值。 |
| -y | 禁止在运行 bosboot 命令前出现确认提示。 |
如果使用 -o、 -d 或 -D 标志修改受限的可调参数,用户将收到一条警告信息,说明修改了受限使用类型的可调参数。 如果还指定了 -r 或 -p 标志,系统会提示您确认更改受限可调参数。 此外,在系统重启时,使用指定 -r 或 -p 标志的命令行,可将 /etc/tunables/nextboot 文件中的受限可调参数修改为不同于默认值的值。 修改受限可调参数会导致错误日志条目,该条目列出了修改后的可调参数列表。
| 缩写 | 2 的力量 |
|---|---|
K |
210 |
M |
220 |
G |
230 |
T |
240 |
P |
250 |
E |
260 |
使用 -o、 -d 或 -D 标志对 Mount 类型的可调参数进行更改时,会向用户显示一条警告信息,说明该更改仅对未来的挂载有效。
使用 -o、 -d 或 -D 标志对 Connect 类型的可调参数进行更改,会重新启动 inetd 命令,并向用户显示一条警告信息,说明更改仅对未来的套接字连接有效。
如果尝试使用 -o、 -d 或 -D 标志更改 Bosboot 或 Reboot 类型的可调参数,而不使用 -r 标志,则会显示错误信息。
如果使用 -o、 -d 或 -D 标志,但不使用 -r 标志,试图将 Incremental 类型的可调参数的当前值改为小于当前值的新值,则会显示错误信息。
兼容性方式
在 pre-5.2 兼容模式下运行可调参数时,该模式由 sys0 属性控制,该属性被称为 pre520tune ,除 Bosboot 外,可调参数的重启值没有意义。 在 pre-5.2 兼容模式下,它们不会在启动时应用。
在pre-5.2兼容性模式中,为调整参数设置重启值仍然是通过在启动序列中调用脚本来实现的。 因此,重启类型参数的设置可以不使用 "-r标记,这样现有脚本就能继续工作。
pre-5.2 兼容模式会在机器迁移至 AIX 5.2. 对于完整安装,则将其关闭,并通过在重启序列中应用 /etc/tunables/nextboot 文件的内容来设置可调整参数的重启值。 只有在这种模式下,"-r和 "-p标志才能充分发挥作用。 有关详细信息,请参阅《性能工具指南和参考》中的内核调优。
可调参数
| 项 | 描述 |
|---|---|
| Dynamic | 如果可调参数可以随时更改。 |
| Static | 如果可调参数永远无法更改。 |
| Reboot | 如果可调参数只能在重启时更改。 |
| Bosboot | 如果只能使用 bosboot 命令更改可调参数,并重新启动机器。 |
| Mount | 如果对可调参数的更改仅对未来的文件系统或目录挂载有效。 |
| Incremental | 如果可调参数可以逐步增加,启动时除外。 |
| Connect | 如果对可调参数的更改只对未来的套接字连接有效,那么就会出现"......"。 |
| Deprecated | 如果当前版本的 AIX. |
ioo -h| 项 | 描述 |
|---|---|
| aio_active |
|
| aio_maxreqs |
|
| aio_maxservers |
|
| aio_minservers |
|
| aio_server_inactivity |
|
| aio_delegateiotodriverkth |
|
|
|
| dk_closed_path_recovery |
|
| dk_lbp_enabled |
|
| dk_lbp_num_bufs |
|
| dk_lbp_buf_size |
|
| j2_atimeUpdateSymlink |
|
| j2_dynamicBufferPreallocation |
|
| j2_inodeCacheSize |
|
| j2_maxPageReadAhead |
|
| j2_maxRandomWrite |
|
| j2_metadataCacheSize |
|
| j2_minPageReadAhead |
|
| j2_nPagesPerWriteBehindCluster |
|
| j2_nRandomCluster |
|
| j2_recoveryMode |
|
| j2_syncByVFS |
|
| j2_syncConcurrency |
|
| j2_syncDelayReport |
|
| j2_syncPageCount |
|
| j2_syncPageLimit |
|
|
|
| lvm_bufcnt |
|
| maxpgahead |
|
| maxrandwrt |
|
| numclust |
|
| numfsbufs |
|
| pd_npages |
|
| posix_aio_active |
|
| posix_aio_maxreqs |
|
| posix_aio_maxservers |
|
| posix_aio_minservers |
|
| posix_aio_server_inactivity |
|
| posix_aio_delegateiotodriverkth |
|
|
内存使用情况和统计信息
- 要显示文件系统的内存使用情况,请输入以下命令:
cat /proc/sys/fs/jfs2/memory_usage返回元数据缓存、"inode缓存和总内存使用量(以字节为单位)。
- 要显示文件系统的统计数据,请输入以下命令:
cat /proc/sys/fs/jfs2/statistics它会返回 icache 命中数、icache 未命中数和 icache 激活次数。
- 要显示与 LBP 支持有关的系统统计信息,如出现超出缓冲区值的次数和 unmap 操作失败的次数,请输入以下命令:
cat/proc/sys/disk/lbp/statistics
安全性
示例
- 要列出 ioo 命令管理的可调参数的当前值和重启值、范围、单位、类型和依赖关系,请输入以下命令:
ioo -L - 要列出 "j2_recoveryMode可调参数的当前值、默认值、重启值、范围、单位和类型,请输入以下命令:
ioo -L j2_recoveryMode结果可能类似以下输出:NAME CUR DEF BOOT MIN MAX UNIT TYPE ----------------------------------------------------------------------- recoveryMode 1 1 1 0 1 n/a D ----------------------------------------------------------------------- - 要显示 j2_nPagesPerWriteBehindCluster 可调参数的帮助信息,请输入以下命令:
ioo -h j2_nPagesPerWriteBehindCluster - 要在下次重启后将 maxrandwrt 可调参数设置为 4,请输入以下命令:
ioo -r -o maxrandwrt=4 - 要将所有 "ioo可调参数永久重置为默认值,请输入以下命令:
ioo -p -D - 要列出所有 ioo 可调参数的重启值,请输入以下命令:
ioo -r -a - 要以电子表格格式列出 ioo 命令管理的可调参数的当前值和重启值、范围、单位、类型和依赖关系,请输入以下命令:
ioo -x