ubuntu12.10服务器关于网络配置、安装ssh、vsftpd以及编译安装LAMP等

Ubuntu12.10server

网络配置、安装ssh、vsftpd、LAMP等

对于刚刚安装好的ubuntu12.10服务器,首先需要先对此进行相关的网络设置,以保证可以上外网!

对于ubuntu服务器,倘若需要省去每次都输入sudo,可先使用sudo –i然后输入密码,转化为该服务器的最高权限。

1.1配置网络设置

 $sudo vim /etc/network/interfaces

进行IP、网关、DNS的设置,如下图:


保存退出,并重启网卡

$sudo /etc/init.d/networking restart

或者是 $sudo service networking restart

此时执行ifconfig将可以看到网卡的相关信息,如下:

ubuntu12.10服务器关于网络配置、安装ssh、vsftpd以及编译安装LAMP等_第1张图片

(注安装好Ubuntu之后设置了静态IP地址,再重启服务器后就无法解析域名。想重新设置DNS,打开/etc/resolv.conf

 $cat /etc/resolv.conf


内容是一段警告:说这个文件是resolvconf程序动态创建的,不要直接手动编辑,修改将被默认的覆盖。这是因为/etc/resolv.conf其实是一个Link,它其实是指向/run/resolvconf/resolv.conf

果不其然,修改后重启再ping相关域名就失效了,如下:


如需解决上面的问题,共有两个办法:

方法一:通过修改/etc/network/interfaces,在其最后增加一句:

dns-nameservers 192.168.1.103

(上面网络设置时我已经提前给配置了)

配置后,保存退出并重启网卡,之后将可以在/etc/resolv.conf中多出了一条命令,如下

nameserver 192.168.1.103

方法二:通过修改resolvconf服务的配置文件/etc/resolvconf/resolv.conf.d/base

在里面插入

nameserver 192.168.1.103

如果有多个DNS,就一行一个,修改后保存退出,然后执行

$resolvconf –u

此时再看/etc/resolv.conf,就会多出来了.此时再ping域名,就可以解析了。)

1.2解决网络问题后,接下来是需要更换ubuntu12.10的源!

首先备份源;

$sudo mv/etc/apt/sources.list /etc/apt/sources.list.bak

其次进行更换源;

$sudo vim/etc/apt/sources.list

将下边的源直接覆盖掉:

deb http://mirrors.163.com/ubuntu/ quantal main universe restrictedmultiverse

deb-src http://mirrors.163.com/ubuntu/ quantal main universe restrictedmultiverse

deb http://mirrors.163.com/ubuntu/ quantal-security universe mainmultiverse restricted

deb-src http://mirrors.163.com/ubuntu/ quantal-security universe mainmultiverse restricted

deb http://mirrors.163.com/ubuntu/ quantal-updates universe mainmultiverse restricted

deb http://mirrors.163.com/ubuntu/ quantal-proposed universe mainmultiverse restricted

deb-src http://mirrors.163.com/ubuntu/ quantal-proposed universe mainmultiverse restricted

deb http://mirrors.163.com/ubuntu/ quantal-backports universe mainmultiverse restricted

deb-src http://mirrors.163.com/ubuntu/ quantal-backports universe mainmultiverse restricted

deb-src http://mirrors.163.com/ubuntu/ quantal-updates universe mainmultiverse restricted

 

保存退出,然后进行apt更新!

$sudo apt-get update

 

1.3安装chkconfig

在ubuntu上默认是不支持chkconfig命令的,但我们可以自己安装,其安装的下载路径:

http://download.csdn.net/detail/hylongsuny/5276536

方法:下载后,在存放的目录下执行:

$dpkg –ichkconfig_11.0-79.1-2_all.deb

在使用chkconfig管理服务的时候,出现了问题:

$chkcinfig --list

/sbin/insserv: No such file or directory

解决的方案:

$ln –s /usr/lib/insserv/insserv /sbin/insserv

 

2.1安装ssh

由于自己安装ubuntu服务器时并没有安装系统自带的ssh服务,因此对于需要使用ssh进行连接ubuntu时,需要自己手动安装ssh-server。

首先判断是否安装了ssh服务,可以通过如下命令进行:


出现了如上的connection refused表示还没有安装ssh,因此我们可以使用apt进行安装

$sudo apt-get install openssh-server

此时系统进行自动安装,安装完成后,需开启服务

$sudo /etc/init.d/ssh start

启动后,我们可以通过下面的命令查看是否启动正确

$sudo ps -e | grep ssh


表明已经启动成功,对于ssh默认的端口是22,如有需要更改端口,我们可以在/etc/ssh/sshd_config文件下进行更改。

设置开机自启动有两种方法:

方法一,使用先前安装chkconfig命令进行操作,如下:

$sudo chkconfig ssh on

方法二,更改开机程序,添加ssh服务的启动,如下:

$sudo vim /etc/re.local

加入:sudo service ssh start或者/etc/init.d/ssh start

2.2安装vsftpd

由于需要上传一些资料到该服务器上,因此我们还需要安装vsftpd,对于vsftpd,我们可以有两种途径进行安装。其一,直接使用源进行安装,所使用的帐号和密码是本地用户;其二,是使用虚拟用户进行登录!

对于其一,安装很简便,只需执行

$sudo apt-get install vsftpd

进行安装后,启动服务

$sudo /etc/init.d/vsftpdrestart

此时vsftpd已经可以跑起来了,但是我们需要对其/etc/vsftpd.conf文件进行配置一下,才能保证该用户有全局的权限!

$sudo vim /etc/vsftpd.conf

将文中的被注释的#write_enable=YES中改为

write_enable=YES

保存退出,并重启vsftpd!

设置开机启动(方法和ssh的同理,不再细讲):

$sudo chkconfig vsftpd on

3.安装LAMP(Apache+Mysql+PHP)

搭建LAMP环境时,需要安装的所有软件都要按照一定的顺序安装:apacheàmysqlàphp,但是在安装php之前,应该先安装php5需要的最新版本文库文件.安装GD2库是为了让php支持gif,png和jpeg图片格式,所以在安装GD2库之前还要先安装最新的zlib,libpng,freetype和jpegsrc等库文件。而且中间还会穿插安装一些软件。

由于编译安装中需要用到make进行编译二进制,因此我们还需要安装make。

$sudo apt-get install make

在我们搭建LAMP环境的时候,我们需要用到一系列相关的搭建环境软件,如下:

1.      httpd-2.4.4 

2.      mysql-5.6.10

3.       php.5.4.14

4.       libxml2-2.6.30

5.       libmcrypt-2.5.8

6.       zlib-1.2.7

7.       gd-2.0.35

8.       autoconf-2.61

9.       freetype-2.3.5

10.   libpng-1.6.0

11.   jpeg-6b

12.   apr-1.4.6

13.   apr-util-1.4.1

14.   pcre-8.32

15.   libtool-2.2.6

一. 先检测一下基本的系统环境信息

1.查看当前系统的信息,使用如下命令:

$uname –a


2.看一下安装了gcc没有!

$gcc –v

当出现下面的gcc版本,即表示已经安装了;


倘若出现如下:


即表示还没安装,此时使用

$sudo apt-get install gcc

进行安装!!

二.编译各个源码包并安装

3.1安装libxml2最新库文件

3.1.1在上面的链接或者网上下载libxml2-2.6.30.tar.gz,放到/home/hylongsuny/目录下,解压软件包到当前目录libxml2-2.6.30下,并进入libxml2-2.6.30目录,命令如下:

$cd /home/hylongsuny/                                                          //进入源码包所在目录

$sudo tar –zxvf libxml2-2.6.30.tar.gz                       //解压缩

$cd libxml2-2.6.30/                                                          //进入目录

 

3.1.2使用configure命令检查并配置安装需要的系统环境,并声称安装配置文件,命令如下:

$./configure --prefix=/usr/local/libxml2

选项--prefix=/usr/local/libxml2的作用,是在安装时将软件安装到/usr/local/libxml2目录下,执行成功后,会看见Done configuring的提示,如下图所示:


3.1.3使用make命令编译源码文件并生成安装文件,命令如下:

$make

出现错误:In function'open',inlined from 'xmlNanoHTTPSave__internal_alias' at nanohttp.c:1588:12
/usr/include/x86_64-linux-gnu/bits/fcntl2.h:51:24:error: call to '__open_missing_mode' declared with attribute error: open withO_CREAT in second argument needs 3 arguments

解决方案:

打开libxml所在目录下的nanohttp.c,第1588行由

fd =open(filename, O_CREAT | O_WRONLY);更换为
fd = open(filename, O_CREAT | O_WRONLY,0777);


修改后,保存退出,再重新进行make即可!

3.1.4使用make install命令进行安装,命令如下:

$make install                       //安装

如果安装成功以后,在/usr/local/libxml2/目录下将生成bin、include、lib、man和share五个目录。


注:在后面安装PHP5源代码包的配置时,会通过在configure命令的选项中加上“with-libxml-dir=/usr/local/libxml2”选项,用于指定安装libxml2库文件的位置。

3.2安装libmcrypt最新库文件

3.2.1在上面的链接或者网上下载libmcrypt-2.5.8.tar.gz,放到/home/hylongsuny/目录下,解压软件包到当前目录libmcrypt-2.5.8下,并进入libmcrypt-2.5.8目录,命令如下:

$cd /home/hylongsuny                                                        //进入源码包所在目录

$sudo tar –zxvf libmcrypt-2.5.8.tar.gz            //解压缩

$cd libmcrypt-2.5.8                                                          //进入目录

3.2.2使用“configure”命令检查并配置安装需要的系统环境,并生成安装配置文件,命令如下:

$./configure --prefix=/usr/local/libmcrypt

选项--prefix=/usr/local/libmcrypt的作用,是在安装时将软件安装到/usr/local/libmcrypt目录下。

这里需要系统安装了g++,如果没有提前安装g++,那就先sudo apt-get install g++吧。


当出现上面的提示时,则我们需要安装g++,之后再重新执行./configure--prefix=/usr/local/libmcrypt 进行系统环境信息配置;

3.2.3使用make命令编译源码文件并生成安装文件,命令如下:

$make                          //编译

    3.2.4使用make命令编译源码文件并生成安装文件,命令如下:

    $make install                      //安装

如果安装成功就会在/usr/local/libmcrypt目录下生成bin,include,lib,man和share五个目录


在后面安装PHP5源代码包的配置时会通过在configure命令的选项中加上“--with-mcrypt-dir=/usr/local/libmcrypt选项指定这个libmcrypt库文件的位置。

3.2.5安装libltdl库

安装完成libmcrypt库以后,进入到解压缩的目录/home/hylongsuny/libmcrypy-2.5.8下,找到libltdl库源代码文件所在的目录libtdl,进入这个目录,按照下面几个命令配置、编译、安装就可以了。命令如下:

$cd/home/hylongsuny/libmcrypt-2.5.8/libltdl           //进入软件源代码目录

$./configure –enable-ltdl-install                 //配置ltdl库的安装

$make                                              //编译

$make install                                      //安装

安装完成后,会在/usr/local/include/目录下发现ltdl.h头文件,如下图所示:


3.3安装zlib最新库文件

3.3.1在上面的链接或者网上下载zlib-1.2.7.tar.gz,放到/home/hylongsuny/目录下,解压软件包到当前目录zlib-1.2.7.tar.gz下,并进入zlib-1.2.7目录,命令如下:

$cd /home/hylongsuny/                      //进入源码包所在目录

$sudo tar zxvf zlib-1.2.7.tar.gz                //解压缩

$cd zlib-1.2.7                             //进入目录

3.3.2使用“configure“命令检查并配置安装需要的系统环境,并生成安装配置文件,命令行如下:

$./configure –prefix=/usr/local/zlib

选项--prefix=/usr/local/zlib的作用,是在安装时将软件安装到/usr/local/zlib目录下

3.3.3使用make命令编译源码文件并生成安装文件,命令如下:

$make                                      //编译

3.3.4使用makeinstall命令进行安装,命令如下:

$make install                              //安装

如果安装成功就会在/usr/local/zlib目录下生成include,lib和share三个目录,如下:


在后面安装PHP5源代码包的配置时会通过在configure命令的选项中加上“--with-zlib-dir=/usr/local/zlib选项指定这个zlib库文件的位置。

3.4安装libpng最新库文件

3.4.1在上面的连接或者网上下载libpng-1.6.0.tar.gz,放到/home/hylongsuny/目录下,解压软件包到当前目录libpng-1.6.0下,并进入libpng-1.6.0目录,命令如下:

$cd /home/hylongsuny/                      //进入源码包所在目录

$sudo tar zxvf libpng-1.6.0.tar.gz         //解压缩

$cd libpng-1.6.0/                          //进入目录

3.4.2使用“configure”命令检查并配置安装需要的系统环境,并生成安装配置文件,命令行如下:

$./configure –prefix=/usr/local/libpng

选项—prefix=/usr/local/libpng作用,是在安装时将软件安装到/usr/local/libpng目录下

出现错误:configure:error:zlib not install

解决方法如下:

1)进入zlib的源文件目录,并进行清除zlib,命令如下:

$cd /home/hylongsuny/zlib-1.2.7/

$make clean

    2)重新配置./configure,后面不要接--prefix参数;

        $./configure

    3)编辑make && makeinstall安装;

        $make && make install

    4)进入libpng目录,执行命令./configure --prefix=/usr/local/libpng;

        $./configure –prefix=/usr/local/libpng

    5)编译make && makeinstall 安装;

        $make && make install

    3.4.3使用make命令编译源码文件并生成安装文件,命令如下:

$make                           //编译

3.4.4使用make install命令进行安装,命令如下:

$make install                  //安装

如果安装成功就会在/usr/local/libpng目录下生成bin,include,lib和share四个目录,如下图:

   

注:在后面安装PHP5库配置时,会通过在configure命令的选项中加上”--with-png-dier=/usr/local/libpng”选项,指定这个libpng库文件的位置。

3.5安装jpeg6最新库文件

3.5.1在上面的链接或者网上下载jpegsrc.v6b.tar.gz,放到/home/hylongsuny/目录下,解压软件包到当前目录jpeg-6b下,并进入jpeg-6b目录,命令如下:

$cd /home/hylongsuny                       //进入源码包所在目录

$sudo tar zxvf jpegsrc.v6b.tar.gz          //解压缩

$cd jpeg-6b                            //进入目录

3.5.2安装GD2库前所需的jpeg6库文件,需要自己手动地创建安装需要的目录,它们在安装时不能自动创建。命令行如下:

$sudo mkdir /usr/local/jpeg6                        //建立jpeg6软件安装目录

$sudo mkdir /usr/local/jpeg6/bin                    //建立存放命令的目录

$sudo mkdir /usr/local/jpeg6/lib                    //创建jpeg6库文件所在目录

$sudo mkdir /usr/local/jpeg6/include               //建立存放头文件目录

$sudo mkdir –p /usr/local/jpeg6/man/man1         //建立存放手册的目录

3.5.3使用“configure”命令检查并配置安装需要的系统环境,并生成安装配置文件,命令如下(为了直观,使用“\”将一个命令换成多行):

$sudo ./configure \

>--prefix=/usr/local/jpeg6/ \           //安装时将软件安装到/usr/local/jpeg6

>--enable-shared \                 //建立共享库使用的GNU的libtool

>--enable-static                       //建立静态库使用的GNU的libtool

3.5.4使用make命令编译源码文件并生成安装文件,命令如下:

$make                               //编译

出现错误:

./libtool--mode=compile gcc -O2 -I. -c ./jcapimin.c
make: ./libtool: Command not found
make: *** [jcapimin.lo] Error 127


解决方法:缺少libtool,需要安装!

1)在上面的链接或者网上下载libtool-2.2.6a.tar.gz,放到/home/hylongsuny/目录下,解压软件包到当前目录libtool-2.2.6下,并进入libtool-2.2.6目录,命令如下:

$cd/home/hylongsuny/                            //进入源码包所在目录

$sudotar zxvf libtool-2.2.6a.tar.gz         //解压缩

$cdlibtool.2.2.6                                //进入目录

2)使用“configure”命令检查并配置安装需要的系统环境,并生成安装配置文件,命令如下:

$./configure

安装到默认路径就可以。

3)使用make命令编译源码文件并生成安装文件,命令如下:

$sudomake                                  //编译

4)使用make install命令进行安装,命令如下:

$sudomake install                          //安装

    5)复制libtool中的config.sub和config.guess文件至jpeg-6b根目录,命令如下:

        $cd /home/hylongsuny/jpeg-6b/                          

        $cp/usr/local/share/libtool/config/config.sub .

        $cp/usr/local/share/libtool/config/config.guess .

    6)重新配置并编译、安装jpeg-6b,命令如下:

        $sudo ./configure \

        >--prefix=/usr/local/jpeg6/ \     //安装时将软件安装到/usr/local/jpeg6目录

        >--enable-shared \             //建立共享库使用的GNU的libtool

        >--enable-static                   //建立静态库使用的GNU的libtool

        $make                          //编译

        $makeinstall                  //安装

    7)Done

    3.5.5使用make install命令进行安装,命令如下:

        $make install                  //安装

注:在后面安装GD2库配置时,会通过在configure命令的选项中加上“--with-jpeg-dir=/usr/local/jpeg6”选项,指定这个jpeg库文件的位置。至此,我们已经使用了如图所示的这么多的安装包。

    3.6安装freetype最新库文件

3.6.1在上面的链接或者网上下载freetype-2.3.5.tar.gz,放到/home/hylongsuny/目录下,解压软件包到当前目录freetype-2.3.5下,并进入freetype-2.3.5目录,命令如下:

$cd /home/hylongsuny/                  //进入源码包所在目录

$sudo tar zxvffreetype-2.3.5.tar.gz       //解压缩

$cd freetype-2.3.5                     //进入目录

3.6.2使用“configure”命令检查并配置安装需要的系统环境,并生成安装配置文件,命令行如下:

$./configure --prefix=/usr/local/freetype

选项--prefix=/usr/local/freetype的作用,是在安装时将软件安装到/usr/local/freetype目录下

3.6.3使用make命令编译源码文件并生成安装文件,命令如下:

$make                              //编译

3.6.4使用makeinstall命令进行安装,命令如下:

$make install                      //安装

如果安装成功就会在/usr/local/freetype目录下生成bin,include,lib和share四个目录。如下图:


在后面安装GD2库配置时会通过在configure命令的选项中加上”--with-freetype-dir=/usr/local/freetype”选项,指定这个freetype库文件的位置。

3.7安装autoconf最新库文件

3.7.1在上面的链接或者网上下载autoconf-2.61.tar.gz,放到/home/hylongsuny/目录下,解压软件包到当前目录autoconf-2.61下,并进入autoconf-2.61目录,命令如下:

$cd /home/hylongsuny/              //进入源码包所在目录

$tar zxvf autoconf-2.61.tar.gz     //解压缩

$cd autoconf-2.61/                 //进入目录

3.7.2使用”configure”命令检查并配置安装需要的系统环境,并生成安装配置文件,命令行如下:

$./configure

出现错误:configure:error:GNU M4 1.4 isrequired

解决方法:$sudo apt-get install m4

3.7.3使用make命令编译源码文件并生成安装文件,命令如下:

$make                              //编译

3.7.4使用makeinstall命令进行安装,命令如下:

$make install                      //安装

3.8安装GD最新库文件

3.8.1在上面的链接或者网上下载gd-2.0.35.tar.gz,放到/home/hylongsuny/目录下,解压软件包到当前目录gd-2.0.35下,并进入gd-2.0.35目录,命令如下:

$cd /home/hylongsuny                                //进入源码包所在目录

$tar zxvf gd-2.0.35.tar.gz                      //解压缩

$cd gd-2.0.35                                   //进入目录

3.8.2使用”configure”命令检查并配置安装需要的系统环境,并生成安装配置文件,命令行如下(为了直观,使用“\”将一个命令换成多行):

$./configure \

>--prefix=/usr/local/gd2/\        //安装时将软件安装到/usr/local/gd2目录

>--with-zlib=/usr/local/zlib/\    //指定到哪去找zlib库文件的位置

>--with-jpeg=/usr/local/jpeg6/\       //指定到哪去找jpeg6库文件的位置

>--with-png=/usr/local/libpng/\       //指定到哪去找libpng库文件的位置

>--with-freetype=/usr/local/freetype///指定到那去找freetype 2.x字体库位置

3.8.3使用make命令编译源码文件并生成安装文件,命令如下:

$make                              //编译

出现错误:gd_png.c:16:53: fatal error: png.h: No such file or directory

出现没有头文件的问题,是因为其头文件的路径不对。

解决方法:

$sudo vim gd_png.c

#include “png.h”

替换成:

#include “/usr/local/libpng/include/png.h”

然后再make就可以了

注:include””双引号里包含的是libpng安装的路径里的include文件夹

3.8.4使用make install命令进行安装,命令如下:

$make install                                    //安装

如果安装成功就会在/usr/local/gd2目录下生成bin,include和lib三个目录,如下图:


注:在后面安装PHP5源代码包的配置时,会通过在configure命令的选项中加上“--with-gd=/usr/local/gd2/”选项,用于指定安装GD库文件的位置.

3.9安装新版本的Apache服务器

3.9.1在上面的链接或者网上下载httpd-2.4.4.tar.gz,放到/home/hylongsuny/目录下,解压软件包到当前目录httpd-2.4.4下,并进入httpd-2.4.4目录,命令如下:

$cd /home/hylongsuny/                  //进入源码包所在目录

$tar zxvf httpd-2.4.4.tar.gz               //解压缩

$cd httpd-2.4.4/                           //进入目录

3.9.2使用”configure”命令检查并配置安装需要的系统环境,并生成安装配置文件,命令行如下(为了直观,使用“\“将一个命令换成多行):

$sudo ./configure \

>--prefix=/usr/local/apache2 \     //指定Apache软件安装的位置

>--sysconfdir=/etc/httpd \         //指定Apache服务器的配置文件存放位置

>--with-z=/usr/local/zlib/ \           //指定zlib库文件的位置

>--with-included-apr \             //使用捆绑APR/APR-Util的副本

>--disable-userdir \                   //请求的映像到用户特定目录

>--enable-so \                     //以动态共享对象(DSO)编译

>--enable-deflate=shared \         //缩小传输编码的支持

>--enable-expires=shared \         //支持头文件过期控制

>--enable-rewrite=shared               //基于规则的URL操控

>--enable-static-support               //建立一个静态链接版本的支持

出现错误:configure: error: Bundled APR requested but not found at ./srclib/.Download and unpack the corresponding apr and apr-util packages to ./srclib/.

这是需要下载apr和apr-utils并解压到./srclib/,再进行编译。

解决方法:

1.1)在上面的链接或者网上下载apr-1.4.6.tar.gz和apr-util-1.4.1.tar.gz,放到/home/hylongsuny/目录下,解压软件包到当前目录的apr-1.4.6/和apr-util-1.4.1/下,命令如下:

$cd /home/hylongsuny                    //进入源码包所在目录

$tar zxvf apr-1.4.6.tar.gz         //解压缩

$tar zxvvf apr-util-1.4.1.tar.gz      //解压缩

1.2)(现在我们依然在/home/hylongsuny/目录下)拷贝解压缩后的目录到httpd-2.4.4/srclib/apr和httpd-2.4.4/srclib/apr-util中,命令如下:

$sudo cp –rf apr-1.4.6 httpd-2.4.4/srclib/apr

$sudo cp –rf apr-util-1.4.1 httpd-2.4.4/srclib/apr-util

 

然后重新进入httpd目录,进行配置。

结果出现新的问题,如下:

configure: error: pcre-config for libpcre not found. PCRE isrequired and available from http://pcre.org/

又是一个依赖关系!

解决方法:

2.1)在上面的链接或者网上下载pcre-8.32.tar.gz,放到/home/hylongsuny/目录下,解压软件包到当前目录的pcre-8.32下,并进入pcre-8.32目录,命令如下:

$cd /home/hylongsuny                                    //进入源码包所在目录

$tar zxvf pcre-8.32.tar.gz                                  //解压缩

$cd pcre-8.32                                                  //进入目录

2.2)使用”configure”命令检查并配置安装需要的系统环境,并生成安装配置文件,命令行如下:

$./configure –prefix=/usr/local/pcre

选项--prefix=/usr/local/pcre的作用,是在安装时将软件安装到/usr/local/pcre目录下

2.3)使用make命令编译源码文件并生成安装文件,命令如下:

$make                                  //编译

2.4)使用makeinstall命令进行安装,命令如下:

$make install                          //安装

如果安装成功就会在/usr/local/pcre目录下生成bin,include,lib和share四个目录,如下图:


安装完pcre以后,回到httpd目录下,

在./configure的时候加上--with-pcre=/usr/local/pcre即可

这次成功configure后,再进行make && make install。

3.9.3使用make命令编译源码文件并生成安装文件,命令如下:

$make                           //编译

3.9.4使用makeinstall命令进行安装,命令如下:

$make install                  //安装

如果安装成功就会在/usr/local/apache2目录下生成bin,build,cgi-bin,error,htdocs,icons,include,lib,logs,man,manual和modules十二个目录,如下图:


3.9.5启动Apache服务器,命令如下:

$sudo /usr/local/apache2/bin/apachectl start

出现错误:AH00558: httpd: Could not reliably determine the server's fullyqualified domain name, using 127.0.1.1. Set the 'ServerName' directive globallyto suppress this message

解决方法:

修改httpd.conf配置文件,由于我们配置安装Apache服务器的时候,指定的配置文件放在了/etc/httpd目录下,如下:

$sudo ./configure \

>--prefix=/usr/local/apache2 \                   \\指定Apache软件安装的位置

>--sysconfdir=/etc/httpd \                        \\指定Apache服务器的配置文件存放位置

我们需要去修改这个文件,命令如下:

$sudo vim /etc/httpd/httpd.conf

找到ServerName所在的地方,如下图所示

ubuntu12.10服务器关于网络配置、安装ssh、vsftpd以及编译安装LAMP等_第2张图片

在这下面添加一行ServerNamelocalhost,如下图所示:

ubuntu12.10服务器关于网络配置、安装ssh、vsftpd以及编译安装LAMP等_第3张图片

保存退出,再重新启动Apache服务器即可,命令如下:

$sudo /usr/local/apache2/bin/apachectl restart

通过查看进程的方式,查看是否启动成功,命令如下:

$ps –ef | grep httpd

如果看到许多(一般是4到5个)输出就说明对了,如下图:


或者是通过检测端口的命令:

$netstat –tnl | grep 80


也可以通过在浏览器输入该服务器的IP,查看是否启动成功,如果成功,会有下图效果:


3.9.6添加开机自启动

每种服务器软件都有必要制作成开机时自启动,Apache服务器开机自启动,只要在/etc/rc.local文件中,加上Apache服务器的启动命令即可,命令如下:

$sudo vim /etc/re.local

加上启动命令,如下图所示:

ubuntu12.10服务器关于网络配置、安装ssh、vsftpd以及编译安装LAMP等_第4张图片

3.10安装Mysql

3.10.1在上面的链接或者网上下载mysql-5.6.10.tar.gz,放到/home/hylongsuny目录下,解压软件包到当前目录mysql-5.6.10下,并进入mysql-5.6.10目录,命令如下:

$cd /home/hylongsuny                       //进入源码包所在目录

$sudo tar zxvf mysql-5.6.10.tar.gz     //解压缩

$cd mysql-5.6.10                           //进入目录

3.10.2安装cmake。由于mysql貌似从5.5已经不用./configure来配置了,换成cmake,所以需要安装cmake,检测系统是否有cmake,命令如下:

$cmake –version

如果看到如下所示:


即表示cmke还没安装,此时操作如下:

$sudo apt-get install cmake

再一次输入:

$cmake –version

即可看到cmake的版本了,如下图:


3.10.3新增用户组,命令如下:

$sudo groupadd mysql

3.10.4新增用户,并加入到mysql组中,命令如下:

$sudo useradd mysql -g mysql

3.10.5新建数据库执行文件目录,命令如下:

$sudo mkdir -p /usr/local/mysql

3.10.6新建数据库数据文件目录,命令如下:

$sudo mkdir –p /db/mysql/data

3.10.7修改目录拥有者,命令如下:

$sudo chown –R mysql:mysql /usr/local/mysql

$sudo chown –R mysql:mysql /db/mysql/data

$sudo chown –R mysql:mysql /usr/local/mysql/.

$sudo chown –R mysql:mysql db/mysql/data/.

3.10.8使用cmake进行配置,命令如下:

$cmake \

-DCMAKE_INSTALL_PREFIX=/usr/local/mysql\          //指向mysql安装目录

-DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock      //指定mysql.sock路径

-DDEFAULT_CHARSET=utf8\                           //指定默认的字符集为utf8

-DDEFAULT_COLLATION=utf8_general_ci\               //设定默认排序规则

-DWITH_MYISAM_STORAGE_ENGINE=1\                   //启动myisam引擎

-DWITH_INNOBASE_STORAGE_ENGINE=1\             //启动innobase引擎

-DWITH_ARCHIVE_STORAGE_ENGINE=1\                  //启动archive引擎

-DWITH_BLACKHOLE_STORAGE_ENGINE=1\            //启动blackhole引擎

-DWITH_MEMORY_STORAGE_ENGINE=1\                   //启动memory引擎

-DWITH_READLINE=1 \                            //启用readline库支持

-DENABLED_LOCAL_INFILE=1\                     //启用本地数据导入支持

-EMYSQL_DATADIR=/db/mysql/data\                   //指向mysql数据文件目录

-DMYSQL_USER=mysql \                               //指定mysql用户,默认为mysql

-DMYSQL_TCP_PORT=3306                          //指定TCP端口为3306

出现错误:CMake Error at cmake/readline.cmake:83 (MESSAGE):
Curses library not found. Please installappropriate package,

remove CMakeCache.txt and rerun cmake.On Debian/Ubuntu, packagename is libncurses5-dev, on Redhat and derivates it is ncurses-devel.
Call Stack (most recent call first):
cmake/readline.cmake:126 (FIND_CURSES)
cmake/readline.cmake:193(MYSQL_USE_BUNDLED_LIBEDIT)
CMakeLists.txt:325 (MYSQL_CHECK_READLINE)

解决办法:

按照提示,缺少ncurses包,因此需要安装,命令如下:

$sudo apt-get install libncurses5-dev

然后把当前目录下这个缓存文件删除,命令如下:

$sudo rm CmakeCache.txt

然后,重新用cmake进行配置,复制上面的命令即可。

3.10.9使用make命令编译源码文件并生成安装文件,命令如下:

$make                          //编译

3.10.10使用makeinstall命令进行安装,命令如下:

$make install

3.10.11复制配置文件,命令如下:

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

3.10.12进入安装路径,命令如下:

$cd /usr/local/mysql

3.10.13执行配置脚本进行初始化数据库,命令如下:

    $sudo ./scriptc/mysql_install_db –user=mysql –datadir=/db/mysql/data

    3.10.14复制服务启动脚本,命令如下:

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

    3.10.15启动MySQL服务,命令如下:

    $sudo service mysql start

    3.10.16设置root密码,命令如下:

    $sudo /usr/local/mysql/bin/mysqladmin –uroot password 123456

    即新密码设置为123456

    3.10.17设置开机自启动,命令如下:

    $sudo update-rc.d mysql defaults

    3.10.18设置mysql为系统命令,命令如下:

    $sudo ln –s /usr/local/mysql/bin/* /bin/

    以后在系统中直接执行:

    $mysql –uroot –p

    就可以登录了(对于远程登录为$mysql–h(IP号) –uroot -p)

    3.10.19设置访问权限

    在MySQl安装过程中,使用mysql_install_db程序安装了MySQL数据库授权表,表定义了初始MySQL用户帐户和访问权限,所有初始账户均没有密码。这些账户为超用户帐户,可以执行任何操作。初始root账户的密码为空,因此任何人可以用root账户不用任何密码来连接MySQL服务器,并具有所有权限,这意味着MySQL安装未受保护。如果你想要防止客户端不使用密码用匿名用户来连接,你应当为匿名账户指定密码或删掉匿名账户,应当为MySQL root账户指定密码。使用mysql –uroot启动MySQL客户端控制台,连接MySQL服务器。命令行如下:

$mysql –uroot –p

然后用刚才设置的密码123456登录,接着执行:

mysql>show databases;

mysql>use mysql;

mysql>select host,user,password from user;

ubuntu12.10服务器关于网络配置、安装ssh、vsftpd以及编译安装LAMP等_第5张图片

mysql>delete from user where user=’’;

mysql>update user set password =password(‘123456’)whereuser=’root’;

mysql>flush privileges;

再进行“elect host,user,password from user;”即可查看当前用户的情况!

ubuntu12.10服务器关于网络配置、安装ssh、vsftpd以及编译安装LAMP等_第6张图片

3.10.20 MySQL CMAKE编译参数详解

-DCMAKE_INSTALL_PREFIX= 指向mysql安装目录

-DINSTALL_SBINDIR=sbin 指向可执行文件目录(prefix/sbin)

-DMYSQL_DATADIR=/var/lib/mysql 指向mysql数据文件目录(/var/lib/mysql)

-DSYSCONFDIR=/etc/mysql 指向mysql配置文件目录(/etc/mysql)

-DINSTALL_PLUGINDIR=lib/mysql/plugin指向插件目录(prefix/lib/mysql/plugin)

-DINSTALL_MANDIR=share/man 指向man文档目录(prefix/share/man)

-DINSTALL_SHAREDIR=share 指向aclocal/mysql.m4安装目录(prefix/share)

-DINSTALL_LIBDIR=lib/mysql 指向对象代码库目录(prefix/lib/mysql)

-DINSTALL_INCLUDEDIR=include/mysql指向头文件目录(prefix/include/mysql)

-DINSTALL_INFODIR=share/info 指向info文档存放目录(prefix/share/info)

prefix官方推荐设为/usr

Storage Engine相关

类型csv,myisam,myisammrg,heap,innobase,archive,blackhole

若想启用某个引擎的支持:-DWITH_<ENGINE>_STORAGE_ENGINE=1

-DWITH_INNOBASE_STORAGE_ENGINE=1

-DWITH_ARCHIVE_STORAGE_ENGINE=1

-DWITH_BLACKHOLE_STORAGE_ENGINE=1

若想禁用某个引擎的支持:-DWITHOUT_<ENGINE>_STORAGE_ENGINE=1

-DWITHOUT_EXAMPLE_STORAGE_ENGINE=1

-DWITHOUT_FEDERATED_STORAGE_ENGINE=1

-DWITHOUT_PARTITION_STORAGE_ENGINE=1

Library相关

-DWITH_READLINE=1 启用readline库支持提供可编辑的命令行

-DWITH_SSL=system 启用ssl库支持安全套接层

-DWITH_ZLIB=system 启用libz库支持(zibgzib相关

-DWTIH_LIBWRAP=0 禁用libwrap实现了通用TCP包装的功能为网络服务守护进程使用

-DMYSQL_TCP_PORT=3306 指定TCP端口为3306

-DMYSQL_UNIX_ADDR=/tmp/mysqld.sock 指定mysql.sock路径

-DENABLED_LOCAL_INFILE=1 启用本地数据导入支持

-DEXTRA_CHARSETS=all 启用额外的字符集类型默认为all

-DDEFAULT_CHARSET=utf8 指定默认的字符集为utf8

-DDEFAULT_COLLATION=utf8_general_ci 设定默认排序规则(utf8_general_ci快速/utf8_unicode_ci准确

-DWITH_EMBEDDED_SERVER=1 编译嵌入式服务器支持

-DMYSQL_USER=mysql 指定mysql用户(默认为mysql)

-DWITH_DEBUG=0 禁用debug默认为禁用

-DENABLE_PROFILING=0 禁用Profiling分析默认为开启

-DWITH_COMMENT='string' 一个关于编译环境的描述性注释

3.11安装最新版本的PHP

3.11.1在上面的链接或者网上下载php-5.4.14.tar.gz,放到/home/hylongsuny/目录下,解压软件包到当前目录php-5.4.14进入php-5.4.14目录,命令如下:

$cd /home/hylongsuny                       //进入源码包所在目录

$sudo tar zxvf php-5.4.14.tar.gz            //解压缩

$cd php-5.4.14                         //进入目录

3.11.2使用configure命令检查并配置安装需要的系统环境,并生成安装配置文件,命令行如下(为了直观,使用“\”将一个命令换成多行):

$sudo ./configure \

>--prefix=/usr/local/php \                 //设置PHP5的安装路径

>--with-config-file-path=/usr/local/php/etc \  //指定PHP5配置文件存入的路径

>--with-apxs2=/usr/local/apache2/bin/apxs \//告诉PHP查找Apache2的地方

>--with-mysql=/usr/local/mysql/ \               //指定MySQL的安装路径

>--with-libxml-dir=/usr/local/libxml2/ \      //告诉PHP放置libxml2库的地方

>--with-png-dir=/usr/local/libpng/ \           //告诉PHP放置libpng库的地方

>--with-jpeg-dir=/usr/local/jpeg6/ \          //告诉PHP放置jpeg库的地方

>--with-freetype-dir=/usr/local/freetype/ \//告诉PHP放置freetype库的地方

>--with-gd=/usr/local/gd2/ \                   //告诉PHP放置gd库的地方

>--with-zlib-dir=/usr/local/zlib/ \        //告诉PHP放置zlib库的地方

>--with-mcrypt=/usr/local/libmcrypt/ \     //告诉PHP放置libmcrypt库的地方

>--with-mysqli=/usr/local/mysql/bin/mysql_config \ //变量激活新增加的MySQL功能

>--enable-soap \                           //变量激活SOAP和Web Services支持

>--enable-mbstring=all \                   //使多字节字符串支持

>--enable-sockets                      //变量激活socket通信特性

3.11.3使用make命令编译源码文件并生成安装文件,命令如下:

$make                                  //编译

注:在make的过程将产生如下错误:


安装PHP5.4,‘gdIOCtx没有名为’data’的成员!

解决方法:

修改/usr/local/gd2/include/gd_io.h(注:这是安装gd2时的路径)将添加一行,其操作如下:

$sudo vim/usr/local/gd2/include/gd_io.h

gdIOCtx结构中增加void(*data);

格式如下:


保存退出后,再进行make编译!

3.11.4使用make install命令进行安装,命令如下:

$make install                           //安装

3.11.5建立配置文件,在使用configure命令安装配置时使用了“

--with-config-file-path=/usr/local/php/etc/”选项,指定了配置文件的位置.将源码包目录下的“php.ini-dist”文件复制到指定的目录”/usr/local/php/etc/”中,并改名为“php.ini”即可(注:新版本的包并不包含php.ini-dist了,而是php.ini-development和php.ini-production,其中一个是开发环境的,一个是生产环境的)其命令如下:

$sudocp php.ini-development  /usr/local/php/etc/php.ini       //创建配置文件

3.11.6整合Apache与PHP。上面PHP编译之前,我们使用configure命令安装配置时,使用了”—with-apxs2=/usr/local/apache2/bin/apxs”选项以使Apache2将PHP作为功能模块使用。但我们还需要修改Apache配置文件,添加PHP的支持,告诉Apache将哪些后缀作为PHP解析。例如,让Apache把.php或.phtml后缀的文件解析为PHP。使用vim打开Apache配置文件/etc/httpd/httpd.conf,找到”Add Type application/x-gzip.gz.tgz”指令项,并在其下方添加一条指令“Addtype application/x-httpd-php.phtml”.也可以将任何后缀的文件解析为PHP,只要在添加的语句中加入并用空格打开,这里以多添加一个.phtml来示例,如下所示:

ubuntu12.10服务器关于网络配置、安装ssh、vsftpd以及编译安装LAMP等_第7张图片

添加最后一条“AddType application/x-httpd-php-source .phps”是为了将.phps作为PHP的源文件进行语法高亮显示。

3.11.7重启Apache服务器,重启以后才能重新加载配置文件使修改生效,命令如下:

$sudo /usr/local/apache2/bin/apachectl stop             //停止Apache服务

$sudo /usr/local/apache2/bin/apachectl start              //开启Apache服务

3.11.8测试PHP环境是否可以正常运行,在/usr/local/apache2/htdocs目录下建一个phpinfo目录,在phpinfo目录下新建一个index.php的文件,在该php文件中添加如下代码:

<?php

Phpinfo();

?>

打开浏览器,在地址栏中输入URL为http:192.168.1.51/index.php来运行该文件,如果出现如下图所示的内容表示LAMP环境安装成功。


上例中使用了phpinfo()函数,作用是输出有关PHP当前状态的大部分信息内容,这包括关于PHP的编译和扩展信息、PHP版本、服务器信息和环境、PHP的环境、操作系统信息、路径、主要的和本地配置选项的值、HTTP头信息和PHP的许可等。因为每个系统的安装不同,phpinfo()函数可以用于检查某一特定系统配置设置和可用的预定义变量等。它也是一个宝贵的调试工具,因为它包含了所有EGPS(Environment,GET,POST,Cookie,Server)数据。

你可能感兴趣的:(ssh,服务器,ubuntu,lamp,vsftpd)