您好,登錄后才能下訂單哦!
這篇文章將為大家詳細講解有關怎么在Linux上檢查用戶所屬組,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。
用戶添加到現有組是 Linux 管理員的常規活動之一。這是一些在大環境中工作的管理員的日常活動。
甚至我會因為業務需求而在我的環境中每天都在進行這樣的活動。它是幫助你識別環境中現有組的重要命令之一。
此外,這些命令還可以幫助你識別用戶所屬的組。所有用戶都列在 /etc/passwd
中,組列在 /etc/group
中。
無論我們使用什么命令,都將從這些文件中獲取信息。此外,每個命令都有其獨特的功能,可幫助用戶單獨獲取所需的信息。
/etc/passwd
是一個文本文件,其中包含登錄 Linux 系統所必需的每個用戶信息。它維護有用的用戶信息,如用戶名、密碼、用戶 ID、組 ID、用戶 ID 信息、家目錄和 shell。passwd 每行包含了用戶的詳細信息,共有如上所述的 7 個字段。
$ grep "daygeek" /etc/passwddaygeek:x:1000:1000:daygeek,,,:/home/daygeek:/bin/bash
/etc/group
是一個文本文件,用于定義用戶所屬的組。我們可以將多個用戶添加到單個組中。它允許用戶訪問其他用戶文件和文件夾,因為 Linux 權限分為三類:用戶、組和其他。它維護有關組的有用信息,例如組名、組密碼,組 ID(GID)和成員列表。每個都在一個單獨的行。組文件每行包含了每個組的詳細信息,共有 4 個如上所述字段。
這可以通過使用以下方法來執行。
groups
: 顯示一個組的所有成員。
id
: 打印指定用戶名的用戶和組信息。
lid
: 顯示用戶的組或組的用戶。
getent
: 從 Name Service Switch 庫中獲取條目。
grep
: 代表“
”,它能打印匹配的模式。
groups
命令打印每個給定用戶名的主要組和任何補充組的名稱。
$ groups daygeekdaygeek : daygeek adm cdrom sudo dip plugdev lpadmin sambashare
如果要檢查與當前用戶關聯的組列表。只需運行 groups
命令,無需帶任何用戶名。
$ groupsdaygeek adm cdrom sudo dip plugdev lpadmin sambashare
id 代表 “身份”。它打印真實有效的用戶和組 ID。打印指定用戶或當前用戶的用戶和組信息。
$ id daygeekuid=1000(daygeek) gid=1000(daygeek) groups=1000(daygeek),4(adm),24(cdrom),27(sudo),30(dip),46(plugdev),118(lpadmin),128(sambashare)
如果要檢查與當前用戶關聯的組列表。只運行 id
命令,無需帶任何用戶名。
$ iduid=1000(daygeek) gid=1000(daygeek) groups=1000(daygeek),4(adm),24(cdrom),27(sudo),30(dip),46(plugdev),118(lpadmin),128(sambashare)
它顯示用戶的組或組的用戶。顯示有關包含用戶名的組或組名稱中包含的用戶的信息。此命令需要管理員權限。
$ 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
命令顯示 Name Service Switch 庫支持的數據庫中的條目,它們在 /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
如果你只想打印關聯的組名稱,請在上面的命令中使用 awk
。
$ getent group | grep daygeek | awk -F: '{print $1}'admcdromsudodipplugdevlpadmindaygeeksambashare
運行以下命令僅打印主群組信息。
$ getent group daygeekdaygeek:x:1000:
grep
代表 “全局正則表達式打印”,它能打印文件匹配的模式。
$ 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
如果你只想打印關聯的組名稱,請在上面的命令中使用 awk
。
$ grep "daygeek" /etc/group | awk -F: '{print $1}'admcdromsudodipplugdevlpadmindaygeeksambashare
關于“怎么在Linux上檢查用戶所屬組”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,使各位可以學到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。