带你走进PI的世界-Raspbian Pi上实现LAMP

 初识   Raspbian PI    


              前段时间,出于兴趣,入手一个树莓派(Raspbian PI),没有听说过的朋友或许会有跟我第一次听说树莓派这个名字一样的疑问,什么是树莓派,树莓派,是一款非常成熟的单板机并且拥有足够的处理性能,能够轻易地作为一台标准PC,又称卡片式电脑,外形只有信用卡大小,却具有电脑的所有基本功能,这就是Raspberry Pi电脑板,如下图:

2_编辑.jpg

        没错,你确实没有看错,这就是它的真面目,看惯了台式机、笔记本、塔式的、机架式的电脑或者服务器,或许第一次看到它会觉得它无比的苗条,但是不要小看它,它有一颗强大的芯,树莓派2代的Model B采用Broadcom BCM2836 900MHz的四核SoC,1GB内存,不仅能跑全系列ARM GNU/Linux发行版,而且支持Snappy Ubuntu Core及Windows 10。

       有了以上的认识,我们大致已经知道树莓派是什么了,或许聪明的朋友一定会问:那怎么让它跑起来那?别着急,我们一步一步来,由于树莓派采用的是Broadcom BCM2836 900MHz的四核SoC,该款CPU是ARM架构的,所以我们平时采用的CentOS、Red Hat等系列的发行版肯定是无法使用了,为了能够快速让我们的系统跑起来,我将使用2015-09-24-raspbian-jessie这个比较容易上手的系统,而且我打算采用一种偷懒的方法,直接把该系统烧制到硬盘中,也就是SD卡中,请注意,受限于树莓派的身材所限,树莓派的外部存储采用的是普通SD卡,为了不影响运行速度,请使用高速卡,这里我使用的是闪迪class10 32G的高速卡,下面让我们来详细介绍如何将系统烧制到SD卡

      1:下载镜像文件:2015-09-24-raspbian-jessie

            下载烧制工具:Win32DiskImager-0.9.5-binary

      2:更改boot目录下的config.txt配置文件(由于我采用了HDMI转VGA的转接口所以必须更改)

hdmi_force_hotplug=1      ##即便没有检测到HDMI显示器也要使用HDMI模式
config_hdmi_boost=4
hdmi_group=2
hdmi_mode=47              ##屏幕分辨率及刷新频率,此时代表1440*900
hdmi_drive=2
hdmi_ignore_edid=0xa5000080
disable_overscan=1

        有了以上两步的准备工作,基本上我们的系统就可以正常启动了,这里需要提醒一点,由于我没有把HDMI接头插到位,导致开机后黑屏,走了不少弯路,所以请放心,你的树莓派没有你想的那样孱弱,请确保你所有的接头都接到位。

        3:将烧制好的SD卡插入树莓派的卡槽,接通电源、鼠标键盘、网络、以及显示器,打开电源开关,此时崭新的世界开始了,如下图,配置IP:webwxgetmsgimg_编辑.jpg

      4、配置IP:

sudo ip address 192.168.30.5 255.255.255.0

         修改配置文件使其重启有效:/etc/network/interface

auto lo
iface lo inet loopback

auto eth0
allow-hotplug eth0
iface eth0 inet manual
iface eth0 inet static
address 192.168.30.5
netmask 255.255.255.0
gateway 192.168.30.1
dns-nameservers 192.168.30.1
dns-nameservers  114.114.114.114

  

衣带渐宽终不悔,为伊消得人憔悴


         如何实现LAMP

 

         由于2015-09-24-raspbian-jessie是基于Debian linux的这个发行版的,所以与Red Hat系列的linux会有所不同,但是有了在CentOS或者RedHat上面的操作的经验之后,这个基于Debian的树莓派并不能难倒我们,首先就像CentOS系列配置Yum源一样,我们需要配置安装源,但是在安装软件之前需要先说一下我发现一个很严重的问题,就是由于使用了现有的镜像文件直接烧制到SD卡中,而烧制好的系统“/”根分区只有3.9G的空间,这也是导致我第一次安装到最后PHP的时候空间已经不够用了,在试图将/usr目录挂载到另外一个分区时,由于没有做好/usr目录的备份工作,导致/usr/目录下的一些关键命令无法执行,无奈只能重新烧制系统,重新挂载/usr目录到新创建的分区,具体方法如下:

         1、使用fdisk工具创建一个分区:/dev/mmcblk0p3

sudo fdisk /dev/mmcblk0

          2、将创建好的新分区格式化成ext4文件系统

sudo mkfs -t ext4 /dev/mmcblk0p3

         3、挂载新创建的分区到/usrnew(如何没有该目录可先创建好该目录)

mount /dev/mmcblk0p3 /usrnew

          4、修复/etc/fstab

proc            /proc           proc    defaults          0       0
/dev/mmcblk0p1  /boot           vfat    defaults          0       2
/dev/mmcblk0p2  /               ext4    defaults,noatime  0       1
/dev/mmcblk0p3  /usr            ext4    defaults,noatime  0       1  #开启自动将/usr挂载到新创建分区 
# a swapfile is not a swap partition, no line here
#   use  dphys-swapfile swap[on|off]  for that

        5、将/usr/目录下所以文件复制到/usrnew/目录下

sudo cp -a /usr/* /usrnew/

        6、将/usr重命名为/usrbak

sudo mv /usr /usrbak

        7、将/usrnew重命名为/usr

sudo mv /usrnew /usr

         此时根分区空间不够的问题已经解决了,接下来就让我们来安装软件

 

 安装阶段

        安装MySQL

apt-get updata
apt-get updeta 
apt-get -y install mysql-server

       这个过程中,你将会有机会设置MySQL的root用户的密码。

 

 

       安装Apache

apt-get -y install apache2

  

       这种方式安装完的Apache,其web根目录在 /var/www/html , Apache 以 www-data 的身份运行,可以尝试着访问 http://127.0.0.1 ,已经可以访问了。

 

      安装PHP

 

  1. apt-get install php5   

  2. apt-get install php5-mysql    

  3. apt-get install php5-gd   

  4. apt-get install libapache2-mod-auth-mysql   

  5. apt-get install libapache2-mod-php5  

 

配置和测试阶段

       首先让我们来测试一下我们的php有没有正常安装,在 /var/www/html 下创建一个文件,命名为 index.php

<?php
   phpinfo()
 ?>

 

      访问 http://127.0.0.1/index.php ,那熟悉的PHP INFO信息就能看到了,此时我们查找一下又没有mysql的相关信息,如何有话,如下图,那么恭喜你你的PHP安装成功了。

php.jpg

       

暮然回首那人却在灯火阑珊处


      安装wordpress-4.4

         1、下载以及解压

wget 
unzip wordpress-4.4-zh_CN.zip
sudo mkdir /var/www/html/wp
sudo mv wordpress-4.4-zh_CN/* /var/www/html/wp/

        2、为wordpress创建mysql用户以及数据库

mysql -u root -p
CREATE DATABASE wpdb;
GRANT ALL ON wpdb.* TO 'wpuser'@'127.0.0.1' IDENTIFIED BY 'wppasswd';
FLUSH PRIVILEGES;

             为了确保wordpress可以使用我们创建的数据库以及用户,我还可以写一个php脚本来测试我们的数据库是否可以连接,访问这个页面如何显示OK,就表示我们的创建的用户以及数据库就可以正常被wordpress使用了,

<?php
    $conn = mysql_connect("localhost","wpuser","wppasswd");
    if ($conn)
      echo "ok";
    else
      echo "failure";
    mysql_close($conn);
?>

       3、修改配置wordpress

cd /var/www/html/wp/
cp wp-config-sample.php wp-config.php
vi wp-config.php

           只需修改一下三项内容

define('DB_NAME', 'wpdb');
define('DB_USER', 'wpuser');
define('DB_PASSWORD', 'wppasswd');

           聪明的你一定看的出来,这就是你这里修改的是什么内容,一个是数据库名称,一个是使用的用户,还有一个就是这个用户对应的密码。

          此时你就可以登录到http://localhost/wp/来配置你自己的wordpress

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

(0)
zhangzhang
上一篇 2016-01-03
下一篇 2016-01-05

相关推荐

  • 作业——2016-10-17

    1 生产环境发现一台服务器系统时间产生偏差,造成服务异常,请帮忙校正。     将系统时间同步到硬件时间的命令是hwclock -s 2 生产有一个数据同步脚本需要执行很长时间,怎样做到无人值守,在管理工具退出的情况下,脚本依然能正常运行。     screen -S work  进去后开始做工作,暂时离开时…

    Linux干货 2016-10-18
  • first

    计算机可分为硬件(CPU ,存储器 ,输入设备 ,输出设备),软件(操作系统 ) 两大部份; CPU:Central Processing Unit 中央处理器 ,内部由运算器,控制器,寄存器,缓存器组成 ; 存储器 :(RAM:Random Access Memory 随机存储器)进行数据 暂存,断电后其内信息会丢失,如内存 ;(ROM:Read Only…

    Linux干货 2016-12-05
  • 基于LNMP网站平台,测试增加memcached缓存系统后网站访问效果

    LNMP安装教程链接:22-love cat 17周博客作业第2部分-构建一个LVS-DR模型的高性能集群 memcached 安装及测试效果 一、概念     memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载。它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高动态…

    Linux干货 2016-08-22
  • 程序包管理与编译安装详解

    (注:内容太多,容纳不下,编译安装apache单独成文) 一、程序包管理工具 不同的发行版采用的管理工具不尽相同:               debian: 程序文件以deb结尾,包管理器为dpkg    &…

    Linux干货 2016-08-24
  • 分布式文件系统Mogilefs介绍与安装

    一、分布式文件系统简介: 什么是分布式存储:       分布式存储系统,是将数据分散存储在多台独立的设备上。传统的网络存储系统采用集中的存储服务器存放所有数据,存储服务器成为系统性能的瓶颈,也是可靠性和安全性的焦点,不能满足大规模存储应用的需要。分布式网络存储系统采用可扩展的系统结构,利用多台存储…

    Linux干货 2016-05-04
  • Linux基础之文件查找压缩

    为何学习本章节,可以设想一下,在未来工作中面对大量用户时,想要找到同一类型属性的用户文件时,需要一个工具可以快速准确的定位到所寻找的文件,那就是locate和find。   ******************************************************* 重点:     1.德摩根定律     非(P且Q) = (非P…

    2016-08-22