Две проблемы:
1) adduser в debain не может задавать пароль через -p. Как исправить, или чем пользоваться.chpasswd не предлагать.
2) какой ключ нужен что-бы все дополнительные данные
[console]
Enter the new value, or press ENTER for the default
Full Name []:
Room Number []:
Work Phone []:
Home Phone []:
Other []:
Is the information correct? [Y/n] y
[/console]
не запрашивались на ввод.
[Решено] Автоматизация добавления пользователей
Попробуйте useradd.
Пётр.
Peter, спс. погляжу
Другой вопрос.
для useradd -p нежен не пароль а его хэш. как сгенерировать?
Peter, спс. погляжу
Другой вопрос.
для useradd -p нежен не пароль а его хэш. как сгенерировать?
Там же сказано - функцией crypt. Я сейчас в Fedora 10, crypt входит в glibc.
Не помню сколько лет назад, я для экспериментов вызывал её из программы,
чтобы посмотреть результат. Т.е. её надо вызывать так же, как это делает
passwd.
Пётр.
Не помню сколько лет назад, я для экспериментов вызывал её из программы,
чтобы посмотреть результат.
А можно скрипт как это делать?
Нет у меня такого скрипта. Если установлен пакет glibc-doc-reference,
то в нём и в html-форме и в info libc->* Cryptographic Functions::
в описании crypt есть пример программы с её вызовом, но я в него
не вникал.
Пётр.
для useradd -p нежен не пароль а его хэш. как сгенерировать?
useradd -p $(perl -e "print crypt('userpasswd','xx')") usernameИли можно проще командой mkpasswd или еще проще chpasswd
А в некоторых ( не во всех ) дистрибутивах, у команды passwd есть ключик --stdin, который позволяет команде брать пароль со стандартного ввода.
:rolleyes:
inneska, мне со стандартного входа не надо. Нужен один пароль для всех пользователей, будь их хоть тыща.
.chpasswd не предлагать.
А чем он не подходит?
мне со стандартного входа не надо. Нужен один пароль для всех пользователей, будь их хоть тыща.
можно ведь вот так:
echo userpasswd | passwd --stdin username
:P
А чем он не подходит?
Он считывает пароли из файла, где каждому логину присвоен пароль.
Пробовал # chpasswd< echo "user:12345" не прокатывает.
echo userpasswd | passwd --stdin username
Вечером попробую.
Пробовал # chpasswd< echo "user:12345" не прокатывает.
Надо было так:
echo "user:12345" | chpasswd
Туплю...вечером, опять-же, попробую)
useradd --gid $gn -Nm -s/bin/bash $wu && echo "$wu:123456"|chpasswd
#$wu - имя пользователя
#$gn - имя группы
Всем спасибо за ответы.