綠色資源網(wǎng):您身邊最放心的安全下載站! 最新軟件|熱門排行|軟件分類|軟件專題|論壇轉帖|廠商大全

綠色資源網(wǎng)

技術教程
您的位置:首頁操作系統(tǒng)linux → linux使用者帳號添加、修改、刪除等管理詳解

linux使用者帳號添加、修改、刪除等管理詳解

我要評論 2012/09/18 17:03:34 來源:綠色資源網(wǎng) 編輯:m.sonlywya.cn [ ] 評論:0 點擊:189次

Linux, 這個詞我敢說100%的coder都聽說過, 如果答案是否定的.那說明這篇文章并不適合您!

其實Linux一直是眾多coder的弱項, 包括筆者也是個菜鳥級, 所以最近嘗試著從基礎學起, 寫了幾年的代碼終于明白了萬丈高樓平地起的道理. 基礎不好是很難進步的.

今天我們來了解一下Linux的使用者帳號相關知識, 那就不得不說/etc/passwd, /etc/chadow文件了.

/etc/passwd (帳號重要參數(shù)文件), 來cat /etc/passwd看一下.

乍看一下覺得這東西很深奧, 于是就放棄了. 那你就完蛋了. 這不是一個好習慣 , 其實很多事情只是看似很難, 如果你靜下心來去了解它, 你會發(fā)現(xiàn)他真的能走進你的心扉! 呵呵.

你有沒有發(fā)現(xiàn)它是有規(guī)律的, 有很多行, 并且每行的用:分隔成了幾字段, 那到底是幾個字段呢, 是7個.

其實這個文件的每一行都代表一個帳號(用戶), 有多少行就說明系統(tǒng)中有多少個用戶, 不由得產生了一個問題, 那7個字段又都是什么意思呢? 接下來我們來解釋一下這7個字段

第一字段  帳戶名稱. 如root(超級管理員)

第二字段  X (先以為他是就X好吧)

第三字段  UID(用戶的ID, 這東西對于系統(tǒng)來說非常重要, 有人問了不是有用戶名嗎為什么還有個狗P"UID", 其實對于系統(tǒng)來說他只認識這個UID, 用戶名只是提供給我們看的, 方便好記, 僅此而已)

第四字段  GID(群組的ID, 這東西對于系統(tǒng)來說非常重要, 有人問了不是有群組名嗎為什么....此處省略十幾字, 意思同上, 其實也沒省下.呵呵)

第五字段  用戶備注信息說明列 (就是帳號的備注信息,比如這個帳號干什么用的.為什么建這帳號什么地)

第六字段  用戶的HOME目錄; 如:/home/www

第七字段  Shell  (用戶登錄后取得的shell環(huán)境, 一般默認為/bin/bash, 注意:如果你想建立一個帳號但卻又不想讓他登錄到系統(tǒng),那這里就起到作用了. 你只需把這欄設置成/sbin/nologin, 細心的朋友可能注意到了/etc/passwd 文件下很多的系統(tǒng)用戶這欄都是/sbin/nologin)
 

/etc/shadow

為什么要說到這個文件呢, 這就需要從我們使用帳號登錄系統(tǒng)說起了,  其實我們的登錄流程是這樣的:

以下我們以用戶echo來舉例.

1.根據(jù)輸入的用戶名去/etc/passwd中尋找echo這個用戶, 如果用戶不存在直接登錄失敗. 否則就會拿到UID, GID, 以及這個用戶擁有的SHELL環(huán)境等.

2.每二步在則是來到/etc/shadow文件中核對用戶輸入的密碼是否與echo這個用戶名密碼相同. 如果相同才能登錄系統(tǒng).

還記得/etc/passwd 中的每個字段"X"嗎. 這個X處在早以前是用來存放用戶密碼的, 后來因為安全性的問題把用戶的密碼提到了/etc/shadow中. 所以/etc/shadow這個文件的主要作用就是存放用戶的口令, 用戶登錄系統(tǒng)時來這里驗證. /etc/shadow文件與/etc/passwd文件格式幾乎是一樣的, 唯一的區(qū)別是/etc/shadow把每一行分為9個字段.

第一字段  帳戶名稱 (與/etc/passwd保持一致)

第二字段  帳戶口令(即密碼, 加密過的所以是一串字符)

第三字段  最近一次修改的日期  

每四字段  密碼多久之內不能被修改, 以天為單位

第五字段  口令需要變更的天數(shù) (出于安全考慮, 可以這樣設置,強制用戶多久換一次密碼)

第六字段  口令變更前的提醒天數(shù)(根據(jù)第五個字段, 前多少天提醒用戶去修改口令)

第七字段  口令過期后的寬限時間(即第五字段過期后還可以寬限的天數(shù), 過了這個天數(shù)帳號就會默認為失效了)

第八字段  帳號失效日期(帳號如果超出這個設置后就會失效, 通過用在收費服務中, 或者我們的后臺任務當時, 任務完成帳號失效等)

第九字段  保留字段, 目前無實際應用

用戶的相關文件說完了. 你是否明白了. 如果你明白了, 接下來我們來看看操作帳號的幾個相關命令:

1.useadd(添加)

格式:useradd [-u UID] [-g 初始化群組] [-G 次要群組] [-mM] [-c 帳號說明欄] [-d 家目錄絕對路徑] [-s shell] 帳號名稱

選項與參數(shù)

-u  指定UID, 可以省略該選項, 系統(tǒng)會自動分配一個UID

-g  初始化群組, 不指定默認創(chuàng)建新的群組, 群組名與帳號名稱相同

-G  次要的群組, 可以指定該帳號的所屬的其它群組,多個用,分開, 如-G g1,g2,g3

-c  帳號的備注信息

-m  創(chuàng)建-d后指定的目錄, 此為默認項

-M  不創(chuàng)建-d后指定的目錄

-d  該用戶的home目錄

-s  shell腳本環(huán)境, 默認為/bin/bash

如題: 我們創(chuàng)建一個test用戶,并且創(chuàng)建家目錄為/home/test, 設置次要群組為apache, 帳號備注為this is apache user

useradd -c'this is apache user' -Gapache -d'/home/test' -m test

2.usermod(修改)

選項與參數(shù),  大部分參數(shù)與useradd是一樣的. 這里我只簡單介紹向個附加的參數(shù)

-l   后接新的帳號名稱, 意思是修改帳號名稱

-L  暫時凍結該帳號, 讓帳號無法登錄, 修改/etc/shadow的第二欄為!, 即用戶口令欄,

-U  與-L相反, 解凍帳號, 使帳號恢復正常使用

用法與useradd相同

3.userdel(刪除)

選項與參數(shù)

-r  連同用戶的HOME目錄一同刪除

如userdel -r test 將刪除test用戶, 并且將/home目錄下的test目錄一并刪除.

linux下的命令一般都會有好多參數(shù), 想記住是非常困難的. 這里也只是簡單的介紹了一些常用的. 詳細的還需要我們用到的時候去查看, 比如可以用man usermod 來查看該命令的相關參數(shù)與說明.  學習不是一個簡單的事情, 擺正心態(tài),日積月累,勤加練習相信定有所獲.

關鍵詞:linux

閱讀本文后您有什么感想? 已有 人給出評價!

  • 0 歡迎喜歡
  • 0 白癡
  • 0 拜托
  • 0 哇
  • 0 加油
  • 0 鄙視