diff --git a/usr/local/sbin/easyengine b/usr/local/sbin/easyengine index 5504a316..8d6db6a5 100644 --- a/usr/local/sbin/easyengine +++ b/usr/local/sbin/easyengine @@ -110,6 +110,15 @@ PHPREPO() fi } +PERCONA_REPO() +{ + # Fetch And Install The GnuPG Key + gpg --keyserver keys.gnupg.net --recv-keys 1C4CBDCDCD2EFD2A && gpg --export CD2EFD2A | apt-key add - &>> $INSTALLLOG || OwnError "Unable To Add Percona GnuPG Key" + + # Add Percona Repository + echo -e "deb http://repo.percona.com/apt $(lsb_release -cs) main \ndeb-src http://repo.percona.com/apt $(lsb_release -cs) main" > /etc/apt/sources.list.d/percona.list +} + GPGKEY() { # Force GPG KEYS Check @@ -377,7 +386,8 @@ COMMONPHP() sed -i "s/pm = dynamic/pm = ondemand/" /etc/php5/fpm/pool.d/debug.conf || OwnError "Unable To Chnage Process Manager From Dynamic To Ondemand" sed -i "s';slowlog.*'slowlog = /var/log/php5/slow.log'" /etc/php5/fpm/pool.d/debug.conf || OwnError "Unable To Change PHP Slowlog" sed -i "s';request_slowlog_timeout.*'request_slowlog_timeout = 10s'" /etc/php5/fpm/pool.d/debug.conf || OwnError "Unable To Change PHP Request Slowlog Timeout" - echo -e "php_admin_value[xdebug.profiler_output_dir] = /tmp/xdebug \nphp_admin_value[xdebug.profiler_output_name] = cachegrind.out.%p-%H-%R \nphp_admin_flag[xdebug.profiler_enable_trigger] = on \nphp_admin_flag[xdebug.profiler_enable] = off" | tee -ai /etc/php5/fpm/pool.d/debug.conf &>> $INSTALLLOG + echo -e "php_admin_value[xdebug.profiler_output_dir] = /tmp/xdebug \nphp_admin_value[xdebug.profiler_output_name] = cachegrind.out.%p-%H-%R \nphp_admin_flag[xdebug.profiler_enable_trigger] = on \nphp_admin_flag[xdebug.profiler_enable] = off" | tee -ai /etc/php5/fpm/pool.d/debug.conf &>> $INSTALLLOG \ + || OwnError "Unable To Add Xdebug Settings" fi } @@ -402,6 +412,80 @@ WP-CLI() fi } +PHP_PACKAGES() +{ + # Opcache Settings + if [ ! -d /var/www/22222/htdocs/php/opcache ] + then + # Create Directory + mkdir -p /var/www/22222/htdocs/php/opcache || OwnError "Unable To Create Opcache Directory" + + # Download Opcache Status Files + echo -e "\033[34mInstalling Opcache Tools, Please Wait...\e[0m" + wget -cqO /var/www/22222/htdocs/php/opcache/opcache.php https://raw.github.com/rlerdorf/opcache-status/master/opcache.php + wget -cqO /var/www/22222/htdocs/php/opcache/opgui.php https://raw.github.com/amnuts/opcache-gui/master/index.php + wget -cqO /var/www/22222/htdocs/php/opcache/ocp.php https://gist.github.com/ck-on/4959032/raw/0b871b345fd6cfcd6d2be030c1f33d1ad6a475cb/ocp.php + fi + + # Memcache Settings + if [ ! -d /var/www/22222/htdocs/php/memcache ] + then + # Create Directory + mkdir -p /var/www/22222/htdocs/php/memcache || OwnError "Unable To Create Memcache Directory" + + # Download phpMemcachedAdmin + echo -e "\033[34mInstalling Memcache Tools, Please Wait...\e[0m" + wget -cqO /var/www/22222/htdocs/php/memcache/memcache.tar.gz http://phpmemcacheadmin.googlecode.com/files/phpMemcachedAdmin-1.2.2-r262.tar.gz + + # Extract phpMemcachedAdmin + tar -zxf /var/www/22222/htdocs/php/memcache/memcache.tar.gz -C /var/www/22222/htdocs/php/memcache + + # Remove Unwanted Files + rm -f /var/www/22222/htdocs/php/memcache/memcache.tar.gz + fi + + if [ ! -d /var/www/22222/htdocs/php/webgrind/ ] + then + # Download Opcache Status Files + mkdir -p mkdir -p /var/www/22222/htdocs/php/webgrind/ || OwnError "Unable To Create webgrind Directory" + + # Download Webgrind + echo -e "\033[34mCloning webgrind, Please Wait...\e[0m" + git clone https://github.com/jokkedk/webgrind.git /var/www/22222/htdocs/php/webgrind/ + sed -i "s'/usr/local/bin/dot'/usr/bin/dot'" /var/www/22222/htdocs/php/webgrind/config.php + + # Install Graphviz + dpkg -l | grep graphviz &>> $INSTALLLOG + if [ $? -ne 0 ] + then + echo -e "\033[34mInstalling Graphviz, Please Wait...\e[0m" + apt-get -y install graphviz || OwnError "Unable To Install Graphviz" + fi + fi + + # Create info.php File To Display The phpinfo Information + echo -e "" &>> /var/www/22222/htdocs/php/info.php + + # Fake PHP5-FPM Status Pages + if [ ! -d /var/www/22222/htdocs/php/status/ ] + then + mkdir -p /var/www/22222/htdocs/php/status/ || OwnError "Unable To Create webgrind Directory" + touch /var/www/22222/htdocs/php/status/{www,debug} + fi + + # Anemometer Setup + if [ ! -d /var/www/22222/htdocs/db/anemometer/ ] + then + mkdir -p /var/www/22222/htdocs/db/anemometer/ || OwnError "Unable To Create Anemometer Directory" + + # Download Anemometer + git clone https://github.com/box/Anemometer.git /var/www/22222/htdocs/db/anemometer &>> $INSTALLLOG || OwnError "Unable To Clone Anemometer" + fi + + + +} + INSTALLPMA() { # Install PMA/phpMyAdmin @@ -469,7 +553,7 @@ INSTALLMYSQL() # Install MySQL echo -e "\033[34mInstalling MySQL, Please Wait...\e[0m" - $EEAPTGET install mysql-server mysqltuner \ + $EEAPTGET install mysql-server mysqltuner percona-toolkit \ || OwnError "Unable To Install MySQL" } @@ -501,7 +585,7 @@ INSTALLALL() echo -e "\033[34mInstalling Nginx PHP5 MySQL Postfix, Please Wait...\e[0m" $EEAPTGET install $NGINXPACKAGE php5-common php5-mysqlnd php5-xmlrpc \ php5-curl php5-gd php5-cli php5-fpm php5-imap php5-mcrypt php5-xdebug \ - php5-memcache memcached mysql-server mysqltuner postfix \ + php5-memcache memcached mysql-server mysqltuner percona-toolkit postfix \ || OwnError "Unable To Install Nginx PHP5 MySQL Postfix" } @@ -544,7 +628,7 @@ REMOVEMYSQL() { # Remove MySQL echo -e "\033[34mRemoving MySQL, Please Wait...\e[0m" - $EEAPTGET remove mysql-server mysqltuner \ + $EEAPTGET remove mysql-server mysqltuner percona-toolkit \ || OwnError "Unable To Remove MySQL" } @@ -564,7 +648,7 @@ REMOVEALL() echo -e "\033[34mRemoving Nginx PHP5 MySQL Postfix, Please Wait...\e[0m" $EEAPTGET remove $NGINXPACKAGE nginx-common php5-common php5-mysqlnd php5-xmlrpc \ php5-curl php5-gd php5-cli php5-fpm php5-imap php5-mcrypt php5-xdebug \ - php5-memcache memcached mysql-server mysqltuner postfix \ + php5-memcache memcached mysql-server mysqltuner percona-toolkit postfix \ || OwnError "Unable To Remove Nginx PHP5 MySQL Postfix" } @@ -600,7 +684,7 @@ PURGEMYSQL() { # Purge MySQL echo -e "\033[34mPurge MySQL, Please Wait...\e[0m" - $EEAPTGET purge mysql-server mysqltuner \ + $EEAPTGET purge mysql-server mysqltuner percona-toolkit \ || OwnError "Unable To Purge MySQL" } @@ -617,7 +701,7 @@ PURGEALL() echo -e "\033[34mRemoving Nginx PHP5 MySQL Postfix, Please Wait...\e[0m" $EEAPTGET purge $NGINXPACKAGE nginx-common php5-common php5-mysqlnd php5-xmlrpc \ php5-curl php5-gd php5-cli php5-fpm php5-imap php5-mcrypt php5-xdebug \ - php5-memcache memcached mysql-server mysqltuner postfix \ + php5-memcache memcached mysql-server mysqltuner percona-toolkit postfix \ || OwnError "Unable To Purge Nginx PHP5 MySQL Postfix" } @@ -1281,35 +1365,6 @@ PERMISSIONANDGIT() EEGITCOMMIT } -EEOPMEMCACHE() -{ - # Opcache Settings - if [ ! -d /var/www/22222/htdocs/php/opcache ] - then - mkdir -p /var/www/22222/htdocs/php/opcache || OwnError "Unable To Create Opcache Directory" - - # Download Opcache Status Files - wget -cqO /var/www/22222/htdocs/php/opcache/opcache.php https://raw.github.com/rlerdorf/opcache-status/master/opcache.php - wget -cqO /var/www/22222/htdocs/php/opcache/opgui.php https://raw.github.com/amnuts/opcache-gui/master/index.php - wget -cqO /var/www/22222/htdocs/php/opcache/ocp.php https://gist.github.com/ck-on/4959032/raw/0b871b345fd6cfcd6d2be030c1f33d1ad6a475cb/ocp.php - fi - - # Memcache Settings - if [ ! -d /var/www/22222/htdocs/php/memcache ] - then - mkdir -p /var/www/22222/htdocs/php/memcache || OwnError "Unable To Create Memcache Directory" - - # Download phpMemcachedAdmin - wget -cqO /var/www/22222/htdocs/php/memcache/memcache.tar.gz http://phpmemcacheadmin.googlecode.com/files/phpMemcachedAdmin-1.2.2-r262.tar.gz - - # Extract phpMemcachedAdmin - tar -zxf /var/www/22222/htdocs/php/memcache/memcache.tar.gz -C /var/www/22222/htdocs/php/memcache - - # Remove Unwanted Files - rm -f /var/www/22222/htdocs/php/memcache/memcache.tar.gz - fi -} - TOTALCACHENGINX() { # Installing W3 Total Cache @@ -1319,9 +1374,6 @@ TOTALCACHENGINX() # Activate W3 Total Cache wp plugin --allow-root activate w3-total-cache $NETWORKACTIVATE &>> $INSTALLLOG || OwnError "Unable To Activate W3 Total Cache Plugin" - - # Install Opcache & Memcache - EEOPMEMCACHE } SUPERCACHENGINX() @@ -1631,24 +1683,6 @@ DEBUG_PHP() else echo -e "\033[34mXdebug Already Enabled\e[0m" fi - - if [ ! -d /var/www/22222/htdocs/php/webgrind/ ] - then - # Webgrind Install - mkdir -p mkdir -p /var/www/22222/htdocs/php/webgrind/ || OwnError "Unable To Create webgrind Directory: /var/www/22222/htdocs/php/webgrind/" - echo -e "\033[34mCloning webgrind, Please Wait...\e[0m" - git clone https://github.com/jokkedk/webgrind.git /var/www/22222/htdocs/php/webgrind/ - sed -i "s'/usr/local/bin/dot'/usr/bin/dot'" /var/www/22222/htdocs/php/webgrind/config.php - - # Install Graphviz - dpkg -l | grep graphviz &>> $INSTALLLOG - if [ $? -ne 0 ] - then - echo -e "\033[34mInstalling Graphviz, Please Wait...\e[0m" - APTASSUMEYES - $EEAPTGET install graphviz || OwnError "Unable To Install Graphviz" - fi - fi } DEBUG_PHP_STOP() @@ -1982,6 +2016,12 @@ then elif [ "$3" = "mysql" ] then + # Add Percona Repository + PERCONA_REPO + + # Fix GPG Key Problems + GPGKEY + # Update The APT Cache UPDATEAPT @@ -2023,6 +2063,9 @@ then # Add PHP Launchpad Repository PHPREPO + # Add Percona Repository + PERCONA_REPO + # Fix GPG Key Problems GPGKEY