linux中多用戶以及權(quán)限的理解

多用戶

linux操作系統(tǒng)是多用戶管理系統(tǒng)友瘤,管理起來(lái)非常麻煩摄欲,所以用組的概念來(lái)管理用戶就變的簡(jiǎn)單多了,一個(gè)用戶可以屬于多個(gè)組空凸,一個(gè)組可以有多個(gè)用戶较解,用戶和組是多對(duì)多的關(guān)系畜疾。

linux的多用戶多分組管理系統(tǒng)都是針對(duì)文件來(lái)說(shuō)的,每個(gè)文件都有所屬的用戶和所屬的分組印衔。

用戶種類

linux系統(tǒng)是根據(jù)用戶UID來(lái)識(shí)別用戶的啡捶,并不是根據(jù)用戶名。linux用戶分為以下3種

  • root用戶也叫超級(jí)用戶(UID為0):該用戶具有最高權(quán)限奸焙,可以操作任何文件瞎暑,盡管文件權(quán)限是000彤敛。在linux字符操作頁(yè)面中,root賬號(hào)的提示符為#了赌。

  • 系統(tǒng)用戶(UID為1-499):系統(tǒng)用戶是linux系統(tǒng)正常運(yùn)行的內(nèi)建用戶墨榄,通常是為了管理某種服務(wù),如ftp服務(wù)勿她,以及sshd服務(wù)等袄秩。系統(tǒng)用戶是不能用來(lái)登錄的

  • 普通用戶(UID大于500):普通用戶是為了合理管理linux資源而建立的用戶逢并。在linux的字符操作頁(yè)面播揪,普通用戶的提示符一般為$

查看系統(tǒng)所有用戶

  • 在/etc/passwd文件中存儲(chǔ)著系統(tǒng)的所有用戶筒狠,使用如下命令查看
cat /etc/passwd

每行數(shù)據(jù)為一個(gè)用戶,可以看到紅色部分為root超級(jí)用戶箱沦,藍(lán)色部分為系統(tǒng)用戶辩恼,綠色部分為普通用戶。

  • 可以看出圖片中每行數(shù)據(jù)大致7段谓形,使用:作為分隔符灶伊,格式如下

用戶名:X:UID(用戶id):GID(組id):用戶說(shuō)明:用戶家目錄:Shell版本

  1. 用戶名:用戶名只是管理員方便記憶,系統(tǒng)是根據(jù)UID來(lái)識(shí)別用戶的寒跳。使用命令useradd userName或者adduser userName來(lái)創(chuàng)建新的用戶
  2. x:代表的是密碼標(biāo)志聘萨,而不是真正的密碼。如果第二段是x則代表該用戶有密碼童太,如果沒(méi)有x則代表該用戶沒(méi)有密碼米辐。**用戶真正的密碼保存在/etc/shadow文件中,該文件的權(quán)限是000,也就是說(shuō)只有root用戶才能查看书释。
  3. UID:用戶id翘贮,要知道linux系統(tǒng)就是通過(guò)用戶id來(lái)識(shí)別不同的用戶和分配不同的權(quán)限的。
  4. GID:此字段意思為組id爆惧,更確切的說(shuō)是初始組id狸页。說(shuō)到初始組就得說(shuō)說(shuō)初始組附加組的概念了。
    所謂初始組扯再,新建一個(gè)用戶后芍耘,系統(tǒng)會(huì)自動(dòng)新建一個(gè)與該用戶名相同的組,并將該用戶分配到該組中熄阻,該組就是該用戶的初始組斋竞。每個(gè)用戶的初始組只能有一個(gè),舉例來(lái)說(shuō)饺律,我們手工添加用戶useradd lamp窃页,在建立用戶 lamp 的同時(shí)也會(huì)創(chuàng)建lamp的組名跺株。還有一個(gè)注意的點(diǎn),就是新建用戶的UID和GID一般是相同的脖卖。
    所謂附加組:指用戶后期可以加入多個(gè)其他的用戶組乒省,并擁有這些組的權(quán)限。每個(gè)用戶只能有一個(gè)初始組畦木,附加組卻可以有多個(gè)袖扛,此時(shí)用戶的權(quán)限就是初始組的權(quán)限+附屬組的權(quán)限。
    需要注意:在 /etc/passwd 文件的第四個(gè)字段中看到的 ID 是這個(gè)用戶的初始組十籍。
  5. 用戶說(shuō)明:這個(gè)用戶的簡(jiǎn)單說(shuō)明蛆封,沒(méi)有什么特殊作用,可以不寫(xiě)勾栗。
  6. 用戶家目錄:也就是用戶登錄后有操作權(quán)限的訪問(wèn)目錄惨篱,我們把這個(gè)目錄稱為用戶的家目錄。通常都會(huì)在/home下自動(dòng)創(chuàng)建與用戶名同名的用戶家目錄围俘,舉個(gè)例子砸讳,創(chuàng)建新用戶useradd db,這是用戶db的家目錄是/home/db簡(jiǎn)單說(shuō)就是root用戶的家目錄是 /root 目錄界牡,普通用戶是 /home/userName下.
    在linux字符操作頁(yè)面的~就是指當(dāng)前用戶的家目錄
  7. shell命令:linux默認(rèn)是/bin/bash,寫(xiě)過(guò)shell腳本的都應(yīng)該知道簿寂。
  • 所有用戶都是可以查看此文件的,我們可以查看該文件的ll宿亡。
[db@002 ~]$ ll /etc/passwd
-rw-r--r-- 1 root root 1194 Feb 20 21:31 /etc/passwd

我們可以看到該文件屬于root用戶和root組常遂。然后root用戶權(quán)限是rw-,root組內(nèi)成員的權(quán)限是r--,而其他用戶的權(quán)限是r--挽荠。由于其他用戶的權(quán)限都是r--克胳,所以任何用戶都是可以讀的。

查看系統(tǒng)所有組

在/etc/group文件中存儲(chǔ)著系統(tǒng)的所有組,查看文件內(nèi)容圈匆,如下圖



大致分為4段

  1. 組名:上面介紹過(guò)毯欣,不在贅述
  2. 密碼:x代碼加密標(biāo)示,和passwd文件中類似臭脓。group的組密碼保存在 /etc/gshadow 文件中酗钞。
  3. GID:組id
  4. 組內(nèi)成員:此段如果為空,則代表該組只有一個(gè)用戶来累,也就是與組名相同的用戶砚作。如果有值,則說(shuō)明此組中含有與該值相同的用戶嘹锁,也就是說(shuō)此組是該用戶的附屬組葫录。

我們可以看到圖中mail分組的第4段有值為postfix,也就是postfix用戶應(yīng)該有倆個(gè)分組,一個(gè)初始組和一個(gè)附屬組领猾,我們執(zhí)行以下命令驗(yàn)證

[root@002 home]# groups postfix
postfix : postfix mail

密碼文件介紹

用戶密碼文件shadow和組密碼文件gshadow的權(quán)限都是000米同,所有其他用戶是不能查看的骇扇,只有root用戶才可以查看,root用戶也是不能修改該文件的面粮。

[root@002 ~]# ll /etc/gshadow
---------- 1 root root 457 Feb 21 18:03 /etc/gshadow
[root@002 ~]# ll /etc/shadow
---------- 1 root root 933 Feb 21 18:03 /etc/shadow

查看當(dāng)前登錄用戶

使用whoami命令查看少孝。

[root@002 ~]# whoami
root

查看當(dāng)前用戶所在分組

  • 直接使用groups命令,可以查看當(dāng)前登錄用戶的所有組(初始組和所屬組)
[db@002 ~]$ groups
root
  • 使用groups userName命令來(lái)查看指定用戶的所有組(初始組和所屬組)。
[root@002 xiaoyu]# groups postfix
postfix : postfix mail
  • 使用id命令查看當(dāng)前登錄用戶的所有組(初始組和所屬組)熬苍。
[db@002 ~]$ id
uid=1002(db) gid=0(root) groups=0(root)
  • 使用id username來(lái)查看指定當(dāng)前用戶的所有組(初始組和所屬組)稍走。
[db@002 ~]$ id postfix
uid=89(postfix) gid=89(postfix) groups=89(postfix),12(mail)

postfix用戶有倆個(gè)所屬組postfix和mail。由此可見(jiàn)柴底,uid是指用戶id(用戶名稱)婿脸,gid是指初始組id(初始組名稱),groups是指包括初始組在內(nèi)的所有組id(所有組名稱)

查看組內(nèi)的所有成員

我們知道了/etc/group文件的第四段為組內(nèi)成員柄驻,所有我們可以通過(guò)grep來(lái)匹配相關(guān)組狐树。比如查詢mail組內(nèi)的所有成員,命令如下鸿脓,可以看到mail組內(nèi)有mail,postfix和tom3個(gè)用戶褪迟。

[db@002 ~]$ cat /etc/group | grep mail
mail:x:12:postfix,tom

上面是一種方法,我們也可以直接使用命令來(lái)查看答憔。

groupmems -l -g groupname

添加普通用戶并設(shè)置密碼

添加用戶只能root用戶來(lái)添加,普通用戶沒(méi)有權(quán)限掀抹,添加用戶有倆種方式

  • useradd userName
  • adduser userName

在centos系統(tǒng)下虐拓,這倆種方式?jīng)]有區(qū)別,都會(huì)在/home下自動(dòng)創(chuàng)建與用戶名同名的用戶目錄傲武,且都是需要使用passwd userName命令來(lái)設(shè)置用戶密碼的蓉驹,只有設(shè)置完密碼后才可以正常登錄。

在unbantu系統(tǒng)下揪利,這倆種方式是有區(qū)別的态兴,使用useradd userName命令不會(huì)在/home下自動(dòng)創(chuàng)建與用戶名同名的用戶目錄,且不會(huì)自動(dòng)選擇shell版本疟位,后續(xù)也是需要使用passwd username來(lái)設(shè)置密碼的瞻润。而使用adduser userName命令的話是會(huì)在/home目錄下自動(dòng)創(chuàng)建與用戶名同名的用戶目錄,也會(huì)自動(dòng)選擇shell版本甜刻,且會(huì)自動(dòng)提示輸入用戶密碼绍撞,對(duì)用戶比較友好,后續(xù)不需要在使用passwd來(lái)設(shè)置密碼得院。

創(chuàng)建/修改用戶密碼

passwd username

刪除用戶

刪除用戶傻铣,并不會(huì)刪除用戶相關(guān)的文件

userdel userName

刪除用戶且一起刪除家目錄

userdel -r userName

添加新組

groupadd groupname

刪除組

groupdel groupname

組內(nèi)新增用戶(用戶增加附屬組)

groupmems -a username -g groupname

groupmems介紹

格式如下:

groupmems [opentions] [action]

參數(shù)如下:
-g 指定組(只有root可以使用)
-a 指定用戶加入組
-d 從組中刪除該用戶
-p 從組中清楚所有成員
-l 顯示組成員列表

  • groupmems -l -g root
    此命令表示查看root組中存在的成員,成員不包括與組名同名的用戶祥绞。
  • groupmems -a Father -g root
    此命令表示將Father用戶加入root組中非洲。

權(quán)限

linux中每個(gè)文件都是有權(quán)限的鸭限。每個(gè)文件都有自己的所屬用戶和所屬組,且擁有所屬用戶權(quán)限两踏,所屬組權(quán)限和其他權(quán)限3種败京。
權(quán)限一般分為讀,寫(xiě)缆瓣,執(zhí)行3種喧枷,通過(guò)這樣的機(jī)制來(lái)限制哪些用戶或用戶組可以對(duì)特定文件進(jìn)行相應(yīng)的操作。

權(quán)限 對(duì)文件的影響 對(duì)目錄的影響
r(讀) 可讀取文件內(nèi)容 可列出目錄中的文件(ls ll)
w(寫(xiě)) 可修改文件內(nèi)容 可創(chuàng)建或刪除目錄中的文件
x(執(zhí)行) 可將文件做為命令執(zhí)行 可進(jìn)入目錄(cd)

目錄有x權(quán)限才可以cd進(jìn)入該目錄弓坞。目錄有r權(quán)限才能在該目錄中使用ll或者ls查看目錄隧甚。一個(gè)目錄中的文件能否被刪除或者創(chuàng)建取決于該目錄是否有w權(quán)限。

執(zhí)行l(wèi)l命令后顯示如下,我們解讀一下

drwxr-xr--  2 xiaoyu xiaoyu 4096 Feb 24 14:11 xiaoyu

從左到右發(fā)現(xiàn)一共有7段

  1. 權(quán)限:該段一共有10位渡冻。第一位如果是d戚扳,則說(shuō)明該文件為目錄,如果是-則說(shuō)明是文件族吻。剩余9位3位一組帽借,分為3組,分別對(duì)應(yīng)所屬用戶權(quán)限超歌,所屬組權(quán)限砍艾,其他權(quán)限∥【伲可以看出用戶權(quán)限為rwx,二進(jìn)制表示為7脆荷。組權(quán)限為r-x,二進(jìn)制表示為5。其他權(quán)限為r--,二進(jìn)制表示為4懊悯,組合一起該文件的權(quán)限就是754蜓谋。
  2. 連接數(shù)
  3. 所屬用戶:表示該文件的所屬用戶是xiaoyu
  4. 所屬分組:表示該文件的所屬分組是xiaoyu
  5. 文件大小
  6. 文件的最后修改時(shí)間
  7. 文件名或者目錄名

現(xiàn)在這個(gè)文件的所屬者是xiaoyu,所屬分組是xiaoyu。

當(dāng)前用戶如果是xiaoyu的話炭分,也就是具有所屬用戶權(quán)限桃焕,具有對(duì)該文件的rwx權(quán)限。

如果當(dāng)前用戶不是xiaoyu的話捧毛,在判斷當(dāng)前用戶是否屬于xiaoyu分組观堂,如果屬于xiaoyu分組,也就是具有所屬組權(quán)限呀忧,則具有對(duì)該文件的r-x權(quán)限型将。

如果當(dāng)前用戶即不是xiaoyu用戶,也不屬于xiaoyu分組的話荐虐,也就是具有其他權(quán)限七兜,則具有對(duì)文件的r--權(quán)限。

命令

  • chmod
    該命令用于修改文件的用戶權(quán)限福扬。
    比如文件ll如下
drwx------  2 test   test   4096 Feb 19 14:47 test

然后執(zhí)行如下命令

chmode 755 test.php

test文件的權(quán)限改為

drwxr-xr-x  2 test   test   4096 Feb 19 14:47 test

常用的參數(shù)為-R,常用于修改目錄權(quán)限腕铸,該參數(shù)表示為該目錄以及目錄下的所有子文件都修改為相同的權(quán)限惜犀。

chmod -R 777 test
  • chown
    該命令用于修改文件的所屬用戶和所屬組
    比如文件ll如下
drwx------  2 test   test   4096 Feb 19 14:47 test

然后執(zhí)行如下命令

chown xiaoyu:xiaoyu test

再次查看test文件

drwx------  2 xiaoyu   xiaoyu   4096 Feb 19 14:47 test

常用的參數(shù)為-R,常用于修改目錄,該參數(shù)表示為該目錄以及目錄下的所有子文件都修改為相同的用戶及用戶組狠裹。

chmod -R 777 test

切換用戶

想切換到root用戶虽界,直接使用su命令即可

su root

總結(jié)

  • 一個(gè)用戶可以加入不同的組,但是有且只有一個(gè)初始組涛菠。
  • 一個(gè)用戶的權(quán)限為他所屬的多個(gè)組的累加權(quán)限 莉御。假設(shè)user賬戶附加組group1 = write group2 = read ,那么user就擁有 write + read權(quán)限俗冻。
  • 組和用戶的關(guān)系是多對(duì)多 一個(gè)用戶可以有多個(gè)組礁叔,一個(gè)組也可以有多個(gè)用戶。
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末迄薄,一起剝皮案震驚了整個(gè)濱河市琅关,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌讥蔽,老刑警劉巖涣易,帶你破解...
    沈念sama閱讀 212,599評(píng)論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異冶伞,居然都是意外死亡新症,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,629評(píng)論 3 385
  • 文/潘曉璐 我一進(jìn)店門响禽,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)徒爹,“玉大人,你說(shuō)我怎么就攤上這事金抡。” “怎么了腌且?”我有些...
    開(kāi)封第一講書(shū)人閱讀 158,084評(píng)論 0 348
  • 文/不壞的土叔 我叫張陵梗肝,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我铺董,道長(zhǎng)巫击,這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 56,708評(píng)論 1 284
  • 正文 為了忘掉前任精续,我火速辦了婚禮坝锰,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘重付。我一直安慰自己顷级,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,813評(píng)論 6 386
  • 文/花漫 我一把揭開(kāi)白布确垫。 她就那樣靜靜地躺著弓颈,像睡著了一般帽芽。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上翔冀,一...
    開(kāi)封第一講書(shū)人閱讀 50,021評(píng)論 1 291
  • 那天导街,我揣著相機(jī)與錄音,去河邊找鬼纤子。 笑死搬瑰,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的控硼。 我是一名探鬼主播泽论,決...
    沈念sama閱讀 39,120評(píng)論 3 410
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼象颖!你這毒婦竟也來(lái)了佩厚?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 37,866評(píng)論 0 268
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤说订,失蹤者是張志新(化名)和其女友劉穎抄瓦,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體陶冷,經(jīng)...
    沈念sama閱讀 44,308評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡钙姊,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,633評(píng)論 2 327
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了埂伦。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片煞额。...
    茶點(diǎn)故事閱讀 38,768評(píng)論 1 341
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖沾谜,靈堂內(nèi)的尸體忽然破棺而出膊毁,到底是詐尸還是另有隱情,我是刑警寧澤基跑,帶...
    沈念sama閱讀 34,461評(píng)論 4 333
  • 正文 年R本政府宣布婚温,位于F島的核電站,受9級(jí)特大地震影響媳否,放射性物質(zhì)發(fā)生泄漏栅螟。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 40,094評(píng)論 3 317
  • 文/蒙蒙 一篱竭、第九天 我趴在偏房一處隱蔽的房頂上張望力图。 院中可真熱鬧,春花似錦掺逼、人聲如沸吃媒。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 30,850評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)晓折。三九已至惑朦,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間漓概,已是汗流浹背漾月。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 32,082評(píng)論 1 267
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留胃珍,地道東北人梁肿。 一個(gè)月前我還...
    沈念sama閱讀 46,571評(píng)論 2 362
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像觅彰,于是被迫代替她去往敵國(guó)和親吩蔑。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,666評(píng)論 2 350

推薦閱讀更多精彩內(nèi)容

  • whoami 查看當(dāng)前登錄用戶名 /etc/group文件包含所有組 /etc/shadow和/etc/passw...
    仙靈兒閱讀 686評(píng)論 0 0
  • 眾所周知填抬,Linux是一個(gè)多用戶烛芬、多任務(wù)(Multi-Tasks、Multi-Users)的操作系統(tǒng)飒责。那么Linu...
    學(xué)渣角鹿白閱讀 5,830評(píng)論 0 9
  • 《鳥(niǎo)哥的Linux私房菜》筆記 1赘娄、Linux的賬號(hào)與用戶組 如何管理好一個(gè)服務(wù)器主機(jī)的賬號(hào),以及在管理主機(jī)賬號(hào)時(shí)...
    Zhang21閱讀 1,856評(píng)論 0 5
  • 前言 只有光頭才能變強(qiáng) 回顧前面: 看完這篇Linux基本的操作就會(huì)了 沒(méi)想到上一篇能在知乎獲得千贊呀宏蛉,Linux...
    Java3y閱讀 3,232評(píng)論 0 19
  • 與用戶相關(guān)的系統(tǒng)配置文件主要有/etc/passwd 和/etc/shadow遣臼,其中/etc/shadow是用戶資...
    蝌蚪1573閱讀 669評(píng)論 0 3