Итак, я создаю веб-сервер и сервер MySQL с нуля ...
Сервер A будет иметь Apache, а сервер PHP B будет иметь MySQL На обоих серверах работает сервер Ubuntu 12.04 LTS
Я планирую позволить моей семье и друзьям иметь свои собственные учетные записи (как РЕАЛЬНЫЙ веб-хостинг!) и решили попытаться написать сценарий процесса создания учетной записи. Теперь я могу делать простые однострочные сценарии в Linux или пакетном сценарии DOS, черт возьми, из того, что я хочу сделать, но полноценные сценарии оболочки меня пугают.
Итак, вот что у меня есть ... Будет ли это работать без катастрофического обвала ???
REM Lets prompt for the user info...
echo -n "Please enter the new username: "
read user
echo -n "Enter the default password: "
read password
home=/var/www/$user
REM Create the user and assign the password
sudo useradd $user
net user $user $password
REM Create them an account on the MySQL server
database='$user'_db
mysql [mysql-server-hostname] -u root@[hostname] -p [pass] -e "create user '$user'@'%' identified by '$password';"
mysql [mysql-server-hostname] -u root@[hostname] -p [pass] -e "create database $database;"
mysql [mysql-server-hostname] -u root@[hostname] -p [pass] -e "grant all on '$database'.* to '$user'@%;"
REM Making some dirs
mkdir $home
mkdir $home/public_html
mkdir $home/public_ftp
usermod -m -d $home
REM Gotta let them have access
chown -R $user:$user $home
chmod 755 $home/public_html
chmod 755 $home/public_ftp
REM Add to some groups
useradd -G sftp $user
useradd -G ftp $user
useradd -G ssh $user
/etc/init.d/apache2 restart