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

相关推荐

  • linux用户与组管理

    一、linux用户与组管理的基本介绍 1、任何一个用户想要使用Linux系统都要向管理员申请一个账号,对这些账号的管理即是对用户的管理,所谓组,就是多个账号的集合。用户和组管理可以提高用户的管理效率、工作效率以及系统的安全性,比如将同一个部门的成员放在一个组里并设置权限,这样可有效的对资源共享,同时可以避免其他部门的人恶意破坏。 2、用户和组的管理内容一般有…

    Linux干货 2016-08-02
  • 第10天:程序包,脚本,sed

    http://note.youdao.com/yws/public/redirect/share?id=b9432a76ff1180b42e01f6eb7c9fc90e&type=false

    Linux干货 2016-08-18
  • 马哥教育21期网络班—第一周课程+练习

    计算机的组成及功能 根据冯·诺依曼原理 现在计算机有五部分组成 分别是:运算器、控制器、存储器、输入设备和输出设备 现在把运算器和控制器做到一块就是所谓的CPU CPU = 运算器+控制器 存储器:memory 用于存储信息的记忆设备,存储器分为ROM和RAM 编址存储设备 ROM:只读存储器,寻址地址空间的组成部分 RAM:随机存储器 输入和输出设备: 输…

    Linux干货 2016-06-26
  • Week2–Linux基础三

    一. Linux上的文件管理类命令都有哪些,其常用的使用方法和例子是啥呢? 文件管理类命令大概就是这些: ls, cd, pwd, mkdir, rmdir, cp, rm, mv, touch, cat, more, less, head, tail, file, grep. 目录或文件操作类: 1. ls: (查看文件名命令) -a :全部的文件,连同隐…

    Linux干货 2016-12-12
  • 文本处理三剑客之 Sed

         Sed是一种流编辑器,它一次处理一行内容。处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”(pattern space),接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送往屏幕。接着处理下一行,这样不断重复,直到文件末尾。文件内容并没有改变,除非你使用重定向存储输出。Sed主要用来自…

    2017-08-26
  • inode 是什么及绝对路径和相对路径和一些目录相关命令总结

    inode是什么          每个分区又分两个区,元数据区和数据区。     元数据区主要存储文件的权限,属主属组,时间戳,文件的存储位置指针….就如一本书有目录页和内容页一样,目录页上的记录的是内容的页数,可以通过目录页的页数直接…

    Linux干货 2016-08-02