新聞中心
這篇文章將為大家詳細(xì)講解有關(guān)怎么在Linux上檢查用戶所屬組,小編覺(jué)得挺實(shí)用的,因此分享給大家做個(gè)參考,希望大家閱讀完這篇文章后可以有所收獲。
目前創(chuàng)新互聯(lián)已為千余家的企業(yè)提供了網(wǎng)站建設(shè)、域名、網(wǎng)絡(luò)空間、綿陽(yáng)服務(wù)器托管、企業(yè)網(wǎng)站設(shè)計(jì)、庫(kù)倫網(wǎng)站維護(hù)等服務(wù),公司將堅(jiān)持客戶導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長(zhǎng),共同發(fā)展。
用戶添加到現(xiàn)有組是 Linux 管理員的常規(guī)活動(dòng)之一。這是一些在大環(huán)境中工作的管理員的日常活動(dòng)。
甚至我會(huì)因?yàn)闃I(yè)務(wù)需求而在我的環(huán)境中每天都在進(jìn)行這樣的活動(dòng)。它是幫助你識(shí)別環(huán)境中現(xiàn)有組的重要命令之一。
此外,這些命令還可以幫助你識(shí)別用戶所屬的組。所有用戶都列在 /etc/passwd
中,組列在 /etc/group
中。
無(wú)論我們使用什么命令,都將從這些文件中獲取信息。此外,每個(gè)命令都有其獨(dú)特的功能,可幫助用戶單獨(dú)獲取所需的信息。
什么是 /etc/passwd?
/etc/passwd
是一個(gè)文本文件,其中包含登錄 Linux 系統(tǒng)所必需的每個(gè)用戶信息。它維護(hù)有用的用戶信息,如用戶名、密碼、用戶 ID、組 ID、用戶 ID 信息、家目錄和 shell。passwd 每行包含了用戶的詳細(xì)信息,共有如上所述的 7 個(gè)字段。
$ grep "daygeek" /etc/passwddaygeek:x:1000:1000:daygeek,,,:/home/daygeek:/bin/bash
什么是 /etc/group?
/etc/group
是一個(gè)文本文件,用于定義用戶所屬的組。我們可以將多個(gè)用戶添加到單個(gè)組中。它允許用戶訪問(wèn)其他用戶文件和文件夾,因?yàn)?Linux 權(quán)限分為三類(lèi):用戶、組和其他。它維護(hù)有關(guān)組的有用信息,例如組名、組密碼,組 ID(GID)和成員列表。每個(gè)都在一個(gè)單獨(dú)的行。組文件每行包含了每個(gè)組的詳細(xì)信息,共有 4 個(gè)如上所述字段。
這可以通過(guò)使用以下方法來(lái)執(zhí)行。
groups
: 顯示一個(gè)組的所有成員。id
: 打印指定用戶名的用戶和組信息。lid
: 顯示用戶的組或組的用戶。getent
: 從 Name Service Switch 庫(kù)中獲取條目。
全局正則表達(dá)式打印grep
: 代表“”,它能打印匹配的模式。
什么是 groups 命令?
groups
命令打印每個(gè)給定用戶名的主要組和任何補(bǔ)充組的名稱(chēng)。
$ groups daygeekdaygeek : daygeek adm cdrom sudo dip plugdev lpadmin sambashare
如果要檢查與當(dāng)前用戶關(guān)聯(lián)的組列表。只需運(yùn)行 groups
命令,無(wú)需帶任何用戶名。
$ groupsdaygeek adm cdrom sudo dip plugdev lpadmin sambashare
什么是 id 命令?
id 代表 “身份”。它打印真實(shí)有效的用戶和組 ID。打印指定用戶或當(dāng)前用戶的用戶和組信息。
$ id daygeekuid=1000(daygeek) gid=1000(daygeek) groups=1000(daygeek),4(adm),24(cdrom),27(sudo),30(dip),46(plugdev),118(lpadmin),128(sambashare)
如果要檢查與當(dāng)前用戶關(guān)聯(lián)的組列表。只運(yùn)行 id
命令,無(wú)需帶任何用戶名。
$ iduid=1000(daygeek) gid=1000(daygeek) groups=1000(daygeek),4(adm),24(cdrom),27(sudo),30(dip),46(plugdev),118(lpadmin),128(sambashare)
什么是 lid 命令?
它顯示用戶的組或組的用戶。顯示有關(guān)包含用戶名的組或組名稱(chēng)中包含的用戶的信息。此命令需要管理員權(quán)限。
$ sudo lid daygeek adm(gid=4) cdrom(gid=24) sudo(gid=27) dip(gid=30) plugdev(gid=46) lpadmin(gid=108) daygeek(gid=1000) sambashare(gid=124)
什么是 getent 命令?
getent
命令顯示 Name Service Switch 庫(kù)支持的數(shù)據(jù)庫(kù)中的條目,它們?cè)?/etc/nsswitch.conf
中配置。
$ getent group | grep daygeekadm:x:4:syslog,daygeekcdrom:x:24:daygeeksudo:x:27:daygeekdip:x:30:daygeekplugdev:x:46:daygeeklpadmin:x:118:daygeekdaygeek:x:1000:sambashare:x:128:daygeek
如果你只想打印關(guān)聯(lián)的組名稱(chēng),請(qǐng)?jiān)谏厦娴拿钪惺褂?awk
。
$ getent group | grep daygeek | awk -F: '{print $1}'admcdromsudodipplugdevlpadmindaygeeksambashare
運(yùn)行以下命令僅打印主群組信息。
$ getent group daygeekdaygeek:x:1000:
什么是 grep 命令?
grep
代表 “全局正則表達(dá)式打印”,它能打印文件匹配的模式。
$ grep "daygeek" /etc/groupadm:x:4:syslog,daygeekcdrom:x:24:daygeeksudo:x:27:daygeekdip:x:30:daygeekplugdev:x:46:daygeeklpadmin:x:118:daygeekdaygeek:x:1000:sambashare:x:128:daygeek
如果你只想打印關(guān)聯(lián)的組名稱(chēng),請(qǐng)?jiān)谏厦娴拿钪惺褂?awk
。
$ grep "daygeek" /etc/group | awk -F: '{print $1}'admcdromsudodipplugdevlpadmindaygeeksambashare
關(guān)于“怎么在Linux上檢查用戶所屬組”這篇文章就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,使各位可以學(xué)到更多知識(shí),如果覺(jué)得文章不錯(cuò),請(qǐng)把它分享出去讓更多的人看到。
名稱(chēng)欄目:怎么在Linux上檢查用戶所屬組
本文路徑:http://www.ef60e0e.cn/article/jhcpih.html