Linux初学者学习笔记

20171016 网络文件共享(二) NFS服务

2017-10-16  本文已影响41人  哈喽别样
  • NFS服务介绍
  • NFS配置文件
  • NFS工具
  • 自动挂载
  • 实验:实现基于NFS共享的LAMP wordpress的应用

一、NFS服务介绍

(一)NFS简介

(二)NFS服务

二、NFS配置文件

(一)配置文件格式

(二)实验1:建立NFS共享目录/app/nfsfile1, /app/nfsfile2

// 建立testuser用户
useradd testuser
id testuser
uid=1002(testuser) gid=1002(testuser) groups=1002(testuser)

// 编辑NFS服务配置文件
vim /etc/exports.d/nfsfile1.exports
/app/nfsfile1 192.168.136.0/24(rw,all_squash,anonuid=1002,anongid=1002)

vim /etc/exports.d/nfsfile2.exports
/app/nfsfile2 192.168.136.129(rw,no_root_squash)

// 建立相关共享文件目录
mkdir /app/nfsfile1
mkdir /app/nfsfile2
touch /app/nfsfile1/file1
touch /app/nfsfile2/file2
setfacl -R -m u:testuser:rwx /app/nfsfile1

// 重新载入配置
exportfs -r
exportfs -v

(三)实验2:实现NFS伪根

// 建立伪根目录
mkdir /exports
mkdir /exports/ftpsite
mkdir /exports/log

// 将共享目录挂载到伪根目录的子目录
mount -B /app/ftpsite /exports/ftpsite/
mount -B /var/log /exports/log/
setfacl -m u:nfsnobody:rwx /app/ftpsite     // 给远程主机root用户开放写权限

// 编辑配置文件
vim /etc/exports
/exports *(fsid=0,rw,crossmnt)
/exports/ftpsite *(rw)
/exports/log    *(ro)

// 配置文件生效
exportfs -r

可以看到,/exports目录充当了伪根,实现多个目录一次挂载,并且每个目录的配置都生效了:ftpsite目录可以写入,log目录不可以写入文件

三、NFS工具

四、自动挂载

(一)autofs服务简介

(二)autofs配置

(1)相对路径描述
(2)绝对路径描述
(3)实验:利用autofs实现远程家目录的自动挂载
mkdir -p /app/homedir/{wang,mage}
cp -r /etc/skel/.[^.]* /app/homedir/wang/
cp -r /etc/skel/.[^.]* /app/homedir/mage/
// 主机2上的用户ID情况
id wang
uid=1001(wang) gid=1001(wang) groups=1001(wang)
id mage
uid=1002(mage) gid=1002(mage) groups=1002(mage)
// 主机3上的用户ID情况
id wang
uid=502(wang) gid=502(wang) groups=502(wang)
id mage
uid=503(mage) gid=503(mage) groups=503(mage)
useradd -u 1001 wang
useradd -u 1002 mage
useradd -u 502 wang6
useradd -u 503 mage6
setfacl -R -m u:wang:rwx /app/homedir/wang/
setfacl -R -m u:wang6:rwx /app/homedir/wang/
setfacl -R -m u:mage:rwx /app/homedir/mage/
setfacl -R -m u:mage6:rwx /app/homedir/mage/
vim /etc/exports.d/wang.exports
/app/homedir/wang *(rw)
vim /etc/exports.d/mage.exports
/app/homedir/mage *(rw)

exportfs -r
// 两台主机均执行以下操作
vim /etc/auto.master
/home   /etc/auto.direct             // 添加一行
vim /etc/auto.direct
* 192.168.136.230:/app/homedir/&     // 添加一行
// 按照系统执行
systemctl restart autofs             // CentOS 7
service autofs restart               // CentOS 6

五、实验:实现基于NFS共享的LAMP wordpress的应用

(一)实验环境:本实验需要4台主机

(二)步骤1:在主机3上配置nfs服务

mkdir -p /app/www/html
setfacl -R -m u:apache:rwx /app/www/html
service nfs start
vim /etc/exports
/app/www/html 192.168.136.0/24(rw,all_squash,anonuid=48,anongid=48)
exportfs -r
exportfs -v

(三)步骤2:在主机1, 2上配置httpd服务,安装php-fpm

// 以下步骤在主机1, 2上操作相同
yum install httpd php-fpm
vim /etc/fstab

vim /etc/httpd/conf.d/fcgi.conf
DirectoryIndex index.php
ProxyRequests Off
ProxyPassMatch ^/(.*\.php)$ fcgi://127.0.0.1:9000/var/www/html/$1向代理
systemctl start php-fpm.service 
systemctl start httpd

(三)步骤3:在主机2上安装mysql服务

yum install mariadb-server
systemctl start mariadb
mysql_secure_installation

(四)步骤4:在主机3的httpd共享目录上测试与php与mysql的连接

vim /var/www/html/index.php
<?php
$mysqli=new mysqli("192.168.136.130","root","centos");
if(mysqli_connect_errno()){
  echo "连接数据库失败!";
  $mysqli=null;
  exit;
}
echo "连接数据库成功!";
$mysqli->close();
phpinfo();
?>

(五)步骤5:在主机3的httpd共享目录上安装WordPress

tar -xvf wordpress-4.8.1-zh_CN.tar.gz -C /var/www/html/

(六)步骤6:在主机4上实现DNS服务

上一篇 下一篇

猜你喜欢

热点阅读