精华区 [关闭][返回]

当前位置:网易精华区>>讨论区精华>>电脑技术>>● FreeBSD>>《FreeBSD使用大全》第二版>>4.2.4 登录类别

主题:4.2.4 登录类别
发信人: sungang(笨刚)
整理人: sungang(2003-09-16 12:11:34), 站内信件
4.2.4 登录类别

从 4.3 BSD Net/2开始,BSD Unix引入了登录类别这种分类机制来管理用户使用的资源、记账和环境设置。FreeBSD系统使用/etc/login.conf中描述的数据来将用户按照登录环境、强制性的资源限制以及记账管理等分为不同的登录类别,每个用户的登录类别记录在/etc/master.passwd中的该用户的设置中。

default:\

     :cputime=infinity:\

     :datasize-cur=64M:\

     :stacksize-cur=64M:\

     :memorylocked-cur=10M:\

     :memoryuse-cur=100M:\

     :filesize=infinity:\

     :coredumpsize=infinity:\

     :maxproc-cur=64:\

     :openfiles-cur=64:\

     :priority=0:\

     :requirehome@:\

     :umask=022:\

     :tc=auth-defaults:

上面设置了default登录类别中的几个参数,如果没有在master.passwd文件中明确指定用户的登录类别,就使用这个缺省类别来作为用户的登录类别。

cputime设置了用户的每个进程可以使用的CPU时间,缺省是无限制(infinity)。如果加以限制,有些需要大量CPU时间进行运算的进程就不能正常执行到结束。

datasize-cur设置了用户使用的数据段最大为64M,但-cur设置不是强制的,用户实际使用的数据有可能超过这个值,但最大不能超过datasize-max设置的值(缺省没有设置)。如果没有-cur和-max后缀,仅仅定义datasize,则表示datasize-cur和datasize-max同样都为datasize设置的值。同样stacksize定义了对栈的限制。

memorylocked-cur设置了用户每进程可以锁定的最大内存。

memoryuse-cur设置了每进程使用的最大内存。

filesize-cur设置了用户产生的文件大小。

coredumpsize设置了在应用程序发生问题时产生的core dump文件的大小。

maxproc-cur设置了用户可以同时执行的最大进程数。

openfiles-cur设置了每进程最多打开的文件数。

priority设置用户进程的优先级。

requirehome设置用户登录时是否需要主目录,@符号表示不需要主目录。

umask项设置缺省的umask,用于用户创建文件的属性。

tc设置系统认证策略为使用缺省的认证策略。

如果要创建新类别,并不需要对每个值都重新设置,系统缺省先应用default类别的设置,然后再应用具体类别的设置,因此只需要设置与default类别不同的项就可以了。

users:\

     :manpath=/usr/share/man /usr/X11R6/man /usr/local/man:\

     :cputime=4h:\

     :openfiles=32:\

     :maxproc=48:\

     :tc=default:

上面是设置了一个新类users,可以看出它为用户设置了环境变量MANPATH,并重置了cputtime、openfile、maxproc和tc的值。每次更改login.conf之后,都要进行更新登录类别数据库的操作。

# cap_mkdb /etc/login.conf

由于登录类别保存在master.passwd文件中,通常在使用adduser添加用户的时候设置用户的登录类别。如果要进行更改,必须使用vipw来修改/etc/master.passwd文件的第5个域。下面为master.passwd中的一行,该行指定这个用户的登录类别为user:

wb:FPRKMMNuZ3Pfk:1001:1001:users:0:0:Wang Bo:/home/wb:/bin/sh

[关闭][返回]