萬盛學電腦網

 萬盛學電腦網 >> 服務器教程 >> Linux系統中管理用戶和用戶組的相關配置文件簡介

Linux系統中管理用戶和用戶組的相關配置文件簡介

   Linux 是一個多用戶、多任務的操作系統,理解Linux的單用戶多任務,多用戶多任務;

  用戶的角色區分:

  用戶在系統中是分角色的,在Linux 系統中,由於角色不同,權限和所完成的任務也不同;值得注意的是用戶的角色是通過UID和識別的,特別是UID;在系統管理中,系統管理員一定要堅守UID 唯一的特性;

  root 用戶:系統唯一,是真實的,可以登錄系統,可以操作系統任何文件和命令,擁有最高權限;

  虛擬用戶:這類用戶也被稱之為偽用戶或假用戶,與真實用戶區分開來,這類用戶不具有登錄系統的能力,但卻是系

  統運行不可缺少的用戶,比如bin、daemon、adm、ftp、mail等;這類用戶都系統自身擁有的,而非後

  來添加的,當然我們也可以添加虛擬用戶;

  普通真實用戶:這類用戶能登錄系統,但只能操作自己家目錄的內容,權限有限,這類用戶都是系統管理員自行添加的;

  如果您想了解Linux系統的一些帳號,請查看 /etc/passwd ;

  用戶和用戶組的對應關系是:一對一、多對一、一對多或多對多;

  與用戶(user)和用戶組(group)相關的配置文件:

  1)與用戶(user)相關的配置文件;

  代碼如下:

  /etc/passwd

  注:用戶(user)的配置文件;

  代碼如下:

  /etc/shadow

  注:用戶(user)影子口令文件;

  2)與用戶組(group)相關的配置文件;

  代碼如下:

  /etc/group

  注:用戶組(group)配置文件;

  代碼如下:

  /etc/gshadow

  注:用戶組(group)的影子文件;

  管理用戶(user)和用戶組(group)的相關工具或命令:

  1、管理用戶(user)的工具或命令;

  useradd 注:添加用戶;

  adduser 注:添加用戶;

  passwd 注:為用戶設置密碼;

  usermod 注:修改用戶命令,可以通過usermod 來修改登錄名、用戶的家目錄等等;

  pwcov 注:同步用戶從/etc/passwd 到/etc/shadow;

  pwck 注:pwck是校驗用戶配置文件/etc/passwd 和/etc/shadow 文件內容是否

  合法或完整;

  pwunconv 注:是pwcov 的立逆向操作,是從/etc/shadow和/etc/passwd創

  建/etc/passwd ,然後會刪除 /etc/shadow 文件;

  finger 注:查看用戶信息工具;

  id 注:查看用戶的UID、GID及所歸屬的用戶組;

  chfn 注:更改用戶信息工具;

  su 注:用戶切換工具;

  sudo 注:sudo 是通過另一個用戶來執行命令(execute a command as

  another user),su 是用來切換用戶,然後通過切換到的用戶來完

  成相應的任務,但sudo 能後面直接執行命令,比如sudo 不需要root

  密碼就可以執行root 賦與的執行只有root才能執行相應的命令;但得

  通過visudo來編輯/etc/sudoers來實現;

  visudo 注:visodo 是編輯 /etc/sudoers 的命令;也可以不用這個命令,直接

  用vi來編輯 /etc/sudoers 的效果是一樣的;

  sudoedit 注:和sudo 功能差不多

  2、管理用戶組(group)的工具或命令

  groupadd 注:添加用戶組;

  groupdel 注:刪除用戶組;

  groupmod 注:修改用戶組信息

  groups 注:顯示用戶所屬的用戶組

  grpck

  grpconv 注:通過/etc/group和/etc/gshadow 的文件內容來同步或創

  建/etc/gshadow ,如果/etc/gshadow 不存在則創建;

  grpunconv 注:通過/etc/group 和/etc/gshadow 文件內容來同步或創

  建/etc/group ,然後刪除gshadow文件;

  3、/etc/skel 目錄;

  /etc/skel目錄一般是存放用戶啟動文件的目錄,這個目錄是由root權限控制,當我們添加用戶時,這個目錄下的文件自動復制到新添加的用戶的家目錄下;/etc/skel 目錄下的文件都是隱藏文件,也就是類似.file格式的;我們可通過修改、添加、刪除/etc/skel目錄下的文件,來為用戶提供一個統一、標准的、默認的用戶環境;

  代碼如下:

  [root@localhost beinan]# ls -la /etc/skel/

  總用量 92

  代碼如下:

  drwxr-xr-x 3 root root 4096 8月 11 23:32 .

  drwxr-xr-x 115 root root 12288 10月 14 13:44 ..

  -rw-r--r-- 1 root root 24 5月 11 00:15 .bash_logout

  -rw-r--r-- 1 root root 191 5月 11 00:15 .bash_profile

  -rw-r--r-- 1 root root 124 5月 11 00:15 .bashrc

  -rw-r--r-- 1 root root 5619 2005-03-08 .canna

  -rw-r--r-- 1 root root 438 5月 18 15:23 .emacs

  -rw-r--r-- 1 root root 120 5月 23 05:18 .gtkrc

  drwxr-xr-x 3 root root 4096 8月 11 23:16 .kde

  -rw-r--r-- 1 root root 658 2005-01-17 .zshrc

  /etc/skel 目錄下的文件,一般是我們用useradd 和adduser 命令添加用戶(user)時,系統自動復制到新添加用戶(user)的家目錄下;如果我們通過修改 /etc/passwd 來添加用戶時,我們可以自己創建用戶的家目錄,然後把/etc/skel 下的文件復制到用戶的家目錄下,然後要用chown 來改變新用戶家目錄的屬主;

  4、/etc/login.defs 配置文件;

  /etc/login.defs 文件是當創建用戶時的一些規劃,比如創建用戶時,是否需要家目錄,UID和GID的范圍;用戶的期限等等,這個文件是可以通過root來定義的;

  比如Fedora 的 /etc/logins.defs 文件內容;

  代碼如下:

  # *REQUIRED*

  # Directory where mailboxes reside, _or_ name of file, relative to the

  # home directory. If you _do_ define both, MAIL_DIR takes precedence.

  # QMAIL_DIR is for Qmail

  #

  #QMAIL_DIR Maildir

  MAIL_DIR /var/spool/mail 注:創建用戶時,要在目錄/var/spool/mail中創建一個用戶mail文件;

  #MAIL_FILE

  # Password aging controls:

  #

  # PASS_MAX_DAYS Maximum number of days a password may be used.

  # PASS_MIN_DAYS Minimum number of days allowed between password changes.

  # PASS_MIN_LEN Minimum acceptable password length.

  # PASS_WARN_AGE Number of days warning given before a password expires.

  #

  PASS_MAX_DAYS 99999 注:用戶的密碼不過期最多的天數;

  PASS_MIN_DAYS 0 注:密碼修改之間最小的天數;

  PASS_MIN_LEN 5 注:密碼最小長度;

  PASS_WARN_AGE 7

  #

  # Min/max values for automatic uid selection in useradd

  #

  UID_MIN 500 注:最小UID為500 ,也就是說添加用戶時,UID是從500開始的;

  UID_MAX 60000 注:最大UID為60000;

  #

  # Min/max values for automatic gid selection in groupadd

  #

  GID_MIN 500 注:GID 是從500開始;

  GID_MAX 60000

  #

  # If defined, this command is run when removing a user.

  # It should remove any at/cron/print jobs etc. owned by

  # the user to be removed (passed as the first argument).

  #

  #USERDEL_CMD /usr/sbin/userdel_local

  #

  # If useradd should create home directories for users by default

  # On RH systems, we do. This option is ORed with the -m flag on

  # useradd command line.

  #

  CREATE_HOME yes 注:是否創用戶家目錄,要求創建;

  5、/etc/default/useradd 文件;

  通過useradd 添加用戶時的規則文件;

  代碼如下:

  # useradd defaults file

  GROUP=100

  HOME=/home 注:把用戶的家目錄建在/home中;

  INACTIVE=-1 注:是否啟用帳號過期停權,-1表示不啟用;

  EXPIRE= 注:帳號終止日期,不設置表示不啟用;

  SHELL=/bin/bash 注:所用SHELL的類型;

  SKEL=/etc/skel 注: 默認添加用戶的目錄默認文件存放位置;也就是說,當我們用adduser添加用戶時,用戶

  家目錄下的文件,都是從這個目錄中復制過去的;

copyright © 萬盛學電腦網 all rights reserved