半原创的东西。
根据兄弟连李明老师的视频,根据自己的情况再整理了一下。
Linux掌握的还很渣,大家看着参考一下就好了。
我的环境是64位的Debian8.5。
系统装完之后把这些工具带上,虽然不见得都会用到:
cmake,make,gcc,g++,bison,libtool,zip,tar,dos2unix,wget,vim
用到的源码包如下:
autoconf-2.61.tar.gz
freetype-2.3.5.tar.gz
gd-2.0.35.tar.gz
httpd-2.2.4.tar.gz
jpegsrc.v9a.tar.gz
libmcrypt-2.5.8.tar.gz
libpng-1.2.31.tar.gz
libxml2-2.6.30.tar.gz
mysql-5.5.44.tar.gz
ncurses-5.6.tar.gz
php-5.3.5.tar.gz
phpMyAdmin-3.4.10.2-all-languages.tar.gz
zlib-1.2.5.1.tar.gz
在root目录下建一个文件夹lamp-src,把源码包都放进去。完了之运行一下安装脚本就可以了。
#!/bin/bash
cd /root/lamp-src
ls *.tar.gz > ls.list
for TAR in `cat ls.list`
do
tar -zxf $TAR && echo "$TAR unpackage ok" >> /root/i.log || echo "$TAR unpackage not ok" >> /root/i.log || exit 0
done
cd /root/lamp-src/libxml2-2.6.30/
./configure --prefix=/usr/local/libxml2/ && echo " libxml2 configure ok" >> /root/i.log && make && echo " libxml2 make ok" >> /root/i.log && make install && echo " libxml2 make install ok" >> /root/i.log
cd /root/lamp-src/libmcrypt-2.5.8/
./configure --prefix=/usr/local/libmcrypt && echo " libmcrypt configure ok" >> /root/i.log && make && echo " libmcrypt make ok" >> /root/i.log && make install && echo " libmcrypt make install ok" >> /root/i.log
cd /root/lamp-src/libmcrypt-2.5.8/libltdl/
./configure --enable-ltdl-install && echo " libltdl configure ok" >> /root/i.log && make && echo " libltdl make ok" >> /root/i.log && make install && echo " libltdl make install ok" >> /root/i.log
#---
cd /root/lamp-src/zlib-1.2.5.1/
CFLAGS="-O3 -fPIC" ./configure && echo " zlib CFLAGS=-O3 –fPIC configure ok" >> /root/i.log && make && echo " zlib make ok" >> /root/i.log && make install && echo " zlib make install ok" >> /root/i.log
#----这里要确保libtool装上了,如果没有,手动apt-get install libtool,不然后面的装不上,提示找不到libtool命令
cd /root/lamp-src/libpng-1.2.31/
./configure --prefix=/usr/local/libpng --enable-shared && echo " libpng configure ok" >> /root/i.log && make && echo " libpng make ok" >> /root/i.log && make install && echo " libpng make install ok" >> /root/i.log
#---
mkdir /usr/local/jpeg9
mkdir /usr/local/jpeg9/bin
mkdir /usr/local/jpeg9/lib
mkdir /usr/local/jpeg9/include
mkdir -p /usr/local/jpeg9/man/man1
cd /root/lamp-src/jpeg-9a/
./configure --prefix=/usr/local/jpeg9/ --enable-shared --enable-static && echo " jpeg configure ok" >> /root/i.log && make && echo " jpeg make ok" >> /root/i.log && make install && echo " jpeg make install ok" >> /root/i.log
cd /root/lamp-src/freetype-2.3.5/
./configure --prefix=/usr/local/freetype/ && echo " freetype configure ok" >> /root/i.log && make && echo " freetype make ok" >> /root/i.log && make install && echo " freetype make install ok" >> /root/i.log
cd /root/lamp-src/autoconf-2.61/
./configure && echo " autoconf configure ok" >> /root/i.log && make && echo " autoconf make ok" >> /root/i.log && make install && echo " autoconf make install ok" >> /root/i.log
cd /root/lamp-src/gd-2.0.35/
./configure --prefix=/usr/local/gd2/ --with-jpeg=/usr/local/jpeg9/ --with-freetype=/usr/local/freetype/ && echo " gd2 configure ok" >> /root/i.log && make && echo " gd2 make ok" >> /root/i.log && make install && echo " gd2 make install ok" >> /root/i.log
cd /root/lamp-src/httpd-2.2.4/
./configure --prefix=/usr/local/apache2/ --sysconfdir=/etc/httpd/ --with-included-apr --disable-userdir --enable-so --enable-deflate=shared --enable-expires=shared --enable-rewrite=shared --enable-static-support && echo " httpd configure ok" >> /root/i.log && make && echo " httpd make ok" >> /root/i.log && make install && echo " httpd make install ok" >> /root/i.log
cd /root/lamp-src/ncurses-5.6/
./configure --with-shared --without-debug --without-ada --enable-overwrite && echo " ncurses configure ok" >> /root/i.log && make && echo " ncurses make ok" >> /root/i.log && make install && echo " ncurses make install ok" >> /root/i.log
groupadd mysql
useradd -r -g mysql mysql
cd /root/lamp-src/mysql-5.5.44/
cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/usr/local/mysql/data -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_PARTITION_STORAGE_ENGINE=1 -DWITH_PERFSCHEMA_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_MYISAM_STORAGE_ENGINE=1 -DMYSQL_TCP_PORT=3306 -DENABLED_LOCAL_INFILE=1 -DWITH_EXTRA_CHARSETS=all -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_SSL=yes && echo " mysql cmake ok" >> /root/i.log && make && echo " mysql make ok" >> /root/i.log && make install && echo " mysql make install ok" >> /root/i.log
cd /usr/local/mysql/
chown mysql:mysql -R .
chown mysql:mysql /usr/local/mysql/data/
cp /root/lamp-src/mysql-5.5.44/support-files/my-large.cnf /etc/my.cnf
cp /root/lamp-src/mysql-5.5.44/support-files/mysql.server /etc/init.d/mysqld
chmod 755 /etc/init.d/mysqld
chown root:root /etc/init.d/mysqld
/usr/local/mysql/bin/mysqld_safe –user=mysql && echo " mysql start ok" >> /root/i.log
/usr/local/mysql/scripts/mysql_install_db --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data/ --user=mysql && echo " mysql_install_db scripts execute ok" >> /root/i.log
cd /root/lamp-src/php-5.3.5/
./configure --prefix=/usr/local/php/ --with-config-file-path=/usr/local/php/etc/ --with-apxs2=/usr/local/apache2/bin/apxs --with-mysql=/usr/local/mysql/ --with-libxml-dir=/usr/local/libxml2/ --with-jpeg-dir=/usr/local/jpeg9/ --with-mcrypt=/usr/local/libmcrypt/ --with-mysqli=/usr/local/mysql/bin/mysql_config --enable-soap --enable-mbstring=all --enable-sockets && echo " php configure ok" >> /root/i.log && make &&make test && echo " php make and make test is ok" >> /root/i.log && make install && echo " php make install ok" >> /root/i.log
cp /root/lamp-src/php-5.3.5/php.ini-development /usr/local/php/etc/php.ini
echo "Addtype application/x-httpd-php .php .phtml" >> /etc/httpd/httpd.conf
cp -a /root/lamp-src/phpMyAdmin-3.4.10.2-all-languages/ /usr/local/apache2/htdocs/phpmyadmin && echo " phpMyAdmin install ok" >> /root/i.log || echo " phpMyAdmin install not ok" >> /root/i.log
cd /usr/local/apache2/htdocs/phpmyadmin
cp config.sample.inc.php config.inc.php
完了之后在rc.local中加上脚本开机启动的命令。
/usr/local/apache2/bin/apachectl -k start
/usr/local/mysql/bin/mysqld_safe --user=mysql &>/dev/null &
/usr/local/mysql/bin/mysqladmin -u root password '123456789'
都弄完了重启看下端口的情况
shutdown -r nownetstat -tlun
有80和3306应该就没问题了。