Apakah ada alat (!) Untuk membuat daftar nilai subtitle dan subtitle yang ditugaskan untuk pengguna?


14

usermod -v( --add-sub-uids) dan usermod -w( --add-sub-gids) dapat digunakan untuk memanipulasi rentang subuid dan subgid untuk akun pengguna, tetapi tampaknya tidak ada alat yang hanya dapat mencantumkannya. Apakah ada satu?

Setidaknya pada kotak Ubuntu 14.04 saya getentsepertinya tidak siap untuk menangani informasi itu dari /etc/subuiddan /etc/subgid.

Saat ini saya menggunakan skrip shell kecil, menggunakan awkuntuk tujuan tersebut.


Berikut kutipan dari 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
Dukungan alat untuk ruang nama tertinggal di belakang dukungan kernel, jadi tidak akan mengejutkan saya jika jawabannya adalah "alat ini belum ada" atau setidaknya "alat ini belum membuatnya menjadi sebagian besar distribusi".
Gilles 'SO- stop being evil'

Jawaban:


1

Untuk saat ini, inilah skrip shell yang telah saya gunakan.

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

Sintaksis:

showsubids [username]

Jika tidak ada nama pengguna yang diberikan, semua akan terdaftar. Jika nama pengguna diberikan, hanya entri untuk itu yang akan ditampilkan.

Penanganan kesalahan adalah suboptimal, tetapi jika itu membantu seseorang ...

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.