在Linux上如何檢查用戶(hù)所屬組詳解
前言
將用戶(hù)添加到現(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í)別用戶(hù)所屬的組。所有用戶(hù)都列在 /etc/passwd 中,組列在 /etc/group 中。
無(wú)論我們使用什么命令,都將從這些文件中獲取信息。此外,每個(gè)命令都有其獨(dú)特的功能,可幫助用戶(hù)單獨(dú)獲取所需的信息。
什么是 /etc/passwd?
/etc/passwd 是一個(gè)文本文件,其中包含登錄 Linux 系統(tǒng)所必需的每個(gè)用戶(hù)信息。它維護(hù)有用的用戶(hù)信息,如用戶(hù)名、密碼、用戶(hù) ID、組 ID、用戶(hù) ID 信息、家目錄和 shell。passwd 每行包含了用戶(hù)的詳細(xì)信息,共有如上所述的 7 個(gè)字段。
$ grep "daygeek" /etc/passwd daygeek:x:1000:1000:daygeek,,,:/home/daygeek:/bin/bash
什么是 /etc/group?
/etc/group 是一個(gè)文本文件,用于定義用戶(hù)所屬的組。我們可以將多個(gè)用戶(hù)添加到單個(gè)組中。它允許用戶(hù)訪(fǎng)問(wèn)其他用戶(hù)文件和文件夾,因?yàn)?Linux 權(quán)限分為三類(lèi):用戶(hù)、組和其他。它維護(hù)有關(guān)組的有用信息,例如組名、組密碼,組 ID(GID)和成員列表。每個(gè)都在一個(gè)單獨(dú)的行。組文件每行包含了每個(gè)組的詳細(xì)信息,共有 4 個(gè)如上所述字段。
這可以通過(guò)使用以下方法來(lái)執(zhí)行。
- groups: 顯示一個(gè)組的所有成員。
- id: 打印指定用戶(hù)名的用戶(hù)和組信息。
- lid: 顯示用戶(hù)的組或組的用戶(hù)。
- getent: 從 Name Service Switch 庫(kù)中獲取條目。
- grep: 代表“全局正則表達(dá)式打印global regular expression print”,它能打印匹配的模式。
什么是 groups 命令?
groups 命令打印每個(gè)給定用戶(hù)名的主要組和任何補(bǔ)充組的名稱(chēng)。
$ groups daygeek daygeek : daygeek adm cdrom sudo dip plugdev lpadmin sambashare
如果要檢查與當(dāng)前用戶(hù)關(guān)聯(lián)的組列表。只需運(yùn)行 groups 命令,無(wú)需帶任何用戶(hù)名。
$ groups daygeek adm cdrom sudo dip plugdev lpadmin sambashare
什么是 id 命令?
id 代表 “身份identity”。它打印真實(shí)有效的用戶(hù)和組 ID。打印指定用戶(hù)或當(dāng)前用戶(hù)的用戶(hù)和組信息。
$ id daygeek uid=1000(daygeek) gid=1000(daygeek) groups=1000(daygeek),4(adm),24(cdrom),27(sudo),30(dip),46(plugdev),118(lpadmin),128(sambashare)
如果要檢查與當(dāng)前用戶(hù)關(guān)聯(lián)的組列表。只運(yùn)行 id 命令,無(wú)需帶任何用戶(hù)名。
$ id uid=1000(daygeek) gid=1000(daygeek) groups=1000(daygeek),4(adm),24(cdrom),27(sudo),30(dip),46(plugdev),118(lpadmin),128(sambashare)
什么是 lid 命令?
它顯示用戶(hù)的組或組的用戶(hù)。顯示有關(guān)包含用戶(hù)名的組或組名稱(chēng)中包含的用戶(hù)的信息。此命令需要管理員權(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 daygeek adm:x:4:syslog,daygeek cdrom:x:24:daygeek sudo:x:27:daygeek dip:x:30:daygeek plugdev:x:46:daygeek lpadmin:x:118:daygeek daygeek: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}' adm cdrom sudo dip plugdev lpadmin daygeek sambashare
運(yùn)行以下命令僅打印主群組信息。
$ getent group daygeek daygeek:x:1000:
什么是 grep 命令?
grep 代表 “全局正則表達(dá)式打印global regular expression print”,它能打印文件匹配的模式。
$ grep "daygeek" /etc/group adm:x:4:syslog,daygeek cdrom:x:24:daygeek sudo:x:27:daygeek dip:x:30:daygeek plugdev:x:46:daygeek lpadmin:x:118:daygeek daygeek: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}' adm cdrom sudo dip plugdev lpadmin daygeek sambashare
via: https://www.2daygeek.com/how-to-check-which-groups-a-user-belongs-to-on-linux/
總結(jié)
以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,如果有疑問(wèn)大家可以留言交流,謝謝大家對(duì)腳本之家的支持。
- linux 查找過(guò)濾及用戶(hù)和組管理命令的一些實(shí)例
- Linux基礎(chǔ)之正則表達(dá)式,用戶(hù)、組管理命令介紹
- Linux操作系統(tǒng)下關(guān)于用戶(hù)和組的配置管理指南
- linux查看所有用戶(hù)和查看用戶(hù)組的方法(修改用戶(hù)組)
- 詳解Linux添加/刪除用戶(hù)和用戶(hù)組
- Linux中把用戶(hù)添加到組的4個(gè)方法總結(jié)
- Linux 創(chuàng)建修改刪除用戶(hù)和組的方法
- linux用戶(hù)組以及權(quán)限總結(jié)
- Linux 無(wú)法使用userdel 刪除用戶(hù)和組的解決方案
- linux 用戶(hù)和組命令整理及詳細(xì)介紹
- Linux修改用戶(hù)所屬組的方法
- Linux 中有效用戶(hù)組和初始用戶(hù)組的實(shí)現(xiàn)
- linux用戶(hù)和組管理常見(jiàn)命令總結(jié)
相關(guān)文章
Linux自動(dòng)化構(gòu)建工具make和Makefile詳解
這篇文章主要介紹了Linux如何自動(dòng)化構(gòu)建工具make和makefile,文章中有詳細(xì)的圖片示例,對(duì)學(xué)習(xí)有一定的參考價(jià)值,感興趣的小伙伴可以參考一下2023-04-04解決Debian系統(tǒng)自動(dòng)更新軟件包的問(wèn)題的方法
這篇文章主要介紹了解決Debian系統(tǒng)自動(dòng)更新軟件包的問(wèn)題的方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-12-12Linux運(yùn)維基礎(chǔ)交換分區(qū)和lvm管理教程
這篇文章主要介紹了Linux運(yùn)維基礎(chǔ)中的交換分區(qū)和lvm管理教程,附含源碼示例,有需要的朋友可以借鑒參考下,祝大家共同學(xué)習(xí)共同進(jìn)步2021-09-09