使用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

相关推荐

  • Linux基础命令之文本命令

    关于文本的命令:     1.文件查看命令:        a.cat:查看文件,实现参数给的内容一个个显示出来            -n:显示行号(显示的空行的行号)          …

    Linux干货 2016-08-07
  • python-多进程

    进程是由系统自己管理的。 1:最基本的写法 from multiprocessing import Pool def f(x):     return x*x if __name__ == '__main__': &nb…

    Linux干货 2016-11-05
  • python装饰器

    装饰器本质是一个装饰器函数,在不改变一个函数的函数体本身的情况下,实现函数体本身外其他的功能 1.实现一个装饰器 def  logger(fn):                         #装饰器函数必须只能传入一个参数,那就是被装饰函数     print(‘in’)     def wrapper(*args,**kwar…

    Linux干货 2017-10-23
  • 初识Linux

                              初认识Linux 1.1 Linux的登录界面 在虚拟机安装CentOS 7中有提到,我在安装Linux操作系统的时候,采用的是命令行界面的登录方式,当然也有像Windows那样…

    Linux干货 2016-10-27
  • bash 基础特性1

    bash 基础特性 命令模式 systemctl set-default multi-user.target 图形模式 systemctl set-default graphical.target   # rmdir [OPTION]…DIRECTORY…-p:删除某录后,如果其父目录为空,则一并删除之-v:显示过程# mk…

    Linux干货 2017-06-01
  • 人志建,则无敌—if、case练习

    马哥21期网络班-9周博客作业 1、写一个脚本,判断当前系统上所有用户的shell是否为可登录shell(即用户的shell不是/sbin/nologin);分别这两类用户的个数;通过字符串比较来实现; #!/bin/bash for i in `cut -d: -f7 /etc/passwd`;&…

    Linux干货 2016-09-05