歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux綜合 >> Linux資訊 >> 更多Linux >> RedHat Linux用戶管理經驗點滴

RedHat Linux用戶管理經驗點滴

日期:2017/2/27 14:10:33   编辑:更多Linux
 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,任何超過這個值的郵件將被拒絕。



  -: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,任何超過這個值的郵件將被拒絕。



Copyright © Linux教程網 All Rights Reserved