linux用戶和組管理,/etc/passwd 、/etc/shadow和/etc/group 文件內容解釋

與用戶相關的系統配置文件主要有/etc/passwd 和/etc/shadow,其中/etc/shadow是用戶資訊的加密文件,比如用戶的密碼口令的加密保存等;

/etc/passwd 和/etc/shadow 文件是互補的;

/etc/passwd 是系統識別用戶的一個文件,系統所有的用戶都在這裏有登錄記載;當我們以beinan 這個賬號登錄時,系統首先會查閱 /etc/passwd
文件,看是否有beinan 這個賬號,然後確定beinan的UID,通過UID 來確認用戶和身份,如果存在則讀取/etc/shadow影子文件中所對應的beinan的密碼;如果密碼覈實無誤則登錄系統,讀取用戶的配置文件;

 

1)/etc/passwd 的內容理解:
  在/etc/passwd 中,每一行都表示的是一個用戶的信息;一行有7個段位;每個段位用:號分割,例如:


   beinan:x:500:500:beinan sun:/home/beinan:/bin/bash
   linuxsir:x:501:502::/home/linuxsir:/bin/bash


  第一字段:用戶名(也被稱爲登錄名);在上面的例子中,我們看到這兩個用戶的用戶名分別是 beinan 和linuxsir;
  第二字段:口令;在例子中我們看到的是一個x,其實密碼已被映射到/etc/shadow 文件中;
  第三字段:UID ;請參看本文的UID的解說;
  第四字段:GID;請參看本文的GID的解說;
  第五字段:用戶名全稱,這是可選的,可以不設置,在beinan這個用戶中,用戶的全稱是beinan sun ;而linuxsir 這個用戶是沒有設置全稱;
  第六字段:用戶的家目錄所在位置;beinan 這個用戶是/home/beinan ,而linuxsir 這個用戶是/home/linuxsir ;
  第七字段:用戶所用SHELL 的類型,beinan和linuxsir 都用的是 bash ;所以設置爲/bin/bash ;

2)關於UID 的理解:
  UID 是用戶的ID 值,在系統中每個用戶的UID的值是唯一的,更確切的說每個用戶都要對應一個唯一的UID
,系統管理員應該確保這一規則。系統用戶的UID的值從0開始,是一個正整數,至於最大值可以在/etc/login.defs
可以查到,一般Linux發行版約定爲60000;
  UID 是確認用戶權限的標識,用戶登錄系統所處的角色是通過UID 來實現的,而非用戶名,切記; 在Linux 中,root的UID是0,擁有系統最高權限;比如我在/etc/passwd 中把beinan的UID改爲0後,你設想會發生什麼呢?beinan這個用戶會被確認爲root用戶。beinan這個帳號可以進行所有root的操作;
  
  一般情況下,每個Linux的發行版都會預留一定的UID和GID給系統虛擬用戶佔用,虛擬用戶一般是系統安裝時就有的,是爲了完成系統任務所必須的用戶,但虛擬用戶是不能登錄系統的,比如ftp、nobody、adm、rpm、bin、shutdown等;預留數量以各個系統中/etc/login.defs
中的 UID_MIN 的最小值爲準;比如Fedora 系統 login.defs的UID_MIN是500,而UID_MAX
值爲60000,也就是說我們通過adduser默認添加的用戶的UID的值是500到60000之間;

 

2、關於/etc/shadow ;
  1)/etc/shadow 概說;
  /etc/shadow文件是/etc/passwd 的影子文件,這個文件並不由/etc/passwd
而產生的,這兩個文件是應該是對應互補的;shadow內容包括用戶及被加密的密碼以及其它/etc/passwd
不能包括的信息,比如用戶的有效期限等;這個文件只有root權限可以讀取和操作,權限如下:
  -r——– 1 root root 1.5K 10月 16 09:49 /etc/shadow

  2)/etc/shadow 的內容分析;
  /etc/shadow 文件的內容包括9個段位,每個段位之間用:號分割;我們以如下的例子說明;


  beinan:$1$VE.Mq2Xf$2c9Qi7EQ9JP8GKF8gH7PB1:13072:0:99999:7:::
  linuxsir:$1$IPDvUhXP$8R6J/VtPXvLyXxhLWPrnt/:13072:0:99999:7::13108:


  第一字段:用戶名(也被稱爲登錄名),在/etc/shadow中,用戶名和/etc/passwd 是相同的,這樣就把passwd 和shadow中用的用戶記錄聯繫在一起;這個字段是非空的;
  第二字段:密碼(已被加密),如果是有些用戶在這段是x,表示這個用戶不能登錄到系統;這個字段是非空的;
  第三字段:上次修改口令的時間;這個時間是從1970年01月01日算起到最近一次修改口令的時間間隔(天數),您可以通過passwd 來修改用戶的密碼,然後查看/etc/shadow中此字段的變化;
  第四字段:兩次修改口令間隔最少的天數;如果設置爲0,則禁用此功能;也就是說用戶必須經過多少天才能修改其口令;此項功能用處不是太大;默認值是通過/etc/login.defs文件定義中獲取,PASS_MIN_DAYS 中有定義;
  第五字段:兩次修改口令間隔最多的天數;這個能增強管理員管理用戶口令的時效性,應該說在增強了系統的安全性;如果是系統默認值,是在添加用戶時由/etc/login.defs文件定義中獲取,在PASS_MAX_DAYS 中定義;
  第六字段:提前多少天警告用戶口令將過期;當用戶登錄系統後,系統登錄程序提醒用戶口令將要作廢;如果是系統默認值,是在添加用戶時由/etc/login.defs文件定義中獲取,在PASS_WARN_AGE 中定義;
  第七字段:在口令過期之後多少天禁用此用戶;此字段表示用戶口令作廢多少天后,系統會禁用此用戶,也就是說系統會不能再讓此用戶登錄,也不會提示用戶過期,是完全禁用;
  第八字段:用戶過期日期;此字段指定了用戶作廢的天數(從1970年的1月1日開始的天數),如果這個字段的值爲空,帳號永久可用;
  第九字段:保留字段,目前爲空,以備將來Linux發展之用;
  如果更爲詳細的,請用 man shadow來查看幫助,您會得到更爲詳盡的資料;

 

二、關於用戶組;
  具有某種共同特徵的用戶集合起來就是用戶組(Group)。用戶組(Group)配置文件主要有 /etc/group和/etc/gshadow,其中/etc/gshadow是/etc/group的加密信息文件;
  1、/etc/group 解說;
文件是用戶組的配置文件,內容包括用戶和用戶組,並且能顯示出用戶是歸屬哪個用戶組或哪幾個用戶組,因爲一個用戶可以歸屬一個或多個不同的用戶組;同一用
戶組的用戶之間具有相似的特徵。

2、/etc/group 內容具體分析
  /etc/group 的內容包括用戶組(Group)、用戶組口令、GID及該用戶組所包含的用戶(User),每個用戶組一條記錄;格式如下:
  group_name:passwd:GID:user_list
  在/etc/group 中的每條記錄分四個字段:
  第一字段:用戶組名稱;
  第二字段:用戶組密碼;
  第三字段:GID
  第四字段:用戶列表,每個用戶之間用,號分割;本字段可以爲空;如果字段爲空表示用戶組爲GID的用戶名;
  我們舉個例子:
  root:x:0:root,linuxsir 注:用戶組root,x是密碼段,表示沒有設置密碼,GID是0,root用戶組下包括root、linuxsir以及GID爲0的其它用戶(可以通過/etc/passwd查看);;

2、關於GID ;
  GID和UID類似,是一個正整數或0,GID從0開始,GID爲0的組讓系統付予給root用戶組;系統會預留一些較靠前的GID給系統虛擬
用戶(也被稱爲僞裝用戶)之用;查看系統添加用戶組默認的GID範圍應該查看 /etc/login.defs 中的 GID_MIN 和GID_MAX 值;
  我們可以對照/etc/passwd和/etc/group 兩個文件;我們會發現有默認用戶組之說;即當一個用屬於多個組時會有一個默認的組;在創建目錄和文件時,會使用默認的用戶組;

 

3、/etc/gshadow 解說;
  /etc/gshadow是/etc/group的加密資訊文件,比如用戶組(Group)管理密碼就是存放在這個文件。/etc
/gshadow和/etc/group是互補的兩個文件;對於大型服務器,針對很多用戶和組,定製一些關係結構比較複雜的權限模型,設置用戶組密碼是極
有必要的。比如我們不想讓一些非用戶組成員永久擁有用戶組的權限和特性,這時我們可以通過密碼驗證的方式來讓某些用戶臨時擁有一些用戶組特性,這時就要用
到用戶組密碼;
  /etc/gshadow 格式如下,每個用戶組獨佔一行;
  groupname:password:admin,admin,…:member,member,…
  第一字段:用戶組
  第二字段:用戶組密碼,這個段可以是空的或!,如果是空的或有!,表示沒有密碼;
  第三字段:用戶組管理者,這個字段也可爲空,如果有多個用戶組管理者,用,號分割;
  第四字段:組成員,如果有多個成員,用,號分割;
  舉例:
  beinan:!::linuxsir
   linuxsir:oUS/q7NH75RhQ::linuxsir
  第一字段:這個例子中,有兩個用戶組beinan用linuxsir
  第二字段:用戶組的密碼,beinan用戶組無密碼;linuxsir用戶組有已經,已經加密;
  第三字段:用戶組管理者,兩者都爲空;
  第四字段:beinan用戶組所擁有的成員是linuxsir ,然後還要對照一下/etc/group和/etc/passwd
查看是否還有其它用戶,一般默認添加的用戶,有時同時也會創建用戶組和用戶名同名稱; linuxsir 用戶組有成員linuxisir ;
  如何設置用戶組的密碼? 我們可以通過 gpasswd 來實現;不過一般的情況下,沒有必要設置用戶組的密碼;不過自己實踐一下也有必要;下面是一個爲linuxsir用戶組設置密碼的例子;
  gpasswd 的用法: gpasswd 用戶組
  
[email=root@localhost]root@localhost[/email]
~]# gpasswd linuxsir
  正在修改 linuxsir 組的密碼
  新密碼:
  請重新輸入新密碼:
  用戶組之間的切換,應該用 newgrp ,這個有點象用戶之間切換的su ;我先舉個例子:
  [beinan@localhost ~]$ newgrp linuxsir
  密碼:
  [beinan@localhost ~]$ mkdir lingroup
   [beinan@localhost ~]$ ls -ld lingroup/
  drwxr-xr-x 2 beinan linuxsir 4096 10月 18 15:56 lingroup/
  [beinan@localhost ~]$ newgrp beinan
   [beinan@localhost ~]$ mkdir beinangrouptest
   [beinan@localhost ~]$ ls -ld beinangrouptest
  drwxrwxr-x 2 beinan beinan 4096 10月 18 15:56 beinangrouptest
  說明:我是以beinan用戶組切換到linuxsir用戶組,並且建了一個目錄,然後再切換回beinan用戶組,又建了一個目錄,請觀察兩個目錄屬用戶組的不同;還是自己體會吧;
三、通過用戶和用戶組配置文件來查詢或管理用戶;
  1、用戶和用戶組查詢的方法;
  1)通過查看用戶(User)和用戶組的配置文件的辦法來查看用戶信息
  我們已經用戶(User)和用戶組(Group)的配置文件已經有個基本的瞭解,通過查看用戶(User)和用戶組的配置文件,我們就能做到對系統用戶的瞭解,當然您也可以通過id 或finger 等工具來進行用戶的查詢等任務。
  對於文件的查看,我們可以通過 more 或cat 來查看,比如 more /etc/passwd 或cat /etc/passwd ;其它工具也一樣,能對文本查看就行,比如less 也好
  比如我們可以通過more 、cat 、less命令對/etc/passwd 的查看,雖然命令不同,但達到的目的是一樣的, 都是得到/etc/passwd 的內容;
  [root@localhost ~]# more /etc/passwd
   [root@localhost ~]# cat /etc/passwd
   [root@localhost ~]# less /etc/passwd
  2)通過id和finger 工具來獲取用戶信息;
  除了直接查看用戶(User)和用戶組(Group)配置文件的辦法除外,我們還有id和finger工具可用,我們一樣通過命令行的操作,來
完成對用戶的查詢;id和finger,是兩個各有測重的工具,id工具更測重用戶、用戶所歸屬的用戶組、UID 和GID 的查看;而finger
測重用戶資訊的查詢,比如用戶名(登錄名)、電話、家目錄、登錄SHELL類型、真實姓名、空閒時間等等;
  id 命令用法;
  id 選項 用戶名
  比如:我想查詢beinan和linuxsir 用戶的UID、GID 以及歸屬用戶組的情況:
  [root@localhost ~]# id beinan
   uid=500(beinan) gid=500(beinan) groups=500(beinan)
  注:beinan的UID 是 500,默認用戶組是beinan,默認用戶組的GID 是500,歸屬於beinan用戶組;
  [root@localhost ~]# id linuxsir
   uid=505(linuxsir) gid=502(linuxsir) groups=502(linuxsir),0(root),500(beinan)
  注:linuxsir的UID 是505,默認用戶組是linuxsir ,默認用戶組的GID 是502,歸屬於linuxsir(GID爲502)、root(GID爲0),beinan(GID爲500);
  關於id的詳細用法,我會在專門用戶查詢的文章來介紹;您可以通過man id 來查看用法,用起來還是比較簡單的;
  finger 的用法
  finger 選項 用戶名1 用戶名2 …
  詳細用法請參看man finger ;關於更爲詳細用法,我會在專門用戶查詢的文章來介紹;
  如果finger 不加任何參數和用戶,會顯示出當前在線用戶,和w命令類似;對比一下;不過各有測重;
  [root@localhost ~]# w
   14:02:42 up 1:03, 3 users, load average: 0.04, 0.15, 0.18
   USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
   linuxsir tty1 - 13:39 22:51 0.01s 0.01s -bash
   beinan tty2 - 13:53 8:48 11.62s 0.00s /bin/sh /usr/X1
   beinan pts/0 :0.0 13:57 0.00s 0.14s 1.08s gnome-terminal
   [root@localhost ~]# finger
   Login Name Tty Idle Login Time Office Office Phone
   beinan beinan sun tty2 8 Oct 18 13:53
   beinan beinan sun pts/0 Oct 18 13:57 (:0.0)
   linuxsir linuxsir open tty1 22 Oct 18 13:39 linuxsir o +1-389-866-771
  如果我們在finger 後面加上用戶名,就可以看到用戶更爲詳細的信息,可以一次查看多個用戶,用空格分開,比如下面的例子中,我們一次查詢兩個用戶beinan和linuxsir的信息;
  [root@localhost ~]# finger beinan linuxsir
   Login: beinan 注:用戶名(也是登錄名) Name: beinan sun (用戶名全稱)
   Directory: /home/beinan 注:家目錄 Shell: /bin/bash 注:所用SHELL類型
   On since Tue Oct 18 13:53 (CST) on tty2 10 minutes 55 seconds idle 注:空閒時間;
   On since Tue Oct 18 13:57 (CST) on pts/0 from :0.0
   No mail.
   No Plan.
   Login: linuxsir Name: linuxsir open
   Directory: /home/linuxsir Shell: /bin/bash
   Office: linuxsir office, +1-389-866-7715
   On since Tue Oct 18 13:39 (CST) on tty1 24 minutes 58 seconds idle
   No mail.
   No Plan.
  3)用戶組查詢的辦法;
  我們可以通過用戶來查詢所歸屬的組,用groups 來查詢;比如我查詢beinan和linuxsir 所歸屬的組,我們可以用groups 來查詢;
  [root@localhost ~]# groups beinan linuxsir
   beinan : beinan
   linuxsir : linuxsir root beinan
  注:這是通過groups 同時查看了用戶beinan和linuxsir所歸屬的組;
  2、通過修改用戶(User)和用戶組(Group)配置文件的辦法來添加;
  由於我們已經在前面說過,可以通過修改配置文件的辦法來管理用戶,所以此主題應該包括此內容;當然通過用戶及用戶組管理工具(比如
adduser、userdel、usermod 、userinfo、groupadd 、groupdel
、groupmod等)也是可以的,通過管理工具對用戶的管理我們將要在專門一篇文章中介紹;
  通過修改用戶(User)和用戶組(Group)配置文件的方法管理用戶之用戶的添加流程;
  我們先以添加用戶爲例,對用戶的刪除和修改都比較簡單;
  1)修改 /etc/passwd ,添加用戶記錄;
  我們按/etc/passwd的格式的約定來添加新的用戶記錄;當然您要讓一個用戶失效,可以刪除您想要刪除的用戶記錄;值得注意的是,不能讓UID 重複;
  比如我想添加lanhaitun 這個用戶,我發現UID 508沒有用戶用,並且我想把其用戶組也設置爲lanhaitun ,用戶組的GID 也設置爲508,如果GID 沒有佔用的話;
  我們要打開 /etc/passwd ,在最下面加一行;
  lanhaitun:x:508:508::/home/lanhaitun:/bin/bash
  然後執行pwconv ,讓/etc/passwd 和/etc/shadow同步,您可以查看 /etc/shadow的內容是否同步;
  [root@localhost beinan]# pwconv
  2)修改/etc/group
  首先,我們得查看是否有lanhaitun用戶組,以及GID 508 是否被其它用戶組佔用;
  [root@localhost ~]# more /etc/group |grep lanhaitun
   [root@localhost ~]# more /etc/group |grep 508
  通過查看,我們發現沒有被佔用;所以我們要添加lanhaitun 的記錄到 /etc/group
  lanhaitun:x:508:
  其次,是運行 grpconv 來同步/etc/group 和/etc/gshadow內容,您可以通過查看/etc/gshadow的內容變化確認是不是添加組成功了;
  [root@localhost beinan]# grpconv
  3)創建用戶的家目錄,並把用戶啓動文件也複製過去;
  創建用戶的家目錄,我們要以/etc/passwd 中添加的新用戶的記錄爲準,我們在/etc/passwd
中添加新用戶lanhaitun ,她的家目錄是處於/home/lanhaitun ;另外我們還需要把/etc/skel
目錄下的.*隱藏文件複製過去;
  [root@localhost ~]# cp -R /etc/skel/ /home/lanhaitun
   [root@localhost ~]# ls -la /home/lanhaitun/
   總用量 48
   drwxr-xr-x 3 root root 4096 10月 18 14:53 .
   drwxr-xr-x 10 root root 4096 10月 18 14:53 ..
   -rw-r–r– 1 root root 24 10月 18 14:53 .bash_logout
   -rw-r–r– 1 root root 191 10月 18 14:53 .bash_profile
   -rw-r–r– 1 root root 124 10月 18 14:53 .bashrc
   -rw-r–r– 1 root root 5619 10月 18 14:53 .canna
   -rw-r–r– 1 root root 438 10月 18 14:53 .emacs
   -rw-r–r– 1 root root 120 10月 18 14:53 .gtkrc
   drwxr-xr-x 3 root root 4096 10月 18 14:53 .kde
   -rw-r–r– 1 root root 658 10月 18 14:53 .zshrc
  4)改變新增用戶家目錄的屬主和權限;
  我們發現新增用戶的家目錄的屬主目前是root ,並且家目錄下的隱藏文件也是root權限;
  [root@localhost ~]# ls -ld /home/lanhaitun/
   drwxr-xr-x 3 root root 4096 10月 18 14:53 /home/lanhaitun/
  所以我們要通過chown 命令來改變/home/lanhaitun目錄歸屬爲lanhaitun用戶;
  [root@localhost ~]# chown -R lanhaitun:lanhaitun /home/lanhaitun
  查看是否已經更換了屬主爲lanhaitun用戶所有;
  [root@localhost ~]# ls -ld /home/lanhaitun/
   drwxr-xr-x 3 lanhaitun lanhaitun 4096 10月 18 14:53 /home/lanhaitun/
   [root@localhost ~]# ls -la /home/lanhaitun/
   總用量 48
   drwxr-xr-x 3 lanhaitun lanhaitun 4096 10月 18 14:53 .
   drwxr-xr-x 10 root root 4096 10月 18 14:53 ..
   -rw-r–r– 1 lanhaitun lanhaitun 24 10月 18 14:53 .bash_logout
   -rw-r–r– 1 lanhaitun lanhaitun 191 10月 18 14:53 .bash_profile
   -rw-r–r– 1 lanhaitun lanhaitun 124 10月 18 14:53 .bashrc
   -rw-r–r– 1 lanhaitun lanhaitun 5619 10月 18 14:53 .canna
   -rw-r–r– 1 lanhaitun lanhaitun 438 10月 18 14:53 .emacs
   -rw-r–r– 1 lanhaitun lanhaitun 120 10月 18 14:53 .gtkrc
   drwxr-xr-x 3 lanhaitun lanhaitun 4096 10月 18 14:53 .kde
   -rw-r–r– 1 lanhaitun lanhaitun 658 10月 18 14:53 .zshrc
  看來已經實現了;
  但這樣還是不夠的,因爲/home/lanhaitun/的目錄權限可能會過於公開;
  drwxr-xr-x 3 lanhaitun lanhaitun 4096 10月 18 14:53 /home/lanhaitun/
  我們看到 /home/lanhaitun/ 目錄的權限爲 drwxr-xr-x ,也就是同組用戶和其它用戶組所能查看,爲了保密,我們有理由把新增用戶家目錄的權限設置爲只有其自己可讀可寫可執行;於是… …
  [root@localhost ~]# chmod 700 /home/lanhaitun/
   [root@localhost ~]# ls -ld /home/lanhaitun/
   drwx—— 3 lanhaitun lanhaitun 4096 10月 18 14:53 /home/lanhaitun/
  我們用其它用戶,當然得把具有超級權限的root用戶除外;比如我以beinan用戶來查看lanhaitun的家目錄會得到如下信息;
  [beinan@localhost ~]$ ls -la /home/lanhaitun/
   ls: /home/lanhaitun/: 權限不夠
  如此看來,lanhaitun用戶的家目錄是安全的 
icon_wink.gifuploading.4e448015.gif轉存失敗重新上傳取消

  5)設置新增用戶的密碼;
  以上各步驟都就序了,我們得爲新增用戶設置密碼了;要通過passwd 命令來生成;這個沒有辦法通過修改文件解決;
  passwd 的用法:
  passwd 用戶
  [root@localhost ~]# passwd lanhaitun
   Changing password for user lanhaitun.
   New UNIX password: 注:輸入您的密碼
   Retype new UNIX password: 再輸入一次
   passwd: all authentication tokens updated successfully. 注:設置密碼成功
  6)測試添增用戶是否成功;
  您可以用新增用戶登錄測試,也可以通過su 來切換用戶測試;
  [beinan@localhost ~]$ su lanhaitun
   Password:
   [lanhaitun@localhost beinan]$ cd ~
   [lanhaitun@localhost ~]$ pwd
   /home/lanhaitun
   [lanhaitun@localhost ~]$ ls -la
   總用量 52
   drwx—— 3 lanhaitun lanhaitun 4096 10月 18 15:15 .
   drwxr-xr-x 10 root root 4096 10月 18 14:53 ..
   -rw-r–r– 1 lanhaitun lanhaitun 24 10月 18 14:53 .bash_logout
   -rw-r–r– 1 lanhaitun lanhaitun 191 10月 18 14:53 .bash_profile
   -rw-r–r– 1 lanhaitun lanhaitun 124 10月 18 14:53 .bashrc
   -rw-r–r– 1 lanhaitun lanhaitun 5619 10月 18 14:53 .canna
   -rw-r–r– 1 lanhaitun lanhaitun 438 10月 18 14:53 .emacs
   -rw-r–r– 1 lanhaitun lanhaitun 120 10月 18 14:53 .gtkrc
   drwxr-xr-x 3 lanhaitun lanhaitun 4096 10月 18 14:53 .kde
   -rw——- 1 lanhaitun lanhaitun 66 10月 18 15:15 .xauthOhEoTk
   -rw-r–r– 1 lanhaitun lanhaitun 658 10月 18 14:53 .zshrc
   [lanhaitun@localhost ~]$ mkdir testdir
   [lanhaitun@localhost ~]$ ls -lh
   總用量 4.0K
   drwxrwxr-x 2 lanhaitun lanhaitun 4.0K 10月 18 15:16 testdir
  通過上面一系列動作,我們會發現所創建的lanhaitun用戶已經成功;
  2、通過修改用戶(User)和用戶組(Group)配置文件的辦法來修改用戶或用戶組;
  我們可以修改/etc/passwd 和/etc/group 來達到修改用戶和用戶所歸屬的組,這個過程和添加新用戶時差不多;比如我想修改lanhaitun的用戶名全稱、公司以及電話等信息;我們可以修改/etc/passwd 實現;
  1)修改用戶信息;
  lanhaitun:x:508:508::/home/lanhaitun:/bin/bash 注:這是初始記錄;
  我們可以修改爲
  lanhaitun:x:508:508:lanhaitun wu,Office Dalian,13000000000:/home/lanhaitun:/bin/bash
  當然我們還可以修改用戶的bash 類型,家目錄等,當然如果修改家目錄,還得進行建家目錄、屬主和權限的操作,這和前面添加用戶的辦法在程序上有些是相同的;
  修改完成後,我們要進行pwconv 同步,通過finger 來查看用戶的信息等;
  [root@localhost lanhaitun]# pwconv
   [root@localhost lanhaitun]# finger lanhaitun
   Login: lanhaitun Name: lanhaitun wu
   Directory: /home/lanhaitun Shell: /bin/bash
   Office: Office Dalian, +1-300-000-0000
   Never logged in.
   No mail.
   No Plan.
  2)修改用戶所歸屬的組,可以通過/etc/group 修改實現;
  當然修改用戶和用戶組,不僅能通過修改配置文件來實現,還能過過 usermod 及chfn來實現;我將在以後的文檔中寫一寫,也比較簡單;您可以通過man來查看用法;在這裏我們先講一講如何通過修改配置文件來達到目的;
  如果我們想把lanhaitun 這個用戶歸屬到root用戶組,所以我們還能修改/etc/group 的辦法來達到目的;找到/etc/group 中的root開頭的一行,按其規劃加入lanhaitun;
  root:x:0:root,lanhaitun
  如果不明白,看前面/etc/group的解釋,謝謝;
  然後執行 grpconv 命令來同步/etc/group 和/etc/gshadow兩個文件的內容;
  [root@localhost ~]# grpconv
  查看lanhaitun歸屬組的信息;
  [root@localhost ~]# id lanhaitun
   uid=508(lanhaitun) gid=508(lanhaitun) groups=508(lanhaitun),0(root)
  3)刪除用戶及用戶組的辦法;
  這個比較簡單,我們可以通過刪除/etc/passwd 和/etc/group 相應的用戶和用戶組記錄就能達到目的,也能過過userdel 和groupdel 來實現對用戶及用戶組的刪除;
  如果是通過修改用戶和用戶組配置文件的辦法來刪除用戶,就是刪除相應的記錄就行了,如果不想保留其家目錄,刪除就是了。
  [root@localhost ~]# userdel lanhaitun
   [root@localhost ~]# userdel -r lanhaitun
  注:可以用userdel 來刪除lanhaitun 用戶,我們看到第二個例子中多了一個參數-r
,第一個例子是說只刪除lanhaitun用戶,其家目錄和mail等仍會保存;加上-r
參數,是刪除家目錄及mail等;所以要小心操作;用userdel 刪除用戶的同時,也會把其用戶組刪除;我們可以通過/etc/passwd
和/etc/group 的內容變化來查看;

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章