Пользователь создает скрипт из файла CSV [закрыт]

smemstat - еще один вариант, он будет сообщать использование памяти с разделяемой памятью, разделенной пропорционально между процессами

-2
задан 22 May 2017 в 12:46

2 ответа

Из того, что я видел в вашем собственном скрипте, для создания пользователей, для вас будет работать что-то вроде этого:

Помните, что имя группы не должно содержать пробелов. Вы просто не можете использовать -p password , сначала пароль должен быть зашифрован.

script.sh:

#!/bin/bash file="data" IFS="," while read name user pass group do getent group $group >/dev/null || groupadd $group useradd -m -g $group $user -s /bin/bash chpasswd <<< "$user:$pass" # force user to change his/her password after login passwd -e $user done < "$file"

для контроля дискового пространства, я предлагаю что-то подобное в файле /etc/crontab:

59 23 * * * root bash -c "echo ----; date; du -hd1 /home;" >> /var/log/storage.log
1
ответ дан 18 July 2018 в 12:56

Из того, что я видел в вашем собственном скрипте, для создания пользователей, для вас будет работать что-то вроде этого:

Помните, что имя группы не должно содержать пробелов. Вы просто не можете использовать -p password , сначала пароль должен быть зашифрован.

script.sh:

#!/bin/bash file="data" IFS="," while read name user pass group do getent group $group >/dev/null || groupadd $group useradd -m -g $group $user -s /bin/bash chpasswd <<< "$user:$pass" # force user to change his/her password after login passwd -e $user done < "$file"

для контроля дискового пространства, я предлагаю что-то подобное в файле /etc/crontab:

59 23 * * * root bash -c "echo ----; date; du -hd1 /home;" >> /var/log/storage.log
1
ответ дан 24 July 2018 в 20:04
  • 1
    Не следует передавать пароли или хэши паролей в качестве аргументов командной строки. Вы можете использовать chpasswd <<< "$user:$pass" после создания учетной записи пользователя. Вы также можете отключить вывод getent с помощью >&-. В противном случае хороший ответ. +1 – David Foerster 22 May 2017 в 11:52
  • 2
    Спасибо за предложения, я обновил ответ;) Есть ли какая-то причина для первого? не может узнать, что отличается от chpasswd. – Ravexina 22 May 2017 в 11:59
  • 3
    Разница заключается в том, что с chpasswd пароль предоставляется через стандартный ввод, который другие пользователи не могут проверять в отличие от командной строки passwd (или любого процесса), если они, случается, смотрят в нужный момент (или имеют программу смотреть на них). :-) Если вы просмотрите список процессов, вы заметите, что командная строка процессов, принадлежащая root, явно видна обычным пользователям. – David Foerster 22 May 2017 в 12:01

Другие вопросы по тегам:

Похожие вопросы: