Сценарій для додавання декількох користувачів в ubuntu (масово)


9

Мені потрібно додати 10 користувачів за сценарієм в Ubuntu 12.04.

Це може скоротити час, додаючи користувачів вручну, і я можу застосувати цей скрипт на іншому робочому столі.

Кожен користувач матиме конкретного користувача та певну групу.

Будь-яка ідея?


Відповіді:


5

Відкрийте термінал і введіть: vim /tmp/nameщоб створити файл та імена користувачів: наприклад:

vim /tmp/name
mika
mery
etc

Створіть користувача за допомогою "Домашнього Dir" та оболонки за замовчуванням:

for i in `cat /tmp/name`; do useradd -m -d /home/$i -s /bin/bash $i; done

Створіть пароль для кожного користувача:

for i in `cat /tmp/name`; do passwd $i; done


0

Ви можете спробувати це, я думаю.

for user in {1..200}; do
    echo "Creating user$user"
    cat <<EOF | adduser --gid 500 user$user
password
password
user$user







EOF
done

тут усі користувачі в одній групі.
guntbert

@guntbert Вони також були у відповіді ОП. Усі були в 513 в ОП.
kiri

правда, але в питанні було зазначено: "У кожного користувача буде конкретний користувач і в конкретній групі". - чого можна було досягти, опустивши --gid 500частину.
гунтберт

0

Подивіться на відповідь тут , де сказано, якщо у вас є безліч користувачів, щоб додати найкращий спосіб - це використовувати adduser(для додавання користувачів) та usermod(для додавання користувача до групи), який піклується про багато речей. Якщо ви все ще хочете з якихось - то заздалегідь зробив сценарій, є один тут , а інший тут , але я не знаю , якщо вони дійсно працюють для вас


-1

Це моє рішення. Я створив файл /tmp/userlistі додав ім'я всіх користувачів, після завершення сценарію він створить користувачів, і ви зможете знайти ім'я користувача та вказаний випадковий пароль у файлі /tmp/userlist-created. Я знаю, що це не ідеальне рішення.

root@demobox:/root : cat /tmp/userlist
xyz1
zyz2
zyz3

root@demobox:/root : cat demo.sh
#!/bin/bash

if [ -f /tmp/userlist ]
then
for i in $(cat /tmp/userlist)
do
if [ -f /usr/bin/pwgen ]
then
PASSWORD=$(pwgen -1 -s 16)
else
PASSWORD=$(cat /dev/urandom | tr -dc "passwordNSR!@#$%0-9" | fold -w 9 | head -1)
fi
useradd -s /bin/bash -d "/home/$i" -m -p "$PASSWORD" "$i"
echo "$i --------- $PASSWORD" >>/tmp/userlist-created
done
else
echo "File /tmp/userlist not found"
fi
chmod 0600 /tmp/userlist-created

root@demobox:/root : ./demo.sh

root@demobox:/root : cat /tmp/userlist-created
xyz1 --------- FivSHfdbDCRffhc7
zyz2 --------- AIjFjE0bv3FslHnp
zyz3 --------- JazcGcKYp2Y0I3Rk

root@demobox:/root : egrep "xyz1|zyz2|zyz3" /etc/passwd
xyz1:x:9016:100::/home/xyz1:/bin/bash
zyz2:x:9017:100::/home/zyz2:/bin/bash
zyz3:x:9018:100::/home/zyz3:/bin/bash
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.