1.首先先格式化磁盘,然后将要共享的目录挂载到磁盘下面
#注意看清磁盘是什么有的磁盘不一样有/sda /sdb或者还有其他的,要注意修改
#服务器端防火墙开放111、662、875、892、2049的 tcp / udp 允许,否则远端客户无法连接
#我下面是ubantu和centos两种系统的搭建方式,ubantu是我写的脚本,如果ubantu系统想手动搭建,将yum替换成apt即可。如果其它系统,换一下命令也可以使用
sudo mkfs.ext4 /dev/sdb1
2./dev/sdb1 磁盘挂载到 /root/nfs_share 目录,文件系统为 ext4,可以在 /etc/fstab
文件中添加以下行
/dev/sdb1 /root/nfs_share ext4 defaults 0 0
3.NFS服务端的操作(centos系统)
3.1执行以下命令安装 nfs 服务器所需的软件包
yum install -y rpcbind nfs-utils
3.2执行命令 vim /etc/exports
,创建 exports 文件,文件内容如下
/root/nfs_root/ *(insecure,rw,sync,no_root_squash)
3.3执行以下命令,启动 nfs 服务
# 创建共享目录,如果要使用自己的目录,请替换本文档中所有的 /root/nfs_share/
mkdir /root/nfs_share
systemctl enable rpcbind
systemctl enable nfs-server
systemctl start rpcbind
systemctl start nfs-server
exportfs -r
3.4检查配置是否生效
exportfs
# 输出结果如下所示
/root/nfs_share /root/nfs_share
4.NFS客服端操作(centos系统)
4.1执行以下命令安装 nfs 客户端所需的软件包
yum install -y nfs-utils
4.2执行以下命令检查 nfs 服务器端是否有设置共享目录
# showmount -e $(nfs服务器的IP)
showmount -e 192.168.1.1
# 输出结果如下所示
Export list for 192.168.1.1: /root/nfs_share *
4.3执行以下命令挂载 nfs 服务器上的共享目录到本机路径 /root/nfsmount
mkdir /root/nfsmount
# mount -t nfs $(nfs服务器的IP):/root/nfs_share /root/nfsmount
mount -t nfs 192.168.1.1:/root/nfs_share /root/nfsmount
# 写入一个测试文件 echo "hello nfs server" > /root/nfsmount/test.txt
4.4在 nfs 服务器上执行以下命令,验证文件写入成功
cat /root/nfs_root/test.txt
5.ubantu系统
5.1NFS服务器
#!/bin/bash
#要分享的目录
dir="分享目录位置"#客户端ip
ip="填写客户端ip"# 安装 NFS 服务器软件包
sudo apt update
sudo apt install nfs-kernel-server -y# 配置 NFS 服务器
sudo mkdir -p $dir
sudo chown nobody:nogroup $dir
sudo chmod 777 $dir# 配置 NFS 共享
echo "$dir $ip(rw,sync,no_subtree_check)" | sudo tee -a /etc/exports# 重启 NFS 服务器
sudo exportfs -a
sudo systemctl restart nfs-kernel-server# 显示 NFS 共享配置信息
showmount -e localhost
5.2NFS客户端
#!/bin/bash
# 安装 NFS 客户端软件包
sudo apt update
sudo apt install nfs-common -y# 挂载 NFS 共享
sudo mkdir -p /mnt/nfs_client
sudo mount <NFS_SERVER_IP>:/mnt/<nfs_share> /mnt/<nfs_client># 检查挂载情况
df -h | grep nfs# 设置开机自动挂载
#/mnt/nfs_share为nfs挂载的目录 /mnt/nfs_client为客户端目录
echo "<NFS_SERVER_IP>:/mnt/<nfs_share> /mnt/<nfs_client> nfs defaults 0 0" | sudo tee -a /etc/fstab