AIXStudy之--AIX用户资源访问限制配置


AIX Study之--AIX用户访问系统资源限制配置

Aix 用户使用的系统资源限制包括两个概念 --- 硬限制(hard limits) 和软限制(soft limits)。hard limits自Aix 4.1版本开始引入。hard limits 应由Aix系统管理员设置,只有security组的成员可以将此值增大,用户本身可以减小此限定值,但是其更改将随着该用户从系统退出而失效。

使用下列命令可以查看hard limits的限定值:ulimit -Hasoft limits 是Aix核心使用的限制进程对系统资源的使用的上限值。此值可由任何人更改,但不能超出hard limits值。这里要注意的是只有security组的成员可使更改永久生效,普通Aix 用户的更改在其退出系统后将失效。

使用以下命令可以查看soft limits的设置:ulimit -a
下面为系统的soft limits的默认值:


  1. 3.2
  2. 4.1-4.3
  3. ===============
  4. =================
  5. fsize = 2097151
  6. fsize = 2097151
  7. core = 2048
  8. core = 2048
  9. cpu = 3600
  10. cpu = -1
  11. data = 131072
  12. data = 262144
  13. rss = 65536
  14. rss = 65536
  15. stack = 8192
  16. stack = 65536
  17. nofiles = 2000*
  18. nofiles=2000 *

* 该值(nofiles)只能在Aix 4.3.1 或以后的版本中更改。

上述定义作为默认值存放在文件 /etc/security/limits 中,在新用户被加进系统后生效。直接更改此文件中的定义值需要将系统重新启动以便使更改生效。将相应值该为"-1" 表示不受 soft limits的限制(unlimited)。

下面我们将就各字段逐一进行介绍:
fsize 用户创建的文件大小限制。此定义值(512字节为单位)为该用户可以生成的最大文件的大小。
core 生成的core文件大小的限制(512字节为单位)。
cpu 用户进程可用cpu的限定值(以秒为单位)。普通用户只能将此值减小,root可以将此值增大。这里要注意的是进程使用CPU的时间取决于Aix Kernel(核心程序)进程调度算法,该值在此仅做参考。
data 进程数据段大小的限定值(以字节为单位)。
stack 进程堆栈段大小的限定值(以字节为单位)。
rss 进程常驻内存段的限定值(以字节为单位)。Aix核心并不参考此限定。
nofiles 进程中打开文件的最大数量。此限定在Aix 4.3.1之前的版本中固定为2000。在Aix 4.3.1及其之后的版本中可将此值增大至32767。

Aix 用户中,下面介绍三种修改上述限定值的方法:
1. 编辑文件/etc/security/limits,直接修改各定义值。此更改在系统重新启动后生效。

2. 使用命令ulimit修改默认值。例如:


  1. ulimit -f value
  2. ulimit -c
  3. ulimit -t
  4. ulimit -d
  5. ulimit -s
  6. ulimit -m
  7. ulimit -n


将修改fsize, core, cpu,data, stack, rss和nofiles的soft limit值。

3. 使用命令chuser修改某用户的限定值。例如:


  1. chuser fsize=
  2. chuser core= chuser cpu=
  3. chuser data=
  4. chuser limit=
  5. chuser rss=
  6. chuser nofiles=

将用户“username”的soft limits改为值“value”。


  1. chuser hard_fsize=
  2. chuser hard_core=
  3. chuser hard_cpu=
  4. chuser hard_data=
  5. chuser hard_limit=
  6. chuser hard_rss=
  7. chuser hard_nofiles=

将用户“username”的hard limits改为值“value”。

可以通过smit工具修改:

\

修改后,将配置信息会写入/etc/security/limits

[root@aix211 /]#cat /etc/security/limits

 

oracle:
        fsize = -1
        data = -1
        stack = -1
        core = -1


 

相关内容