linux (ubuntu) 安装 lamp(apache、mysql、php、memcache、svn 等)

123 篇文章 0 订阅
84 篇文章 0 订阅

作者:yuliying

转自:http://blog.csdn.net/yuliying/article/details/11770189


有些软件包可能电脑上有了就不用重新装了,我因为是ubuntu server版,啥都没有所以一个个装下去了。也可以选择直接apt-get 安装。

以下是我安装lamp以及memcache , redis 等的记录有些创建文件夹,进入文件夹的命令就不写了。


mkdir /data/www

chmod 0777 /data/www

mkdir /data/logs
chmod 0777 /data/logs
mkdir /data/temp
chmod 0777 /data/temp
cd /data/temp

################# build-essential

apt-get install build-essential

(build-essential 可以一键安装编译所必须的N多软件包)

################# APR

tar -zxvf apr-1.4.6.tar.gz

./configure --prefix=/usr/local/apr

make

make install

################# APR-UTIL

tar -zxvf apr-util-1.5.2.tar.gz

./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr/bin/apr-1-config

make

make install

################# PCRE

tar -xvf pcre-8.31.tar.bz2

./configure --prefix=/usr/local/pcre

make

make install

################# zlib

tar -zxvf zlib-1.2.3.tar.gz

./configure
make
make install

################# apache
tar -xzvf httpd-2.4.3.tar.gz
./configure --prefix=/usr/local/services/apache --enable-deflate --enable-expires --enable-headers --enable-rewrite --enable-mods-shared=all --with-enable=so --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --with-pcre=/usr/local/pcre
make

在64位机器上make遇到问题: zlib/lib/libz.a: could not read symbols: Bad value

解决办法:

在zlib的MakeFile里面加上-fPIC参数
CFLAGS=-O3 -DUSE_MMAP -fPIC
就是要在编译libz.a的时候加上-fPIC参数,所以,就去修改相应的MakeFile了
重新编译下zlib就可以了

make install
cd /usr/local/services/apache
vim conf/httpd.conf   

################# apache 配置开始 ####################
DocumentRoot "/data/www"

ServerName localhost

<Directory />
  Order Deny,Allow
  Deny from All
</Directory>

<Directory "/data/www">
    Options FollowSymLinks
    AllowOverride None
    Order allow,deny
    Allow from all
</Directory>

<IfModule dir_module>
    DirectoryIndex index.html index.php
</IfModule>

<IfModule mpm_prefork_module>
ServerLimit 1000
StartServers 100
MinSpareServers 50
MaxSpareServers 100
MaxClients 1000
MaxRequestsPerChild 4000
</IfModule>

<IfModule mod_deflate.c>
    SetOutputFilter DEFLATE
    AddOutputFilterByType DEFLATE text/html text/plain text/xml
    AddOutputFilterByType DEFLATE text/css
    AddOutputFilterByType DEFLATE application/x-javascript application/javascript application/ecmascript
    AddOutputFilterByType DEFLATE application/rss+xml
</IfModule>

ErrorLog "/data/logs/apache_error_log.txt"
LogLevel warn

LoadModule php5_module modules/libphp5.so     (安装PHP后如过没有加上)
AddType application/x-httpd-php .php                         (安装PHP后如过没有加上)

################# apache 配置结束 (暂无)####################

/usr/local/services/apache/bin/apachectl start


################# libxml2
tar xzvf libxml2-2.6.30.tar.gz
cd libxml2-2.6.30/
./configure
make "CFLAGS=-U_FORTIFY_SOURCE"
make install

################# curl

tar xzvf curl-7.31.0.tar.gz
cd curl-7.31.0/
./configure
make
make install

################# jpeg
tar xzvf jpegsrc.v8d.tar.gz
cd jpegsrc.v8d/
./configure
make
make install

################# png
tar xzvf libpng-1.2.31.tar.gz
cd libpng-1.2.31/
./configure
make
make install

################# openssl

 apt-get install libcurl4-openssl-dev

################# mcrypt

tar -zxvf libmcrypt-2.5.7.tar.gz

./configure
make
make install

################# cmake (编译mysql需要用到)

cd /data/temp

tar -xzvf cmake-2.8.9.tar.gz

cd cmake-2.8.9

./configure

make

make install

################# ncurses

apt-get install libncurses5-dev

################# m4

 tar -zxvf m4-1.4.17.tar.gz
./configure

make

make install

################# bison

tar -zxvf bison-3.0.tar.gz

./configure

make

make install

################# MYSQL

mysql最好安装最新版本的,之前安装5.5.28版本会有一些问题导致make失败

在我的512M内存的云服务器上手动编译的mysql会因为内存不足在启动的时候被kill掉。

可采用apt-get的方式一键安装apt-get install mysql-server , 然后去修改相应的配置文件 /etc/mysql/my.cnf,减少内存分配。

一键安装的服务名称为mysql,可以使用service mysql start/stop/status来控制。

以下为手动编译安装:

groupadd mysql 

useradd -g mysql mysql -s /bin/false 

mkdir -p /data/mysql 

mkdir -p /usr/local/mysql

chown -R mysql:mysql /data/mysql

chown -R mysql:mysql /usr/local/mysql/


cd /data/temp

tar -xzvf mysql-5.6.15.tar.gz

cd mysql-5.6.15

cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql  -DMYSQL_DATADIR=/data/mysql  -DSYSCONFDIR=/etc

 

make

make install

/usr/local/mysql/scripts/mysql_install_db --user=mysql --datadir=/data/mysql --basedir=/usr/local/mysql

cp /usr/local/mysql/support-files/my-default.cnf /etc/my.cnf

vim /etc/my.cnf

datadir = /data/mysql

port = 3306

socket =/tmp/mysql.sock

log-error=/data/logs/mysql_error.log

cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld

chmod 755 /etc/init.d/mysqld

chkconfig mysqld on   这里启动设置有点问题,先不管了,先手动启动mysql吧

service mysqld start

vim /etc/profile 

export PATH=$PATH:/usr/local/mysql/bin

source/etc/profile

ln -s /usr/local/mysql/lib/mysql /usr/lib/mysql

ln -s /usr/local/mysql/include/mysql /usr/include/mysql

mysql_secure_installation 按照提示一步步设置,我相信大家的英文水平 :-)

service mysqld restart #重启


################# php
tar xzvf php-5.4.19.tar.gz
cd php-5.4.19/
./configure --prefix=/usr/local/services/php --with-apxs2=/usr/local/services/apache/bin/apxs --with-mysql=mysqlnd --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --with-libxml-dir=/usr/local/lib/ --disable-short-tags  --with-curl --enable-mbstring --without-pear --with-gd --with-jpeg-dir=/usr/local/lib/ --with-png-dir=/usr/local/lib/ --enable-sockets --with-zlib --enable-pcntl --enable-shmop --enable-sysvsem --enable-sysvmsg --with-openssl --enable-bcmath --with-mcrypt
make
make install

vim /usr/local/services/apache/conf/httpd.conf
AddType application/x-httpd-php .php

cp /data/temp/php-5.4.19/php.ini-production /usr/local/services/php/lib/php.ini

vim /usr/local/services/php/lib/php.ini

extension_dir = "/usr/local/services/php/extensions"

一些扩展按照自己的需要打开吧,好像默认已经打开了很多扩展。

display_errors = On

log_errors = On

error_reporting = E_ALL

error_log = /data/logs/php_errors.log

/usr/local/services/apache/bin/apachectl restart

################# libevent

tar -zxvf libevent-2.0.21-stable.tar.gz
 ./configure

make

make install

################# memcached
memcached-1.4.15.tar.gz
cd memcached-1.4.15/
./configure --prefix=/usr/local/services/memcached --with-libevent=/usr/local/lib
make
make install

/usr/local/services/memcached/bin/memcached -d -u root -m 500 -c 10000 -p 11211 -l localhost
################# autoconf

tar -zxvf autoconf-2.68b.tar.gz

./configure 

make

make install

################# memcache 扩展
tar xzvf memcache-2.2.7.tgz
cd memcache-2.2.7/
/usr/local/services/php/bin/phpize
./configure --with-php-config=/usr/local/services/php/bin/php-config
make
make install

mkdir /usr/local/services/php/extensions
mv /usr/local/services/php/lib/php/extensions/no-debug-zts-20100525/memcache.so /usr/local/services/php/extensions
vim /usr/local/services/php/lib/php.ini

extension_dir = "/usr/local/services/php/extensions"

extension=memcache.so

################# sqlite

cd /data/temp

tar -zxvf sqlite-autoconf-3080200.tar.gz

cdsqlite-autoconf-3080200

./configure --prefix=/usr/local/sqlite

make

make install

################# SVN版本控制

tar -zxvf subversion-1.8.5.tar.gz

cd subversion-1.8.5

./configure --prefix=/usr/local/subversion --with-apxs=/usr/local/services/apache/bin/apxs --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --with-sqlite=/usr/local/sqlite --enable-maintainer-mode --with-zlib=/usr/local/zlib

make

make install

vim /etc/profile

export PATH=$PATH:/usr/local/subversion/bin/

source /etc/profile

//创建svn数据目录

mkdir /data/svn

//创建版本库目录

mkdir /data/svn/test

//创建版本库

svnadmin create /data/svn/test/

chmod -R 0777 /data/svn/test/

(访问方式1: 通过svn协议访问)

cd /data/svn/test/conf/

vim /data/svn/test/conf/svnserve.conf

[general]

anon-access = none     //匿名用户禁止读写

auth-access = write       //验证用户有读写权限

password-db = passwd

authz-db = authz

vim /data/svn/test/conf/passwd

[users]

yuliying = 123456         //用户-密码

vim /data/svn/test/conf/authz

[groups]
admin=yuliying            //用户组设置

[/]
@admin = rw              //用户组权限

svnserve -d -r /data/svn 

此时可以用乌龟通过 svn://192.168.0.116/test  来checkout

(访问方式2,通过apache访问)

vim /usr/local/services/apache/conf/httpd.conf

LoadModule dav_module modules/mod_dav.so

LoadModule dav_svn_module /usr/local/subversion/libexec/mod_dav_svn.so

LoadModule authz_svn_module /usr/local/subversion/libexec/mod_authz_svn.so

<Location /svn>
DAV svn
SVNListParentPath on
SVNParentPath /data/svn/
AuthType Basic
AuthName "Hello welcome to here"
AuthUserFile /data/svn/passwd
AuthzSVNAccessFile /data/svn/authz
Require valid-user
</Location>


/usr/local/services/apache/bin/htpasswd -c /data/svn/passwd yuliying 第二次不用加c参数,c是创建文件

vim /data/svn/authz

[test:/]

yuliying = rw

/usr/local/services/apache/bin/apachectl restart

此时可以通过 http://192.168.0.116/svn/test/来checkout.

在本地服务器上checkout使用 svn checkout file:///data/svn/test/

################# APC
/usr/local/services/php/bin/phpize
./configure --enable-apc --enable-apc-mmap --with-php-config=/usr/local/services/php/bin/php-config --enable-apc-spinlocks --disable-apc-pthreadmutex
make
make install

编辑php.ini
apc.enabled = 1
apc.shm_segments = 1
apc.shm_size = 64M
apc.optimization = 1
apc.num_files_hint = 0
apc.ttl = 0
apc.gc_ttl = 3600
apc.cache_by_default = on

################# Redis

cd /data/temp
tar xzvf redis-2.4.14.tar.gz
mv redis-2.4.14 /usr/local/services/redis
cd /usr/local/services/redis
make
make install

mkdir /data/logs/redis/
chmod 0777 /data/logs/redis/
mkdir /data/redis/

################# Redis 扩展

cd /data/temp
tar xzvf owlient-phpredis-2.1.1-1-g90ecd17.tar.gz
cd owlient-phpredis-90ecd17/
/usr/local/services/php/bin/phpize
./configure --with-php-config=/usr/local/services/php/bin/php-config
make
make install

mv /usr/local/services/php/lib/php/extensions/no-debug-non-zts-20090626/redis.so/usr/local/services/php/extensions

################# PHPmyAdmin

cd /data/temp

tar -zxvf phpMyAdmin-3.4.10.2-all-languages.tar.gz

mkdir /data/www/phpmyadmin/

cp -r phpMyAdmin-3.4.10.2-all-languages/* /data/www/phpmyadmin/

cd /data/www/phpmyadmin/

cp config.sample.inc.php config.inc.php

vim config.inc.php

$cfg['blowfish_secret'] = '任意字符串';
$cfg['Servers'][$i]['auth_type'] = 'cookie';

$cfg['Servers'][$i]['host'] = '127.0.0.1';



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值