在 Solaris 软件中,伪终端 pty 具有以下两种用途:
使用 telnet、rlogin 或 rsh 命令支持远程登录
提供 X 窗口系统用以创建命令解释程序窗口的界面
对于桌面工作站,缺省伪终端数便已足够。因此,将主要针对可用于远程登录的 pty 数进行调优。
Solaris 的早期版本需要执行这些调优步骤,以便显式配置系统使其具有首选的 pty 数。从 Solaris 8 发行版开始,采用了新机制,从而在大多数情况下不必进行调优。现在,缺省 pty 数基于系统上的内存量。仅当限制或增加可登录到系统的用户数时,才应该更改此缺省值。
在配置过程中,将使用以下三个相关变量:
pt_cnt-最大缺省 pty 数。
pt_pctofmem-专用于 pty 支持结构的内核内存的百分比。如果值为零,则表示任何远程用户都无法登录到系统。
pt_max_pty-硬性最大 pty 数。
pt_cnt 的缺省值为零,此值指示系统基于 pct_pctofmem 中指定的内存量限制登录,除非设置了 pt_max_pty。如果 pt_cnt 为非零值,则会分配 pty,直到达到此限制为止。超过此阈值时,系统便会查看 pt_max_pty。如果 pt_max_pty 具有非零值,则将其与 pt_cnt 进行比较。如果 pt_cnt 小于 pt_max_pty,则允许分配 pty。如果 pt_max_pty 为零,则将 pt_cnt 与基于 pt_pctofmem 支持的 pty 数进行比较。如果 pt_cnt 小于此值,则允许分配 pty。请注意,仅当 pt_cnt 和 ptms_ptymax 的缺省值都为零时,基于 pt_pctofmem 的限制才起作用。
要对 pty 设置不同于源自 pt_pctofmem 的最大值的硬限制,请在 /etc/system 中将 pt_cnt 和 ptms_ptymax 设置为首选 pty 数。在这种情况下,与 ptms_pctofmem 的设置无关。
要针对 pty 支持使用不同的系统内存百分比,并使操作系统可管理显式限制,请执行以下操作:
请勿在 /etc/system 中设置 pt_cnt 或 ptms_ptymax。
在 /etc/system 中将 pt_pctofmem 设置为首选百分比。例如,对于 10% 设置,设置 pt_pctofmem=10。
请注意,在内存用于 pty 支持之前,实际上并不分配内存。分配内存之后,便会保持已分配状态。
可用 /dev/pts 项数是动态的,其上限由系统上可用物理内存量确定。pt_cnt 是用于确定系统可容纳的最小登录数的三个变量之一。系统可支持的最大缺省 /dev/pts 设备数是在引导时通过计算适合系统内存某百分比的 pty 结构数来确定的(请参见 pt_pctofmem)。如果 pt_cnt 为零,则系统分配的最大内存为此最大值。如果 pt_cnt 为非零值,则系统分配的最大内存为 pt_cnt 与缺省最大值之间的较大值。
无符号整数
0
0 到 maxpid
登录/窗口
否
无
需要显式控制可远程登录到系统的用户数时。
不稳定
指定为支持 /dev/pts 项数据结构可占用的最大物理内存百分比。运行 64 位内核的系统将针对每个 /dev/pts 项占用 176 字节。运行 32 位内核的系统将针对每个 /dev/pts 项占用 112 字节。
无符号整数
5
0 到 100
百分比
否
无
需要限制或增加可登录到系统的用户数时。如果值为零,则表示任何远程用户都无法登录到系统。
不稳定