【小白幾分鐘】幾分鐘了解Linux系統(tǒng)用戶和用戶組的管理

Linux用戶和用戶組

??Linux系統(tǒng)是一個(gè)多用戶多任務(wù)的分時(shí)操作系統(tǒng),任何一個(gè)要使用系統(tǒng)資源的用戶,都必須首先向系統(tǒng)管理員申請(qǐng)一個(gè)賬號(hào),然后以這個(gè)賬號(hào)的身份進(jìn)入系統(tǒng)。
??用戶的賬號(hào)一方面可以幫助系統(tǒng)管理員對(duì)使用系統(tǒng)的用戶進(jìn)行跟蹤,并控制他們對(duì)系統(tǒng)資源的訪問;另一方面也可以幫助用戶組織文件,并為用戶提供安全性保護(hù)。
??每個(gè)用戶賬號(hào)都擁有一個(gè)惟一的用戶名和各自的密碼。
??用戶在登錄時(shí)鍵入正確的用戶名和密碼后,就能夠進(jìn)入系統(tǒng)和自己的主目錄。

?
實(shí)現(xiàn)用戶賬號(hào)的管理,要完成的工作主要有如下幾個(gè)方面:

  • 用戶賬號(hào)的添加、刪除與修改。
  • 用戶密碼的管理。
  • 用戶組的管理。

相關(guān)三個(gè)重要文件(均可使用vim進(jìn)行查看編輯)

  • /etc/passwd :存儲(chǔ)用戶的關(guān)鍵信息
root:x:0:0:root:/root:/bin/bash

該行由7段組成,每段間以:分隔,每段含義如下

用戶名 用戶密碼 用戶ID 組ID 備注 家目錄 啟動(dòng)shell
root x 0 0 root /root /bin/bash

詳細(xì)說明:
①用戶密碼均顯示為“x”,實(shí)際密碼加密后將加密值儲(chǔ)存在/etc/shadow
②用戶ID必須為非負(fù)數(shù),0為root用戶,1499為系統(tǒng)保留用戶,50065535為普通用戶
③備注為一行不含空格的字符串,用于簡(jiǎn)述用戶信息
④啟動(dòng)shell為從該用戶登錄系統(tǒng)后所使用的shell程序,常用的shell有sh csh ksh tcsh bash等等,默認(rèn)情況下為/bin/sh
?

  • /etc/group:存儲(chǔ)用戶組的關(guān)鍵信息
root:x:0:

該行由4段組成,每一段間以:區(qū)分,每段含義如下

組名稱 組密碼 組ID 組成員
root x 0

詳細(xì)說明:
①組密碼均顯示為“x”,和用戶密碼一樣加密儲(chǔ)存在/etc/gshadow,一般情況下不會(huì)給用戶組設(shè)置密碼
②組成員如果顯示空缺則該組只有一個(gè)用戶且用戶名與組名相同,如果該組有多個(gè)用戶,則該字段顯示所有的用戶名,中間以,隔開
?

  • /etc/shadow:存儲(chǔ)用戶密碼的關(guān)鍵信息
root:$id$salt$encrtpted:17051:0:99999:7:::

該行由9段組成,每一段間以:區(qū)分,每段含義如下

用戶名 加密值 最近密碼修改時(shí)間 密碼最短使用天數(shù) 密碼最長(zhǎng)使用天數(shù) n天前提示密碼即將過期 密碼過期后寬限天數(shù) 賬號(hào)失效時(shí)間 保留字段
root $id$salt$encrtpted 17051 0 99999 7

詳細(xì)說明:
①加密值顯示!表示被鎖定,顯示!!表示沒有密碼
②最近密碼修改時(shí)間,是從1970年1月1日開始計(jì)算一共經(jīng)歷了多少天
③最短密碼使用天數(shù)設(shè)置為0,表示無限制
④最長(zhǎng)密碼使用天使設(shè)置為99999表示無限制
⑤密碼過期后寬限天數(shù)設(shè)置為0表示過期立即鎖定,設(shè)置為-1表示永不鎖定

二、用戶賬號(hào)管理

  • useradd
    功能描述:添加用戶
    常用語法:useradd [選項(xiàng)] [用戶名]
    常用選項(xiàng):
    ?????-g?指定用戶組
    ?????-G?指定用戶附加組
    ?????-u?指定用戶的用戶編號(hào)
    示例:
[root@vultr ~]# useradd test1          //不加任何選項(xiàng)直接添加用戶“test1”
[root@vultr ~]# ls /home/             //驗(yàn)證家目錄下是否有“test1”,有表示創(chuàng)建成功
test1
[root@vultr ~]# tail -1 /etc/passwd  //驗(yàn)證“passwd”文件最后是否有“test1”用戶信息,有表示創(chuàng)建成功
test1:x:1002:1002::/home/test1:/bin/bash

[root@vultr ~]# useradd -g 1002 -G 1001 -u 888 test2    //添加用戶“test2”指定用戶組為“1002”,附加用戶組為“1001”,用戶ID為“888”
[root@vultr ~]# tail -1 /etc/passwd     //查看“/etc/passwd”有“test2”用戶信息,并且指定用戶ID和用戶組成功
test2:x:888:1002::/home/test2:/bin/bash
[root@vultr ~]# tail -2 /etc/group     //在“/etc/passwd”文件夾下看到,“test2”用戶屬于“1001”附加組中
mysql:x:1001:test2
test1:x:1002:

?

  • usermod
    功能描述:修改用戶
    常用語法:usermod [選項(xiàng)] [用戶名]
    常用選項(xiàng):
    ?????-g?修改用戶組
    ?????-G?修改用戶附加組
    ?????-u?修改用戶的用戶編號(hào)
    ?????-l?修改用戶名
    示例:
[root@vultr home]# useradd test1             //添加一個(gè)“test1”
[root@vultr home]# tail -1 /etc/passwd      
test1:x:1002:1002::/home/test1:/bin/bash   //“test1”用戶組ID為“1002”
[root@vultr home]# usermod -g 1000 -G 1001 test1    //修改“test1”的用戶組ID為“1000”,附加組ID為“1001”
[root@vultr home]# tail -1 /etc/passwd
test1:x:1002:1000::/home/test1:/bin/bash   //用戶組ID已修改
[root@vultr home]# tail -3 /etc/group
www:x:1000:
mysql:x:1001:test1            //“1001”附加組成員有用戶“test1”
test1:x:1002:

[root@vultr home]# usermod -l baba test1     //修改“test1”的用戶名為“baba”
[root@vultr home]# tail -1 /etc/passwd
baba:x:1002:1000::/home/test1:/bin/bash   //修改成功

?

  • passwd
    功能描述:修改密碼
    常用語法:passwd [用戶名]
[root@vultr ~]# tail -1 /etc/shadow              //查詢“shadow”文件發(fā)現(xiàn)“test1”用戶密碼字段顯示“!!”表示沒有密碼
test1:!!:17722:0:99999:7:::
[root@vultr ~]# passwd test1                     //給“test1”用戶修改/新增密碼
Changing password for user test1.
New password:                                    //輸入新密碼
Retype new password:                            //再次輸入新密碼
passwd: all authentication tokens updated successfully.  //提示密碼設(shè)置成功
[root@vultr ~]# tail -1 /etc/shadow            //此時(shí)再次查詢“shadow”文件,發(fā)現(xiàn)有了加密值
test1:$1$pMEfQ0PW$tKUwcMa50ZGeoCKjx7gdB1:17723:0:99999:7:::

?

  • su
    功能描述:用于切換用戶登錄
    常用語法:su [用戶名](若不寫用戶名則表示切換為管理員)
    示例:
[root@vultr ~]# su test1             //切換到test1用戶
[test1@vultr root]$ su               //切換成功,并切換回root用戶
Password:                           //普通用戶切換到root用戶時(shí)要輸入root用戶密碼
[root@vultr ~]#                    //成功切換回root用戶

?

  • userdel
    功能描述:刪除用戶
    常用語法:userdel [選項(xiàng)] [用戶名]
    常用選項(xiàng):
    ?????-r?刪除同時(shí)刪除其家目錄
[root@vultr ~]# userdel -r test1            //刪除“test1”用戶及其家目錄
[root@vultr ~]
[root@vultr ~]# tail -3 /etc/passwd       //查詢“passwd”文件,“test1”已被刪除
chrony:x:998:996::/var/lib/chrony:/sbin/nologin
www:x:1000:1000::/home/www:/sbin/nologin
mysql:x:1001:1001::/home/mysql:/sbin/nologin:
[root@vultr ~]# ls /home/                    //查詢家目錄,沒有“test1”
[root@vultr ~]# 

?

二、用戶賬號(hào)管理

  • groupadd
    功能描述:添加用戶組
    常用語法:groupadd [選項(xiàng)] [用戶組名]
    常用選項(xiàng):
    ?????-g?指定用戶組ID,如果不指定用戶組ID則默認(rèn)從500后遞增

示例:

[root@vultr ~]# groupadd -g 888 baba         //創(chuàng)建用戶組“baba”,指定用戶組ID為“888”
[root@vultr ~]# tail -1 /etc/group          //查詢“/etc/group”表示創(chuàng)建成功
baba:x:888:

?

  • groupmod
    功能描述:編輯用戶組
    常用語法:groupadd [選項(xiàng)] [用戶組名]
    常用選項(xiàng):
    ?????-g?修改用戶組ID
    ?????-n?修改用戶組名
    示例:
[root@vultr ~]# tail -1 /etc/group                        //查詢“/etc/group”用戶組“baba”的信息
baba:x:888:
[root@vultr ~]# groupmod -g 666 -n yeye baba              //修改用戶組“baba”的組ID為“666”,組名為“yeye”
[root@vultr ~]# tail -1 /etc/group                        //查詢“/etc/group”表示修改成功
yeye:x:666:

?

  • groupdel
    功能描述:刪除用戶組
    常用語法:groupdel [用戶組名]
    常用選項(xiàng):
[root@vultr ~]# tail -1 /etc/group       //查詢用戶組“yeye”
yeye:x:666:
[root@vultr ~]# groupdel yeye            //刪除用戶組“yeye”
[root@vultr ~]# tail -1 /etc/group       //用戶組“yeye”刪除成功
mysql:x:1001:

?


寫在最后

??本篇主要讓大家了解下用戶和用戶組關(guān)系,及管理方式,說到管理方式,無非就是“增”“刪”“改”嘛。依舊希望大家通過多敲命令的方式去熟悉并且牢記,還是那句話,看得再多,不如自己做遍~
??好啦,雞湯還是不能忘的~

?

《dead aid》
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容