Kullanıcılar için atanmış subuid ve subgid değerlerini listeleyen bir araç (!) Var mı?


13

usermod -v( --add-sub-uids) ve usermod -w( --add-sub-gids), bir kullanıcı hesabı için subuid ve subgid aralıklarını değiştirmek için kullanılabilir, ancak yalnızca bunları listeleyebilecek bir araç yok gibi görünür. Bir tane var mı?

En azından Ubuntu 14.04 kutumda getentbu /etc/subuidve ile ilgili bilgileri işlemek için hazır görünmüyor /etc/subgid.

Şu anda küçük bir kabuk komut dosyası kullanıyorum awk, bu amaçla kullanıyorum .


İşte bir alıntı usermod(8):

-v, --add-sub-uids FIRST-LAST
    Add a range of subordinate uids to the users account.
[...]
-V, --del-sub-uids FIRST-LAST
    Remove a range of subordinate uids from the users account.
[...]
-w, --add-sub-gids FIRST-LAST
    Add a range of subordinate gids to the users account.
[...]
-W, --del-sub-gids FIRST-LAST
    Remove a range of subordinate gids from the users account.
[...]

3
İsim alanları için araç desteği çekirdek desteğinin gerisinde kaldığından, yanıtın "bu araçlar henüz mevcut değil" ya da en azından "bu araçlar henüz çoğu dağıtımda bulunmamışsa" beni şaşırtmayacaktır.
Gilles 'SO- kötü olmayı bırak'

Yanıtlar:


1

Şimdilik kullandığım kabuk betiği.

#!/bin/bash
SUBUID=/etc/subuid
SUBGID=/etc/subgid
for i in $SUBUID $SUBGID; do [[ -f "$i" ]] || { echo "ERROR: $i does not exist, but is required."; exit 1; }; done
[[ -n "$1" ]] && USERS=$1 || USERS=$(awk -F : '{x=x " " $1} END{print x}' $SUBUID)
for i in $USERS; do
        awk -F : "\$1 ~ /$i/ {printf(\"%-16s sub-UIDs: %6d..%6d (%6d)\", \$1 \",\", \$2, \$2+\$3, \$3)}" $SUBUID
        awk -F : "\$1 ~ /$i/ {printf(\", sub-GIDs: %6d..%6d (%6d)\", \$2, \$2+\$3, \$3)}" $SUBGID
        echo ""
done

Sözdizimi:

showsubids [username]

Hiçbir kullanıcı adı verilmezse, tümü listelenir. Bir kullanıcı adı verilirse, yalnızca kullanıcı adı girişleri gösterilir.

Hata işleme yetersizdir, ancak birisine yardımcı olursa ...

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.