linux系統使用者以及使用者組管理

來源:互聯網
上載者:User

標籤:http   使用   strong   os   檔案   io   

使用者組管理

1.   groupadd

功能說明:建立群組。
語 法:groupadd [-g gid [-o]] [-r] [-f] [群組名稱]
補充說明:groupadd 可指定群組名稱來建立新的群組帳號.需要時可從系統中取得新群 組值。

參 數:
-g <群組識別碼>  設定欲使用的群組識別碼,group’s id。

執行個體

不加-g 則按照系統預設的gid建立組,跟使用者一樣,gid也是從500開始的

-g選項可以自訂gid

 

2. groupdel

功能說明:刪除群組。
語 法:groupdel [群組名稱]
補充說明:需要從系統上刪除群組時,可用groupdel指令來完成這項工作。倘若該群組中仍包括某些使用者,則必須先刪除這些使用者後,方能刪除群組。

執行個體:

沒有特殊選項。

 

3. groupmod

功能說明:更改群組識別碼或名稱。
語 法:groupmod [-g <群組識別碼> <-o>][-n <新群組名稱>][群組名稱]
補充說明:需要更改群組的識別碼或名稱時,可用groupmod指令來完成這項工作。
參 數:
-g <群組識別碼>  設定欲使用的群組識別碼。 
-o  重複使用群組識別碼。 
-n <新群組名稱>  設定欲使用的群組名稱。

 

使用者管理

1.  useradd

功能說明:建立使用者帳號。
語 法:useradd [-mMnr][-c <備忘>][-d <登入目錄>][-e <有效期間限>][-f <緩衝天數>][-g <群組>][-G <群組>][-s <shell>][-u <uid>][使用者帳號] 或 useradd -D [-b][-e <有效期間限>][-f <緩衝天數>][-g <群組>][-G <群組>][-s <shell>]
補充說明:useradd可用來建立使用者帳號。帳號建好之後,再用passwd設定帳號的密碼.而可用userdel刪除帳號。使用useradd指令所建立的帳號,實際上是儲存在/etc/passwd文字檔中。
參 數:
-c<備忘>  加上備忘文字。備忘文字會儲存在passwd的備忘欄位中。  
-d<登入目錄>  指定使用者登入時的啟始目錄。 
-D  變更預設值. 
-e<有效期間限>  指定帳號的有效期間限。 
-f<緩衝天數>  指定在密碼到期後多少天即關閉該帳號。 
-g<群組>  指定使用者所屬的群組。 
-G<群組>  指定使用者所屬的附加群組。 
-m  自動建立使用者的登入目錄。 
-M  不要自動建立使用者的登入目錄。 
-n  取消建立以使用者名稱稱為名的群組. 
-r  建立系統帳號。 
-s<shell>   指定使用者登入後所使用的shell。 
-u<uid>  指定使用者ID。

實    例:

你會發現,建立test11時,加上了-M選項後,在/etc/passwd檔案中test11那行的第六欄位依然有/home/test11,可是ls查看該目錄時,會提示該目錄不存在。

-M選項的作用就是不建立使用者的家目錄。

2.  userdel

功能說明:刪除使用者帳號。
語 法:userdel [-r][使用者帳號]
補充說明:userdel可刪除使用者帳號與相關的檔案。若不加參數,則僅刪除使用者帳號,而不刪除相關檔案。
參 數:
  -f  刪除使用者登入目錄以及目錄中所有檔案。

執行個體:

-r 選項的作用是刪除使用者時,連同使用者的家目錄一起刪除。

3.  usermod

功能說明:修改使用者帳號。
語 法:usermod [-LU][-c <備忘>][-d <登入目錄>][-e <有效期間限>][-f <緩衝天數>][-g <群組>][-G <群組>][-l <帳號名稱>][-s <shell>][-u <uid>][使用者帳號]
補充說明:usermod可用來修改使用者帳號的各項設定。
參 數:
-c<備忘>  修改使用者帳號的備忘文字。 
-d登入目錄>  修改使用者登入時的目錄。 
-e<有效期間限>  修改帳號的有效期間限。 
-f<緩衝天數>  修改在密碼到期後多少天即關閉該帳號。 
-g<群組>  修改使用者所屬的群組。 
-G<群組>  修改使用者所屬的附加群組。 
-l<帳號名稱>  修改使用者帳號名稱。 
-L  鎖定使用者密碼,使密碼無效。 
-s<shell>  修改使用者登入後所使用的shell。 
-u<uid>  修改使用者ID。 
-U  解除密碼鎖定。

 

 

其它相關命令

1.  passwd(password)

功能說明:設定密碼。
語 法:passwd [-dklS][-u <-f>][使用者名稱稱]
補充說明:passwd指令讓使用者可以更改自己的密碼,而系統管理者則能用它管理系統使用者的密碼。只有管理者可以指定使用者名稱稱,一般使用者只能變更自己的密碼。
參 數:
  -d  刪除密碼。本參數僅有系統管理者才能使用。 
  -f  強制執行。 
  -k  設定只有在密碼到期失效後,方能更新。 
  -l  鎖住密碼。 
  -s  列出密碼的相關資訊。本參數僅有系統管理者才能使用。 
  -u  解開已上鎖的帳號。

 

2.  su(super user)

功能說明:變更使用者身份。
語 法:su [-flmp][--help][--version][-][-c <指令>][-s <shell>][使用者帳號]
補充說明:su可讓使用者暫時變更登入的身份。變更時須輸入所要變更的使用者帳號與密碼。
參 數:
-c<指令>或--command=<指令>  執行完指定的指令後,即恢複原來的身份。 
-f或--fast  適用於csh與tsch,使shell不用去讀取開機檔案。 
-.-l或--login  改變身份時,也同時變更工作目錄,以及HOME,SHELL,USER,LOGNAME。此外,也會變更PATH變數。  
-m,-p或--preserve-environment  變更身份時,不要變更環境變數。 
-s<shell>或--shell=<shell>  指定要執行的shell。 
--help  顯示協助。 
--version  顯示版本資訊。 
[使用者帳號]  指定要變更的使用者。若不指定此參數,則預設變更為root

 

 

 

3.  sudo

功能說明:以其他身份來執行指令。
語 法:sudo [-bhHpV][-s <shell>][-u <使用者>][指令] 或 sudo [-klv]
補充說明:sudo可讓使用者以其他的身份來執行指定的指令,預設的身份為root。在/etc/sudoers中設定了可執行sudo指令的使用者。若其未經授權的使用者企圖使用sudo,則會發出警告的郵件給管理員。使用者使用sudo時,必須先輸入密碼,之後有5分鐘的有效期間限,超到期限則必須重新輸入密碼。  
參 數:
-b  在後台執行指令。 
-h  顯示協助。 
-H  將HOME環境變數設為新身份的HOME環境變數。 
-k  結束密碼的有效期間限,也就是下次再執行sudo時便需要輸入密碼。 
-l  列出目前使用者可執行與無法執行的指令。 
-p  改變詢問密碼的提示符號。 
-s<shell>  執行指定的shell。 
-u<使用者>  以指定的使用者作為新的身份。若不加上此參數,則預設以root作為新的身份。 
-v  延長密碼有效期間限5分鐘。 
-V  顯示版本資訊。

 

認識 /etc/passwd /etc/shadow

這兩個檔案可以說是linux系統中最重要的檔案之一。如果沒有這兩個檔案或者這兩個檔案出問題,則你是無法正常登入linux系統的。

/etc/passwd由’:’分割成7個欄位,每個欄位的具體含義是:

1)使用者名稱(如第一行中的root就是使用者名稱),代表使用者帳號的字串。使用者名稱字元可以是大小寫字母、數字、減號(不能出現在首位)、點以及底線,其他字元不合法。雖然使用者名稱中可以出現點,但不建議使用,尤其是首位為點時,另外減號也不建議使用,因為容易造成混淆。

2)存放的就是該帳號的口令,為什麼是’x’呢?早期的unix系統口令確實是存放在這裡,但基於安全因素,後來就將其存放到/etc/shadow中了,在這裡只用一個’x’代替。

3)這個數字代表使用者標識號,也叫做uid。系統識別使用者身份就是通過這個數字來的,0就是root,也就是說你可以修改test使用者的uid為0,那麼系統會認為root和test為同一個賬戶。通常uid的取值範圍是0~65535,0是超級使用者(root)的標識號,1~499由系統保留,作為管理帳號,普通使用者的標識號從500開始,如果我們自訂建立一個普通使用者,你會看到該賬戶的標識號是大於或等於500的。

4)表示組標識號,也叫做gid。這個欄位對應著/etc/group 中的一條記錄,其實/etc/group和/etc/passwd基本上類似。

5)注釋說明,該欄位沒有實際意義,通常記錄該使用者的一些屬性,例如姓名、電話、地址等等。不過,當你使用finger的功能時就會顯示這些資訊的(稍後做介紹)。

6)使用者的家目錄,當使用者登入時就處在這個目錄下。root的家目錄是/root,普通使用者的家目錄則為/home/username,這個欄位是可以自訂的,比如你建立一個普通使用者test1,要想讓test1的家目錄在/data目錄下,只要修改/etc/passwd檔案中test1那行中的該欄位為/data即可。

7)shell,使用者登入後要啟動一個進程,用來將使用者下達的指令傳給核心,這就是shell。Linux的shell有很多種sh, csh, ksh, tcsh, bash等,而Redhat/CentOS的shell就是bash。查看/etc/passwd檔案,該欄位中除了/bin/bash外還有/sbin/nologin比較多,它表示不允許該帳號登入。如果你想建立一個帳號不讓他登入,那麼就可以把該欄位改成/sbin/nologin,預設是/bin/bash。

再來看看/etc/shadow這個檔案,和/etc/passwd類似,用”:”分割成9個欄位。

1)使用者名稱,跟/etc/passwd對應。

2)使用者密碼,這個才是該帳號的真正的密碼,不過這個密碼已經加密過了,但是有些駭客還是能夠解密的。所以為了安全,該檔案屬性設定為600,只允許root讀寫。

3)上次更改密碼的日期,這個數字是這樣計算得來的,距離1970年1月1日到上次更改密碼的日期,例如上次更改密碼的日期為2012年1月1日,則這個值就是365*(2012-1970)+1=15331。

4)要過多少天才可以更改密碼,預設是0,即不限制。

5)密碼多少天后到期。即在多少天內必須更改密碼,例如這裡設定成30,則30天內必須更改一次密碼,否則將不能登入系統,預設是99999,可以理解為永遠不需要改。

6)密碼到期前的警告期限,若這個值設定成7,則表示當7天后密碼到期時,系統就發出警告告訴使用者,提醒使用者他的密碼將在7天后到期。

7)帳號失效期限。你可以這樣理解,如果設定這個值為3,則表示:密碼已經到期,然而使用者並沒有在到期前修改密碼,那麼再過3天,則這個帳號就失效了,即鎖定了。

8)帳號的生命週期,跟第三段一樣,是按距離1970年1月1日多少天算的。它表示的含義是,帳號在這個日期前可以使用,到期後帳號作廢。

9)作為保留用的,沒有什麼意義。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.