File: //bin/env_init.sh
#!/bin/bash
dbrootpwd=`< /dev/urandom tr -dc A-Za-z0-9 | head -c8`
wordpressrootpwd=`< /dev/urandom tr -dc A-Za-z0-9 | head -c8`
ftpuserpwd=`< /dev/urandom tr -dc A-Za-z0-9 | head -c8`
pureftpd_install_dir=/usr/local/pureftpd
run_user=www
Directory=/data/wwwroot
FTP_tmp_passfile=${pureftpd_install_dir}/etc/pureftpd_psss.tmp
Puredbfile=${pureftpd_install_dir}/etc/pureftpd.pdb
Passwdfile=${pureftpd_install_dir}/etc/pureftpd.passwd
FTP_bin=${pureftpd_install_dir}/bin/pure-pw
echo -e "${ftpuserpwd}\n${ftpuserpwd}" > $FTP_tmp_passfile
if [ -e "${Passwdfile}" ] && [ -n "`grep ^ftpuser: ${Passwdfile}`" ]; then
${FTP_bin} userdel ftpuser -f ${Passwdfile} -m
${FTP_bin} mkdb ${Puredbfile} -f ${Passwdfile} > /dev/null 2>&1
fi
$FTP_bin useradd ftpuser -f $Passwdfile -u $run_user -g $run_user -d $Directory -m < $FTP_tmp_passfile
[ $? -eq 0 ] && [ -e /root/ReadMe ] && sed -i "s+^FTP password:.*+FTP password: ${ftpuserpwd}+" /root/ReadMe
$FTP_bin mkdb $Puredbfile -f $Passwdfile > /dev/null 2>&1
/root/oneinstack/reset_db_root_password.sh --password ${dbrootpwd} -q
[ -e /root/ReadMe ] && sed -i "s+^MySQL root password:.*+MySQL root password: ${dbrootpwd}+" /root/ReadMe
if [ -e /data/wwwroot/wordpress/wp-config.php ]; then
PUBLIC_IPADDR=$(/root/oneinstack/include/get_public_ipaddr.py)
sed -i "s+^define( 'DB_PASSWORD.*+define( 'DB_PASSWORD', '${dbrootpwd}' );+" /data/wwwroot/wordpress/wp-config.php
/usr/local/mysql/bin/mysql -uroot -p${dbrootpwd} -e "update wordpress.wp_users set user_pass=md5('${wordpressrootpwd}') where user_login='admin';"
sed -i "s+^Wordpress admin password:.*+Wordpress admin password: ${wordpressrootpwd}+" /root/ReadMe
/usr/local/mysql/bin/mysql -uroot -p${dbrootpwd} -e "update wordpress.wp_users set user_pass=md5('${wordpressrootpwd}') where user_login='admin';"
/usr/local/mysql/bin/mysql -uroot -p${dbrootpwd} -e "UPDATE wordpress.wp_options SET option_value = replace(option_value,'http://47.111.181.115','http://${PUBLIC_IPADDR}') WHERE option_name = 'home' OR option_name = 'siteurl';"
/usr/local/mysql/bin/mysql -uroot -p${dbrootpwd} -e "UPDATE wordpress.wp_posts SET post_content = replace(post_content,'http://47.111.181.115','http://${PUBLIC_IPADDR}');"
/usr/local/mysql/bin/mysql -uroot -p${dbrootpwd} -e "UPDATE wordpress.wp_posts SET guid = replace(guid,'http://47.111.181.115','http://${PUBLIC_IPADDR}');"
fi
/root/oneinstack/upgrade.sh --oneinstack
[ -e /etc/rc.d/rc.local ] && sed -i '/env_init.sh/d' /etc/rc.d/rc.local || sed -i '/env_init.sh/d' /etc/rc.local