Скрипт Ubuntu для добавления нескольких пользователей с apache userdir и mysql username
В Ubuntu 12.04 у меня возникают трудности при создании скрипта (так как я не знаком с ним), и мне поручено добавить нескольких пользователей из списка имен в файле usernames.txt.
- У пользователей будет URL: hxxp:// имя хоста /~userN, где N - целое число.
- Пользователи могут использовать SSH с паролем, который совпадает с именем пользователя.
- У пользователей будет файл /home/userN/public_html/index.html, состоящий из текста: Hello userN
- У пользователей также есть база данных с именем и паролем userN.
Я настроил apache userdir, MySQL. Спасибо за любую помощь...
1 ответ
Решение
#!/bin/sh
echo '[mysql]' > ~/.my.cnf
echo -e 'user\t\t= root' >> ~/.my.cnf
echo -e 'password\t= <root password>' >> ~/.my.cnf
while read u; do
# 1. config in Apache
# 2. DON'T DO THIS. Why do you want to give ssh access to these users?
/usr/sbin/useradd -m -p $(perl -e 'print crypt($ARGV[0], "password")' $u) $u
# 3. Check to see if `public_html` directory exist
[ ! -d /home/$u/public_html ] && mkdir /home/$u/public_html
echo 'Hello '$u > /home/$u/public_html/index.html
# 4. Make sure that you can login to MySQL without prompting for password
mysql -e "create database $u; grant all privileges on $u.* to $u@'localhost' identified by '$u';"
done < usernames.txt