Di Unix / Linux, bagaimana Anda mengetahui grup apa yang diberikan pengguna melalui baris perintah?
Di Unix / Linux, bagaimana Anda mengetahui grup apa yang diberikan pengguna melalui baris perintah?
Jawaban:
Ini menunjukkan pengguna uid serta semua kelompok (dengan gids mereka) milik mereka
id userid
Di Linux / OS X / Unix untuk menampilkan grup tempat Anda (atau pengguna yang ditentukan opsional), gunakan:
id -Gn [user]
yang setara dengan groups [user]
utilitas yang sudah usang di Unix.
Pada OS X / Unix, perintah id -p [user]
disarankan untuk interaktif normal.
Penjelasan tentang parameter:
-G
,--groups
- cetak semua ID grup
-n
,--name
- cetak nama, bukan angka, untuk-ugG
-p
- Jadikan output yang dapat dibaca manusia.
atau hanya belajar / etc / groups (ok ini mungkin tidak berfungsi jika menggunakan pam dengan ldap)
Di bawah ini adalah skrip yang diintegrasikan ke dalam dashboard yang memungkinkan dan menghasilkan dalam format CSV.
sh collection.sh
#!/bin/bash
HOSTNAME=`hostname -s`
for i in `cat /etc/passwd| grep -vE "nologin|shutd|hal|sync|root|false"|awk -F':' '{print$1}' | sed 's/[[:space:]]/,/g'`; do groups $i; done|sed s/\:/\,/g|tr -d ' '|sed -e "s/^/$HOSTNAME,/"> /tmp/"$HOSTNAME"_inventory.txt
sudo cat /etc/sudoers| grep -v "^#"|awk '{print $1}'|grep -v Defaults|sed '/^$/d;s/[[:blank:]]//g'>/tmp/"$HOSTNAME"_sudo.txt
paste -d , /tmp/"$HOSTNAME"_inventory.txt /tmp/"$HOSTNAME"_sudo.txt|sed 's/,[[:blank:]]*$//g' >/tmp/"$HOSTNAME"_inventory_users.txt
Output saya disimpan dalam file teks di bawah ini.
cat /tmp/ANSIBLENODE_sudo.txt
cat /tmp/ANSIBLENODE_inventory.txt
cat /tmp/ANSIBLENODE_inventory_users.txt
getent group <groupname>
.