当前位置:操作系统 > Unix/Linux >>

RedHatLinux用户管理经验点滴

RedHat Linux是众多Linux发行版本中较流行的一个。这里结合笔者的使用经验谈谈在RedHat Linux下的用户管理。笔者使用的是RedHat 5.1发行版,核心版本2.2.11,如不作特别说明,下面的操作都是在root 账户下完成的。

  为普通用户和用户组加入磁盘配额限制

  Linux的quota程序允许为系统上每一用户或用户组指定所能使用的磁盘配额。目前quota仅能工作在ext2类型的文件系统上。使用quota需要确定以下两点:

  1?当前的系统核心支持quota。

  2?系统已正确安装quota程序包。

  如果你当前的系统核心不支持quota,请重新编译你的核心,当系统提示:

  Quota support(CONFIG―QUOTA)[n]

  回答y ,生成新的系统核心。

  如果没有quota程序包,请到以下地址下载quota的源程序并编译之。

  ftp://ftp.funet.fi/pub/Linux/PEOPLE/Linus/subsystems/quota/all.tar.gz

  一般Linux的发行版本的核心都缺省包含了quota支持,也附带了quota 程序包,只需安装quota 并加以设置便可让quota工作。

  quota的具体设置步骤:

  1.编辑系统初始脚本(RedHat是/etc/rc.d/rc.sysinit,别的发行版可能有所不同)让它检查quota并激活quota。

  # Check quota and then turn quota on.

  if [ -x /usr/sbin/quotacheck ]

  then

  echo ″Checking quotas. This may take some time.″

  /usr/sbin/quotacheck -avug

  echo ″Done.″

  fi

  if [ -x /usr/sbin/quotaon ]

  then

  echo ″Turning on quota.″

  /usr/sbin/quotaon -avug

  fi

  在RedHat 5.1版的/etc/rc.d/rc.sysinit文件中已包含了以上语句,请检查你自己的系统初始脚本文件,没有就加上。注意必须让其在/etc/fstab。

  2.编辑 /etc/fstab。你的 /etc/fstab 文件可能会是这样的:

  /dev/hda1 /

  ext2 defaults 1 1

  /dev/hda2 /home ext2 defaults 1 1

  选择用户所在分区所在行的第四个域,为用户加入 quota支持,如下:

  /dev/hda1 /

  ext2 defaults 1 1

  /dev/hda2 /home ext2 defaults,usrquota 1 1

  如为用户组加入quota支持,可将usrquota替换为grpquota。

  如两者兼而有之,可将这两项一并写入,如下:

  /dev/hda1 /

  ext2 defaults 1 1

  /dev/hda2 /home ext2 defaults,usrquota,grpquota 1 1

  3.建立quota记录文件quota.user和quota.group。进入用户所在分区根目录,如上例中打入cd /home即可,按下面命令建立文件:

  touch quota.user

  touch quota.group

  chmod 600 quota.user quota.group

  完成上面几步以后,重新启动计算机以使设置生效。

  4.为用户或用户组设置磁盘配额限制。假设在你的系统上有一名为bob 的用户,现在想给他10MB的硬盘配额限制,他所拥有的最大文件数不得超过100个。执行edquota -u dquo,系统将进入编辑环境(具体编辑环境视editor变量设置而定),将如下三行:

  Quotas for user bob:

  /dev/hda2: blocks in use: 14, limits (soft=0, hard=0)

  inodes in use: 12, limits (soft=0, hard=0)

  改为:

  Quotas for user bob:

  /dev/hda2: blocks in use: 14, limits (soft=0, hard=10240)

  inodes in use: 12, limits (soft=0, hard=100)

  其中:

  blocks in use:用户已使用块的大小,单位是kB。

  inodes in use:用户现有文件的大小。

  这两项都是系统自动给出,不必改动。

  软限制(soft limits)

  通常设置软限制为一接近硬限制的值,超越此限制时,系统将警告用户将到达最大磁盘配额限制。软限制为0 时没有软限制。结合宽限期使用时,只要用户超越了软限制,一过宽限期,任何对磁盘空间的额外需求将被立即拒绝。

  硬限制(hard limits)

  磁盘配额的绝对限制,设置了quota的用户不能超越此限制。

  宽限期(Grace Period)

  宽限期是用户超越了软限制而没有到达硬限制时的一段放宽期,在这段时间内,用户可以在硬限制范围内自由地使用磁盘空间,超过这段时间,所有对磁盘空间的额外需求将被拒绝,即使用户还在硬限制之内。宽限期的单位可以是秒、分、时、天。执行edquota -t命令设置宽限期。执行该命令后,将系统提示中的两个0 days 改成你认为合适的值即可。

  有时想给一批用户加上同样的限制,比方说,给系统上所有100个用户加上与bob同样的限制,可手工先给bob加上限制,然后执行下面命令:

  edquota -p bob ′awk -F: ′$3 > 499 {print $1}′/etc/passwd′

  给用户组设置磁盘配额限制与普通用户类似,假设有一用户组game,执行 edquota -g game即可。

  控制用户的登录地点

  文件/etc/secruity/access.conf可控制用户登录地点,为了使用access.conf,必须在文件/etc/pam.d/login中加入下面行:

  account required /lib/security/pam―access.so

  access.conf文件的格式:

  permission : users : origins

  其中:

  permission:可以是 “+”或“-”,表示允许或拒绝。

  user:可以是用户名、用户组名,如果是all则表示所有用户。

  origins:登录地点。local表示本地,all表示所有地点,console表示控制台。另外,origins也可以是某一网络。

  后面两个域中加上 except是“除了”的意思。例如:除了用户wheel、shutdown、sync禁止所有的控制台登录:

  -:ALL EXCEPT wheel shutdown sync:console

  root账户的登录地点不在access.conf文件中控制,而是由/etc/securetty文件控制,具体作法一看便知。

  限制用户每次所发邮件大小

  Linux系统使用sendmail发送邮件,配置文件是/etc/sendmail.cf,缺省使用TCP/IP协议。我们的Linux机器上往往会有多个用户同时工作,或者干脆就用它作邮件服务器,在同一时刻,系统可能要收发很多邮件,因此不能让某一用户过多地占用sendmail的时间。sendmail的缺省配置对每次收发邮件的大小没有限制,更改配置文件/etc/sendmail.cf,找到O MaxMessageSize,去掉行首的#号,并将其后的数值改为一合适的数值,单位为字节。如:

  O MaxMessageSize = 1048576

  意为每次收发邮件最大为1MB,任何超过这个值的邮件将被拒绝。

  

上一个:如何成为合格的Linux系统管理员
下一个:解决Linux下批量添加大量账户的问题

更多Unix/Linux疑问解答:
路由原理介绍
子网掩码快速算法
改变网络接口的速度和协商方式的工具miitool和ethtool
Loopback口的作用汇总
OSPF的童话
增强的ACL修改功能
三层交换机和路由器的比较
用三层交换机组建校园网
4到7层交换识别内容
SPARC中如何安装Linux系统(2)
SPARC中如何安装Linux系统(1)
用Swatch做Linux日志分析
实战多种Linux操作系统共存
浅析Linux系统帐户的管理和审计
Linux2.6对新型CPU的支持(2)
电脑通通透
玩转网络
IE/注册表
DOS/Win9x
Windows Xp
Windows 2000
Windows 2003
Windows Vista
Windows 2008
Windows7
Unix/Linux
苹果机Mac OS
windows8
安卓/Android
Windows10
如果你遇到操作系统难题:
访问www.zzzyk.com 试试
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,