使用NFS和Samba文件服务搭建博客站点

使用NFSSamba文件服务搭建博客站点

使用NFS和Samba文件服务搭建博客站点

实验目的:分别使用NFSSmaba文件服务实现wordpress

实验要求:

(1) server导出/data/application/web,在目录中提供wordpress;
(2) client
挂载nfs server导出的文件系统至/var/www/html
(3) 
客户端1(lamp),部署wordpress,并让其正常访问;要确保能正常发文章,上传图片;
(4) 
客户端2(lamp),挂载nfs server导出的文件系统至/var/www/html;验正其wordpress是否可被访问;要确保能正常发文章,上传图片;
实验环境:

需要4台虚拟机:CentOS 7充当服务器,两台CentOS 6充当客户端而Windows 10用于验证结果;网络拓扑和IP地址规划如图

操作步骤:

一、使用NFS实现上述目标:在服务器端做如下操作

1.安装所需要软件包

# yum -y install nfs-utils mariadb-server

2.准备客户端访问时映射为的用户apache(此用户默认存在)

# useradd -u 48 apache

3.准备需要导出的目录,且其属主、属组均为apache

# install -o apache -g apache -d /data/application/web

4.下载wordpress程序包并解压至/data/application/web目录下,并将其属主、属组改为apachewordpress目录下的wp-content目录的权限改为777(上传图片时需要写权限)

# unzip wordpress-4.3.1.-zh_CN.zip

# mv wordpress /var/www/html

# cd /data/application/web

# chown -R apache.apache wordpress

# chmod 777 wordpress/wp-content

5.编辑nfs配置文件,/data/application/web目录导出,允许192.168.10.0/24网段连接,导出属性为rw,async,用户映射为apache

# vim /etc/exports

/data/application/web 192.168.10.0/24(rw,async,anonuid=48,anongid=48)

6.启动mysql服务,创建数据库,并授权用户wpuser对此数据库下的所有表拥有所有权限;

# systemctl start mariadb

# mysql

mysql>CREATE DATABASE wpdb;

mysql>GRANT ALL ON wpdb.* TO ‘wpuser’@’%’ IDENTIFIED BY ‘wppasswd’;

mysql>FLUSH PRIVILEGES;

7.关闭selinux和清除防火墙规则

# setenforce 0

# iptables -F

8.启动nfs服务

# systemctl start nfs

切换到客户端1

1.将服务器端导出的目录挂载至/var/www/html目录下

mount.nfs   192.168.10.2:/data/application/web/wordpress    /var/www/html

也可写在/etc/fstab文件中,永久有效

# vim /etc/fstab

192.168.10.0:/data/application/web/wordpress   /var/www/html   nfs   defaults   0 0

2.安装所需的程序包

# yum -y install httpd php php-mysql

3.关闭selinux和清除防火墙规则

# setenforce 0

# iptables -F

4.启动http服务

# service httpd start

5.在测试机打开浏览器安装wordpress

地址是:192.168.10.3

数据库名:wpdb

用户名:wpuser

密码:wppasswd

数据库主机是服务器的IP地址:192.168.10.2

6.安装完成后测试其能否发表文章,上传图片等。

切换到客户端2

1.将服务器端导出的目录挂载至/var/www/html目录下

mount.nfs 192.168.10.2:/data/application/web/wordpress    /var/www/html

也可写在/etc/fstab文件中,永久有效

# vim /etc/fstab

192.168.10.2:/data/application/web/wordpress    /var/www/html   nfs   defaults 0 0

2.安装所需的程序包

# yum -y install httpd php php-mysql

3.关闭selinux和清除防火墙规则

# setenforce 0

# iptables -F

4.启动http服务

# servict httpd start

5.在测试上打开浏览器输入地址192.168.10.23直接登录,查看客户端1发表的文章在本机是否可见。并同样测试其是否能发表文章,上传图片等;(本机无须安装wordpress)

至此使用NFS文件服务搭建的博客站点已经实现,接下来将使用Samba文件服务搭建,具体操作如下:

二、使用NFS实现上述目标:在服务器端做如下操作

1.安装所需要软件包

# yum -y install samba mariadb-server

2.准备客户端访问时映射为的用户apache(此用户默认存在)

# useradd -u 48 apache

3.准备需要导出的目录,且其属主、属组均为apache

# install -o apache -g apache -d /data/application/web

4.下载wordpress程序包并解压至/data/application/web目录下,并将其属主、属组改为apachewordpress目录下的wp-content目录的权限改为777(上传图片时需要写权限)

# unzip wordpress-4.3.1.-zh_CN.zip

# mv wordpress /var/www/html

# cd /data/application/web

# chown -R apache.apache wordpress

# chmod 777 wordpress/wp-content

5.编辑smb.conf配置文件,填写如下信息

# vim /etc/samba/smb.conf

[wordpress]

comment = wordpress storage location

path = /data/application/web/wordpress

browseable = yes

writable = yes

write list = apache

6.为系统用户apache添加密码(此处的密码不是登录系统的密码,而是用于访问共享文件)

# smbpasswd -a apache

回车后输入密码即可(此处输入的密码是:”centos”)

7.启动mysql服务,创建数据库,并授权用户wpuser对此数据库下的所有表拥有所有权限;

# systemctl start mariadb

# mysql

mysql>CREATE DATABASE wpdb;

mysql>GRANT ALL ON wpdb.* TO ‘wpuser’@’%’ IDENTIFIED BY ‘wppasswd’;

mysql>FLUSH PRIVILEGES;

8.关闭selinux和清除防火墙规则

# setenforce 0

# iptables -F

9.启动samba服务

# systemctl start smb.service

切换到客户端1

1.将服务器端导出的目录挂载至/var/www/html目录下

mount.cifs //192.168.10.2/wordpress /var/www/html -o username=apache,password=centos

2.安装所需的程序包

# yum -y install httpd php php-mysql

3.关闭selinux和清除防火墙规则

# setenforce 0

# iptables -F

4.启动http服务

# service httpd start

5.在测试机上打开浏览器安装wordpress

地址是:192.168.10.3

数据库名:wpdb

用户名:wpuser

密码:wppasswd

数据库主机是服务器的IP地址:192.168.10.2

6.安装完成后测试其能否发表文章,上传图片等。

切换到客户端2

1.将服务器端导出的目录挂载至/var/www/html目录下

mount.cifs //192.168.10.2/wordpress /var/www/html -o username=apache,password=centos

2.安装所需的程序包

# yum -y install httpd php php-mysql

3.关闭selinux和清除防火墙规则

# setenforce 0

# iptables -F

4.启动http服务

# service httpd start

5.在测试机打开浏览器输入地址192.168.10.23直接登录,查看客户端1发表的文章在本机是否可见。并同样测试其是否能发表文章,上传图片等;(本机无须安装wordpress)

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

(1)
人字拖人字拖
上一篇 2017-04-30 17:55
下一篇 2017-04-30 20:30

相关推荐

  • 马哥教育网络班22期+第九周课程练习

    1、写一个脚本,判断当前系统上所有用户的shell是否为可登录shell(即用户的shell不是/sbin/nologin);分别统计这两类用户的个数;通过字符串比较来实现; #!/bin/bash declare -i sum1=0 declare -i sum2=0 shells=$(cat /etc/p…

    Linux干货 2016-11-28
  • Linux管理目录和文件命令

     管理目录命令: pwd:显示当前目录 Cd:   改变当前目录 ls:    查看目录下的内容 rmdir: 删除目录 管理文件命令: cat: 查看文件内容 cp: 复制文件内容 grep:在文件中查找某字符 touch:创建文件 rm&nbsp…

    2016-03-05
  • 小白学习Linux系统一周总结

         告别平凡,安定而又没什么前途的工作,我选择了报了门热门的计算机课程--python运维开发。我不知道为什么一开始就学Linux系统,我早预料到这是一个艰难的开始,还好我不是完全没有基础,以前有学过iOS开发。看到着终端中的“\”表示根目录,我轻微有点亲切感,不像第一次看到终端时的恐惧。我总结这周的学习感受,希…

    Linux干货 2017-09-04
  • vim编译器与shell脚本简介

    一、vim文本编译器       vi:Visual Interface,文本编辑器;   文本: ASCII Unicode  文本编辑种类:行编辑器:sed  ;全屏编辑器:nano,vi ,vim ;其他编辑器:gedit(图形),g…

    Linux干货 2016-11-24
  • shell脚本基础

    程序是由指令加数据组成 编程风格分为过程式和对象时 过程式:以指令为中心,数据服务于指令,适合小型程序 对象式:以数据为中心,指令服务于数据,社和大型程序 高级语言的执行方式分为编译型和解释型 编译型:先将高级语言通过编译器编译成二进制代码再执行 解释型:程序编写完成后不转换成二进制代码,在使用时才通过解释器解释运行,不生成二进制程序 shell就是一种解释…

    Linux干货 2016-08-18
  • N26-第八周作业-邢岩

    马哥门徒-N26-邢岩 1、写一个脚本,使用ping命令探测172.16.250.1-172.16.250.254之间的所有主机的在线状态;      在线的主机使用绿色显示;      不在线的主机使用红色显示; #!/bin/bash # Author: jeque# Des…

    2017-03-24