LAMP

练习:编译安装amp,提供两个基于主机名的虚拟主机

     (1) https, 部署pma

     (2) 部署wordpress

编译安装:

mariadb:

# wget 10.1.0.1:/pub/Sources/7.x86_64/mariadb/mariadb-5.5.46-linux-x86_64.tar.gz
# tar -xf mariadb-5.5.46-linux-x86_64.tar.gz -C /usr/local/
# cd /usr/local
# ln -sv mariadb-5.5.46-linux-x86_64 mysql
# cd mysql
# groupadd -r mysql
# useradd -r -g mysql mysql
# id mysql
# chown mysql:root ./*
# mkdir /mydata/data -p
# chown mysql:mysql /mydata/data
# scripts/mysql_install_db --user=mysql --datadir=/mydata/data
# vim /etc/profile.d/mysql.sh
    export PATH=/usr/local/mysql/bin:$PATH
# . /etc/profile.d/mysql.sh
# mv /etc/my.cnf{,.bak}
# cp support-files/my-small.cnf /etc/my.cnf
# vim /etc/my.cnf   // 在[mysqld]下追加
    datadir = /mydata/data
    skip_name_resolve = ON
    innodb_file_per_table = ON
# cp support-files/mysql.server /etc/rc.d/init.d/mysqld
# chmod +x /etc/rc.d/init.d/mysqld
# service mysqld start
# chkconfig --add mysqld

httpd:

# wget 10.1.0.1:/pub/Sources/sources/httpd/httpd-2.4.10.tar.bz2
# yum groupinstall "Development Tools" "Server Platform Development" -y
# yum install pcre-devel openssl-devel libevent-devel  apr-devel apr-util-devel -y
# tar -xf httpd-2.4.10.tar.bz2
# cd httpd-2.4.10/
# ./configure --prefix=/usr/local/apache2 --sysconfdir=/etc/httpd \     #\表示该行未结束
--enable-so --enable-ssl --enable-cgi --enable-rewrite --enable-modules=most \
--enable-mpms-shared=all --with-mpm=prefork --with-pcre --with-zlib --with-apr=/usr --with-apr-util=/usr
# make -j 2
# make install
# vim /etc/httpd/httpd.conf
    #<IfModule dir_module>   中修改成
    DirectoryIndex index.html index.php
    
    #<IfModule mime_module>  中追加
    AddType application/x-httpd-php .php
# vim /etc/profile.d/httpd.sh
    export PATH=/usr/local/apache2/bin:$PATH
# . /etc/profile.d/mysql.sh
# apachectl start

安装php5:

# wget 10.1.0.1:/pub/Sources/sources/php/php-5.4.40.tar.bz2 &> /dev/null
# yum install gd-devel freetype-devel libmcrypt-devel libxml2-devel -y
# tar -xf php-5.4.40.tar.bz2
# cd php-5.4.40/
# ./configure --prefix=/usr/local/php --with-mysql=/usr/local/mysql  --with-openssl \      #\表示该行未结束
--with-mysqli=/usr/local/mysql/bin/mysql_config --enable-mbstring --enable-xml \
--enable-sockets --with-freetype-dir --with-gd --with-libxml-dir=/usr --with-zlib \
--with-jpeg-dir --with-png-dir --with-mcrypt --with-apxs2=/usr/local/apache2/bin/apxs \
--with-config-file-path=/etc/php.ini --with-config-file-scan-dir=/etc/php.d/
# make -j 2
# make install
# cd /usr/local/php
# cp php.ini-production /etc/php.ini
# mkdir /etc/php.d/
# apachectl restart

安装wordpress

# wget 10.1.0.1:/pub/Sources/sources/http/wordpress-4.3.1-zh_CN.zip
# mv wordpress-4.3.1-zh_CN.zip /usr/local/apache2/htdocs
# cd /usr/local/apache2/htdocs
# unzip wordpress-4.3.1-zh_CN.zip
# mysql
    MariaDB [(none)]> CREATE DATABESE wordpress;
    MariaDB [(none)]> GRANT ALL ON wordpress.* TO 'gm'@'localhost' IDENTIFIED BY 'gm625';
    MariaDB [(none)]> \q
# chmdo 777 wordpress

输入网址:10.1.43.101/wordpress   进行安装

LAMP

LAMP

LAMP

LAMP           

LAMP

LAMP

练习2:脚本实现amp编译安装

#!/bin/bash
#description : 编译安装LAMP
#version 0.1
#author gm
#date 20161012
#


#mariadb:
echo "wget mariadb Package."
wget 10.1.0.1:/pub/Sources/7.x86_64/mariadb/mariadb-5.5.46-linux-x86_64.tar.gz &> /dev/null && echo "wget mariadb Package secuessful."

tar -xf mariadb-5.5.46-linux-x86_64.tar.gz -C /usr/local/
cd /usr/local
ln -sv mariadb-5.5.46-linux-x86_64 mysql

echo "add mysql group and mysql user."
groupadd -r mysql &> /dev/null
useradd -r -g mysql mysql &> /dev/null

echo "change file user:group."
cd mysql
chown mysql:root ./*
mkdir /mydata/data -p
chown mysql:mysql /mydata/data

echo "first bulid mysqldb."
scripts/mysql_install_db --user=mysql --datadir=/mydata/data && echo -e "\033[33mmysql db is secuessful.\033[0m"

echo "change PATH."
cat > /etc/profile.d/mysql.sh << end
export PATH=/usr/local/mysql/bin:$PATH
end
. /etc/profile.d/mysql.sh

echo "Add configure file."
mv /etc/my.cnf{,.bak}
cp support-files/my-small.cnf /etc/my.cnf
sed -i '/\[mysqld\]/a \datadir = /mydata/data\nskip_name_resolve = ON\ninnodb_file_per_table = ON' /etc/my.cnf

echo "Add server file."
cp support-files/mysql.server /etc/rc.d/init.d/mysqld
chmod +x /etc/rc.d/init.d/mysqld
chkconfig --add mysqld
service mysqld start &> /dev/null && echo -e "\033[32mmariadb server is start.\033[0m"


#httpd:
echo "wget httpd Package."
wget 10.1.0.1:/pub/Sources/sources/httpd/httpd-2.4.10.tar.bz2 &> /dev/null && echo "wget httpd Package secuessful."
yum groupinstall "Development Tools" "Server Platform Development" -y -q
yum install pcre-devel openssl-devel libevent-devel  apr-devel apr-util-devel -y -q

tar -xf httpd-2.4.10.tar.bz2
cd httpd-2.4.10/

echo "configure httpd.............." 
./configure --prefix=/usr/local/apache2 --sysconfdir=/etc/httpd --enable-so --enable-ssl \     #\表示该行未结束
--enable-cgi --enable-rewrite --enable-modules=most --enable-mpms-shared=all --with-mpm=prefork \
--with-pcre --with-zlib --with-apr=/usr --with-apr-util=/usr &> /dev/null
make -j 2  &> /dev/null
make install &> /dev/null

echo "change PATH."
cat > /etc/profile.d/httpd.sh << end
export PATH=/usr/local/apache2/bin:$PATH
end
. /etc/profile.d/mysql.sh

echo "change /etc/httpd/httpd.conf file."
echo "ServerName www.gm.com:80" >> /etc/httpd/httpd.conf
sed -i 's@^[[:space:]]*DirectoryIndex.*@& index.php@' /etc/httpd/httpd.conf
sed -i '/^[[:space:]]*AddType/a \AddType application/x-httpd-php .php' /etc/httpd/httpd.conf
apachectl start && echo -e "\033[33mhttpd is start.\033[0m"


#安装php5:
echo "wget php Package."
wget 10.1.0.1:/pub/Sources/sources/php/php-5.4.40.tar.bz2 &> /dev/null && echo "wget php Package secuessful."
yum install gd-devel freetype-devel libmcrypt-devel libxml2-devel -y -q
tar -xf php-5.4.40.tar.bz2
cd php-5.4.40/

echo "configure php................."
./configure --prefix=/usr/local/php --with-mysql=/usr/local/mysql  --with-openssl --with-mysqli=/usr/local/mysql/bin/mysql_config \    #\表示该行未结束
--enable-mbstring --enable-xml --enable-sockets --with-freetype-dir --with-gd --with-libxml-dir=/usr --with-zlib \
--with-jpeg-dir --with-png-dir --with-mcrypt --with-apxs2=/usr/local/apache2/bin/apxs --with-config-file-path=/etc/php.ini \
--with-config-file-scan-dir=/etc/php.d/ &> /dev/null

make -j 2 &> /dev/null
make install &> /dev/null

cp php.ini-production /etc/php.ini
mkdir /etc/php.d/
apachectl restart && echo -e "\033[33mhttpd+php is start.\033[0m"


原创文章,作者:megedugao,如若转载,请注明出处:http://www.178linux.com/50733

(0)
megedugaomegedugao
上一篇 2016-10-12 19:00
下一篇 2016-10-12 20:44

相关推荐

  • bash的工作特性之命令执行状态返回值和命令行展开

    bash特性之一:命令别名 将一个命令用其他名字来代替,可以用别名来简化操作。 获取当前用户可用的别名的定义: ~]#alias NAME=’COMMAND’ bash的特性之二:命令历史 shell进程会保存其会话中用户曾经执行过的命令;命令通过其“历史文件”来持久保存此前执行过的命令;每个用户都有其自己专用的历史文件; HISTSIZE:shell进程的…

    Linux干货 2016-11-06
  • zabbix如何监控nginx的status

    nginx   status配置 server {                 listen      80;                 server…

    Linux干货 2016-02-19
  • Linux基础(九)-shell编程练习

    1、写一个脚本,判断当前系统上所有用户的shell是否为可登录shell(即用户的shell不是/sbin/nologin);分别这两类用户的个数;通过字符串比较来实现; #!/bin/bash declare -i nologin=0 declare -i login=0 while read l…

    Linux干货 2016-11-20
  • 编译Bind和压力测试

    编译安装bind ·下载bind:     isc.org:          bind-9.8          bind-9.9   &…

    Linux干货 2016-09-25
  • 马哥教育网络班22期+第五周课程练习

    1、显示当前系统上root、fedora或user1用户的默认shell; [xw@localhost ~]$ cat /etc/passwd | grep -E "^(root|fedora|user1)\>" | cut -d:&…

    Linux干货 2016-10-09
  • N25-第一周作业

    第一周博客作业 1.描述计算机的组成及其功能 2.按系列罗列Linux的发行版,并描述不同发行版之间的联系与区别 3.描述Linux哲学思想,并按照自己的理解对其进行解释性描述。 4.说明Linux系统上命令的使用格式:详细介绍,ifconfg,echo,tty,startx,export pwd,history,shutdown,poweroff,rebo…

    Linux干货 2016-12-02