8.19. Серийное включение пользователей в группы

Проблема
Требуется добавить большое количество пользователей в группу.
Решение
Вставьте список имен прямо в файл /etc/group.
Далее описан быстрый способ построения списка пользователей для вставки
в /etc/group. Он основан на схеме нумерации UID, позволяющей легко отсортиро вать нужную группу пользователей. Для примера воспользуемся схемой «Trainers/
Coaches/Players», описанной в разделе 8.2. Добавим в группу Trainers несколько
новых членов:
$ awk -F: '($3 >= 1050) && ($3 <= 1060) { print $1}' /etc/passwd | tr '\n' '.'
bcool. bk i nd, fmow. kthxbye. oknodo
Теперь скопируйте и вставьте список в /etc/group.
А если в вашей системе нет аккуратной, четкой схемы нумерации UID? Вос пользуйтесь данными GECOS. Выберите одного из полей для хранения метки.
Поле «прочее» лучше всего подходит для этой цели, поскольку пользователи не
могут изменять его по своему усмотрению. Оно находится в данных GECOS —
пяти полей, разделенных запятыми. Данные GECOS выглядят примерно так:
bcool:х:1300:1300:Bob Cool trainer:/home/bkind:/bin/bash
bkind:x:1055:1055:Bev Kind trainer:/home/bkind:/bin/bash
После добавления меток выборка пользователей легко производится при по мощи grep и awk:
$ cat /etc/passwd grep trainer awk -F: '{ print $1}' | tr '\n' ','
bkind.bcool.
См. также
passwd(5), awk(l).