Android

Linux'ta gruplar nasıl listelenir?

Linux vs Windows vs MacOS для работы. Какой ЛИНУКС выбрать в 2020 для рабочего компьютера?

Linux vs Windows vs MacOS для работы. Какой ЛИНУКС выбрать в 2020 для рабочего компьютера?

İçindekiler:

Anonim

Linux'ta bir grup bir kullanıcı topluluğudur. Grupların temel amacı, belirli bir kaynak için grup içindeki kullanıcılar arasında paylaşılabilen okuma, yazma veya yürütme izni gibi bir dizi ayrıcalık tanımlamaktır. Kullanıcılar, verdiği ayrıcalıkları kullanmak için mevcut bir gruba eklenebilir.

Bu eğiticide, kullanıcının üyesi olduğu tüm grupların nasıl gösterileceği açıklanmaktadır. Bir grubun tüm üyelerini nasıl listeleyeceğinizi de açıklayacağız.

Linux Grupları

Bir kullanıcının ait olabileceği iki tür grup vardır:

  • Birincil veya oturum açma grubu - kullanıcı tarafından oluşturulan dosyalara atanan gruptur. Genellikle, birincil grubun adı kullanıcının adıyla aynıdır. Her kullanıcı tam olarak bir birincil gruba ait olmalıdır.

    İkincil veya tamamlayıcı grup - bir grup kullanıcıya belirli ayrıcalıklar vermek için kullanılır. Bir kullanıcı sıfır veya daha fazla ikincil grubun üyesi olabilir.

Kullanıcının Üyesi Olduğu Tüm Grupları Listele

Bir kullanıcının ait olduğu grupları bulmanın birden fazla yolu vardır.

Birincil kullanıcının grubu /etc/passwd dosyasında saklanır ve varsa ek gruplar /etc/group dosyasında listelenir.

Kullanıcı gruplarını bulmanın bir yolu, cat , less veya grep kullanarak bu dosyaların içeriğini listelemektir. Başka bir kolay seçenek, amacı sistemin kullanıcıları ve grupları hakkında bilgi sağlamak olan bir komut kullanmaktır.

Groups komutunu kullanma

Bir kullanıcının üyesi olduğu tüm grupları listelemek için en unutulmaz komut, groups komutudur. Bağımsız değişken olmadan yürütüldüğünde, komut şu anda oturum açmış olan kullanıcının ait olduğu tüm grupların bir listesini yazdırır:

groups

İlk grup birincil gruptur.

john adm cdrom sudo dip plugdev lpadmin sambashare

Belirli bir kullanıcının ait olduğu tüm grupların bir listesini almak için, argümanlar olarak groups komutuna kullanıcı adını girin:

groups linuxize

Birinci grup öncekiyle aynıdır.

linuxize: linuxize sudo

id komutunu kullanma

id komutu, belirtilen kullanıcı ve grupları hakkında bilgi yazdırır. Kullanıcı adı atlanırsa, geçerli kullanıcı için bilgi gösterir.

Örneğin, kullanıcı linuxize hakkında bilgi almak için şunu linuxize :

id linuxize

Komut kullanıcı adını ( uid ), kullanıcının birincil grubunu ( gid ) ve kullanıcının ikincil gruplarını ( groups ) gösterir

uid=1001(linuxize) gid=1001(linuxize) groups=1001(linuxize), 27(sudo)

Yalnızca kullanıcı ve grup kimlikleri olmayan adları yazdırmak için -n seçeneğini kullanın. -G seçeneği yalnızca birincil grubu ve -G tüm grupları yazdırır.

Aşağıdaki komut, geçerli kullanıcının üyesi olduğu grupların adlarını yazdırır:

id -nG

john adm cdrom sudo dip plugdev lpadmin sambashare

Bir Grubun Tüm Üyelerini Listele

Bir grubun tüm üyelerini listelemek için, getent group komutunu ve ardından grup adını kullanın.

Örneğin, ad developers olan bir grubun üyelerini bulmak için aşağıdaki komutu kullanırsınız:

getent group developers

Grup varsa, komut grubu ve tüm üyelerini yazdırır:

developers:x:126:frank, mary

Çıktı yoksa, bu grubun mevcut olmadığı anlamına gelir.

Tüm Grupları Listele

Sistemde bulunan tüm grupları görüntülemek için /etc/group dosyasını açmanız yeterlidir. Bu dosyadaki her satır bir grup için bilgileri temsil eder.

less /etc/group

Başka bir seçenek de, tüm grupların listesini sorgulamak için kullanabileceğimiz group veritabanı dahil /etc/nsswitch.conf dosyasında yapılandırılan veritabanlarındaki girdileri görüntüleyen getent komutunu kullanmaktır.

Tüm grupların bir listesini almak için aşağıdaki komutu yazın:

getent group

Çıktı, /etc/group dosyasının içeriğini görüntülerkenkiyle aynıdır. Kullanıcı kimlik doğrulaması için LDAP kullanıyorsanız, getent /etc/group dosyasındaki ve LDAP veritabanındaki tüm grupları görüntüler.

Yalnızca grubun adını içeren ilk alanı yazdırmak için awk veya cut awk da kullanabilirsiniz:

getent group | awk -F: '{ print $1}'

getent group | cut -d: -f1

Sonuç

Bu öğreticide, bir kullanıcının üyesi olduğu grupları nasıl bulacağınızı öğrendiniz. Aynı komutlar Ubuntu, CentOS, RHEL, Debian ve Linux Mint dahil tüm Linux dağıtımları için de geçerlidir.

Herhangi bir sorunuz varsa yorum bırakmaktan çekinmeyin.

terminal