Linux用戶管理<一>
一、在Linux中怎樣理解用戶?
1、用戶就是系統中使用者的身份,在Linux系統中用戶就是幾個字符串+若幹個系統配置文件。
二、存儲用戶信息的幾個重要目錄
1》/etc/passwd #用來存放用戶信息
可以用命令man 5 /etc/passwd來查看每一列的意思,比如上面的圖片
Loveyu:用戶的名字
X:用戶的密碼,現在存放在/etc/shadow中
500:用戶的ID
501:用戶所屬組的ID
User lovyu:用戶的描述語言
/home/loveyu:用戶的家目錄
/bin/bash:用戶執行命令是用到的shell
2》/etc/graoup #用來存放組的信息
3》/etc/shadow #用來存放用戶密碼信息的文件
mysql:用戶的名稱
!!:將用戶的密碼經過加密顯示在這裏,由於mysql用戶沒有密碼,所以用兩個!!代替
17307:代表用戶的最後一次修改密碼到現在的天數,默認是從1970-1-1日開始
0:代表修改密碼間隔最短時間,修改一次密碼後,下次修改就要等這個時間
99999:表示修改密碼間隔的最長時間,到達這個時間就要修改密碼。
7:代表警告時間
::
::密碼的有效天數,就是17307-這個時間,就是用戶的有效時間
4》/home/username #用戶的家目錄
5》/etc/
6》/etc/skel #用戶的骨架文件,當在/etc/skel目錄下創建的文件會在新創建用戶的家目錄下。
三、用戶管理
1、id命令 id [OPTION]... [USERNAME]
1》id - printreal and effective user and group IDs
#解釋:打印真實有效的用戶組ID和用戶ID。
2》參數(具體操作命令請看下文)
-u #用戶的ID
-g #用戶初始組的ID
-G #包含用戶所有的組的ID
-n #顯示名稱,而不再是ID數字
-a #顯示所有信息
2、useradd命令 useradd [options] LOGIN
1》useradd -create a new user or update default new user information
#解釋:創建一個新用戶或者更新新用戶的默認信息
2》參數
-u #指定用戶的UID
-g #指定用戶初始組信息
-G #指定附加組(這個組必須存在),換句話說,就是一個用戶可以屬於兩個以上的組
-c #用來指定/etc/passwd中用戶的說明
根據上文中用戶說明的位置,看到-c可以修改用戶說明
-d #指定用戶的家目錄
默認家目錄為/home/username
-s #指定用戶所使用的shell,/etc/shells記錄了用戶能使用的shell名稱
默認處理用戶程序的shell為/bin/bash
3、userdel命令 userdel[options] LOGIN
1》userdel -delete a user account and related files
#解釋:刪除用戶的賬號和與用戶有關的文件
2》參數
-r #刪除和用戶有關的所有文件
-f #強制刪除
如果刪除用戶是不加參數r,則這個用戶的家目錄和郵件目錄會已知保存在服務器上,必 須得要用戶用rm刪除
4、usermod命令 usermod [options] LOGIN
1》usermod -modify a user account
#解釋:修改用戶的賬號
2》參數
love用戶原來的信息
-l #更改用戶的名稱
將用戶在/etc/passwd中的用戶名和用戶對應家目錄所屬的用戶名稱修改,但是家目錄並沒有過修改
-u #更改UID
修改用戶的UID為888
-g #修改用戶的GID
將用戶的所屬的組的GID修改為882,註意用戶所屬的組必須事先存在,不然系統會報錯,沒有這個組
-G #更改用戶的附加組
註意:G參數知識修改用戶附屬的組,並不能添加,註意看執行usermod –G 801 linux的時候在/etc/group文件總的sa組中的ID後面多了一個linux,而在此執行下一條修改命令時:sa組ID後面的linux變到了ID為811的love後面
-aG #添加用戶的附加組
這張圖片可以看出在/etc/group中的ID為801和811的後面都有了linux,而ID為811的love組後面的linux並沒有消失
-c #修改用戶的說明,和useradd命令相同
-d #更改指定的用戶家目錄
註意只修改了/etc/paswd中記錄的love用戶的家目錄,真實/home/love並沒有修改
-md #更改家目錄指定及家目錄名稱
註意:如果你在前面用-m 修改過/etc/passwd中記錄的家目錄,一定要修改成與之對應的家目錄,如love的家目錄必須改為/home/love,不然會提示你沒有修改。如下圖所示
-s #更改用戶的shell
修改用戶的shell,和useradd命令使用方法相同
-L #凍結賬號
將用戶的登錄鎖住,可以從圖片上看到在/etc/shadow文件中的密碼項出現了兩個!,與passwd不同的是,passed –l會出現兩個!
-U #解鎖凍結賬號
將用戶的登錄鎖撤銷,對應的/etc/shadow密碼的那塊的!會消失。
5、chage 命令 chage [options] [LOGIN]
1》chage -change user password expiry information
#解釋:修改用戶的密碼到期信息
2》參數
-d #更改用戶的最後一次修改密碼的時間,如果修改成0,用戶登錄後必須修改自己的密碼,默認是從1970-1-1日開始
-m #修改密碼的最短有效期如果為1,則修改兩次密碼的時間間隔必須大於1天
-M #修改密碼的最長有效期,到達這個時間後用戶必須修改密碼
-W #警告期
-I #用戶的非活躍天數
-E #賬號到期日期 (時間格式”YYYY-MM-DD”)
這個/etc/shdow中每一列可以用man 5 /etc/shadow 查看他的意思,註意看他的到期日期應該是從1970-1-1日開始算起
本文出自 “13122323” 博客,請務必保留此出處http://13132323.blog.51cto.com/13122323/1948728
Linux用戶管理<一>