Форум русскоязычного сообщества Ubuntu


Хотите сделать посильный вклад в развитие Ubuntu и русскоязычного сообщества?
Помогите нам с документацией!

Автор Тема: Пакетное заведение пользователей и групп  (Прочитано 690 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн zakhariy

  • Автор темы
  • Новичок
  • *
  • Сообщений: 4
    • Просмотр профиля
Доброго времени суток всем.

Внедряем на работе решения на Ubuntu. И теперь возникла необходимость облегчить часть рутинных операций. В частности есть задача завести целую толпу пользователей и групп. Сразу скажу, что в программировании полный ноль. Первую информацию по скриптам в bash прочитал пару дней назад.
Самостоятельно сумел набросать только вот это:

(Нажмите, чтобы показать/скрыть)

Общее количество пользователей больше сотни. Как это правильно реализовать в скрипте? Читал про переменные, циклы и массивы. В итоге в голове каша.

whatdoyouneed

  • Гость
Re: Пакетное заведение пользователей и групп
« Ответ #1 : 07 Января 2015, 10:25:24 »
Задача как-бы совсем не сложная, но посоветовать что-то конкретно трудно, поскольку неясно

1) какие группы вы создаете и как предполагается распределение пользователей по группам,

2) какие еще данные, кроме логина, предполагается вводить при создании пользователя - конкретно, как будет назначаться пароль.

Оффлайн zakhariy

  • Автор темы
  • Новичок
  • *
  • Сообщений: 4
    • Просмотр профиля
Re: Пакетное заведение пользователей и групп
« Ответ #2 : 07 Января 2015, 13:04:06 »
Название группы=названию города (omsk). А имя пользователя=названию города+порядковый номер (omsk001 к примеру). То есть будет примерно 5-6 групп (разные города) и по несколько сотен пользователей в каждой группе. С паролем я вот тоже не совсем понял как лучше сделать. В моем примере пользователь создается и помещается в нужную группу. Но зайти под ним не получается. В мануале сказано, что "по умолчанию пароль не задается, но учетная запись пользователя будет заблокирована до установки пароля". Как я понял, видимо с помощью утилиты passwd.
Данных никаких кроме логина. Да и пароль возможно будет одинаков для всех пользователей, в пределах одной группы.
« Последнее редактирование: 07 Января 2015, 13:53:31 от zakhariy »

Оффлайн spk-ubuntu

  • Активист
  • *
  • Сообщений: 502
    • Просмотр профиля
Re: Пакетное заведение пользователей и групп
« Ответ #3 : 07 Января 2015, 14:23:37 »
Примерно что-то вроде этого:
#/bin/bash

grpname=omsk # назв.группы
userpasswd=qwerty # пароль пользователей
nusers=10 # кол-во пользователй
userlist=/tmp/userlist.txt # файл с инфо о созданных пользователях

date > $userlist
echo "=============" >> $userlist

for n in $(seq 1 $nusers); do
    username=${grpname}${n}
    echo $username $userpasswd >> $userlist   
    useradd -G $grpname $username
    echo "${username}:${userpasswd}" | chpasswd
done

Пользователь решил продолжить мысль [time]07 Январь 2015, 15:32:47[/time]:
запускать от суперпользователя (через sudo)

Пользователь решил продолжить мысль 07 Января 2015, 14:40:23:
И ещё - в useradd желательно прописать обязательную смену пароля (-e -f).
То есть будет примерно 5-6 групп (разные города) и по несколько сотен пользователей в каждой группе.
Вообще, такое количество пользователей обычно подразумевает централизованное ведение их базы (AD или FreeIPA).
« Последнее редактирование: 07 Января 2015, 14:40:23 от spk-ubuntu »

Оффлайн zakhariy

  • Автор темы
  • Новичок
  • *
  • Сообщений: 4
    • Просмотр профиля
Re: Пакетное заведение пользователей и групп
« Ответ #4 : 07 Января 2015, 17:47:11 »
spk-ubuntu спасибо огромное! Насчет централизованной базы (FreeIPA) придется думать. Пока есть только AD.

 

Страница сгенерирована за 0.016 секунд. Запросов: 21.