Esiste uno strumento (!) Per elencare i valori subuid e subgid assegnati agli utenti?


13

usermod -v( --add-sub-uids) e usermod -w( --add-sub-gids) possono essere usati per manipolare gli intervalli subuid e subgid per un account utente, ma non sembra esserci alcun strumento che possa semplicemente elencarli. Ce n'è uno?

Almeno sulla mia casella Ubuntu 14.04 getentnon sembra essere pronto a gestire tali informazioni da /etc/subuide /etc/subgid.

Attualmente sto usando un piccolo script di shell, usando awkallo scopo.


Ecco un estratto da 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
Il supporto degli strumenti per gli spazi dei nomi è in ritardo rispetto al supporto del kernel, quindi non mi sorprenderebbe se la risposta fosse "questi strumenti non esistono ancora" o almeno "questi strumenti non sono ancora arrivati ​​alla maggior parte delle distribuzioni".
Gilles 'SO- smetti di essere malvagio'

Risposte:


1

Per il momento, ecco lo script di shell che ho usato.

#!/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

Sintassi:

showsubids [username]

Se non viene fornito alcun nome utente, verranno elencati tutti. Se viene fornito un nome utente, verranno visualizzate solo le voci per esso.

La gestione degli errori non è ottimale, ma se aiuta qualcuno ...

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.