如何在 CentOS 6 上设置 NFS 挂载

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站

关于 NFS(网络文件系统)挂载

NFS 挂载用于在多台服务器之间共享目录。这样做的优势在于节省磁盘空间,因为家目录只保存在一台服务器上,其他服务器可以通过网络连接到它。在设置挂载时,NFS 对于永久固定的应始终可访问的情况最为有效。

设置

NFS 挂载在至少两台服务器之间设置。托管共享网络的机器称为服务器,而连接到它的机器称为"客户端"。

本教程需要 2 台服务器:一台作为服务器,一台作为客户端。我们将首先设置服务器机器,然后是客户端。以下 IP 地址将分别指代它们:

主服务器:12.34.56.789

客户端:12.33.44.555

系统应以 root 用户身份设置。您可以通过输入以下命令访问 root 用户:

复制代码
sudo su

设置 NFS 服务器

第一步---下载所需软件

首先使用 apt-get 安装 nfs 程序。

复制代码
yum install nfs-utils nfs-utils-lib

随后,运行几个 NFS 服务器的启动脚本:

复制代码
chkconfig nfs on 
service rpcbind start
service nfs start

第二步---导出共享目录

下一步是决定要与客户端服务器共享的目录。然后,将所选目录添加到 /etc/exports 文件中,该文件指定要共享的目录以及共享方式的详细信息。

假设我们想要共享目录 /home。

我们需要导出该目录:

复制代码
vi /etc/exports

在文件底部添加以下行,与客户端共享目录:

复制代码
/home           12.33.44.555(rw,sync,no_root_squash,no_subtree_check)

这些设置完成了几项任务:

  • rw: 此选项允许客户端服务器在共享目录中进行读写操作
  • sync: Sync 仅在更改已提交后确认对共享目录的请求。
  • no_subtree_check: 此选项防止子树检查。当共享目录是较大文件系统的子目录时,nfs 执行扫描以验证其上面的每个目录的权限和详细信息。禁用子树检查可能会提高 NFS 的可靠性,但降低安全性。
  • no_root_squash: 此短语允许 root 用户连接到指定目录

<p完成每个目录的设置后,运行以下命令导出它们:

复制代码
exportfs -a

设置 NFS 客户端

第一步---下载所需软件

首先使用 apt-get 安装 nfs 程序。

复制代码
yum install nfs-utils nfs-utils-lib

第二步---挂载目录

一旦程序已下载到客户端服务器,创建将包含 NFS 共享文件的目录

复制代码
mkdir -p /mnt/nfs/home

然后继续挂载它

复制代码
mount 12.34.56.789:/home /mnt/nfs/home

<p您可以使用 df -h 命令检查目录是否已挂载。您将在列表的最后看到它。

复制代码
df -h
复制代码
Filesystem            Size  Used Avail Use% Mounted on
/dev/sda               20G  783M   18G   5% /
12.34.56.789:/home       20G  785M   18G   5% /mnt/nfs/home

<p此外,使用 mount 命令查看已挂载的文件系统的完整列表。

复制代码
mount

<p您的列表应如下所示:

复制代码
/dev/sda on / type ext4 (rw,errors=remount-ro)
none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw)
sunrpc on /var/lib/nfs/rpc_pipefs type rpc_pipefs (rw)
nfsd on /proc/fs/nfsd type nfsd (rw)
12.34.56.789:/home on /mnt/nfs/home type nfs (rw,noatime,nolock,bg,nfsvers=2,intr,tcp,actimeo=1800,addr=12.34.56.789)

测试 NFS 挂载

<p一旦成功挂载了 NFS 目录,您可以通过在客户端创建文件并检查其在服务器上的可用性来测试它。

<p在目录中创建一个文件以尝试:

复制代码
touch /mnt/nfs/home/example

<p然后您应该能够在 /home 中找到该文件。

复制代码
ls /home

<p您可以通过将目录添加到客户端的 fstab 文件来确保挂载始终处于活动状态。这将确保在服务器重新启动后挂载启动。

复制代码
vi /etc/fstab
复制代码
12.34.56.789:/home  /mnt/nfs/home   nfs      auto,noatime,nolock,bg,nfsvers=3,intr,tcp,actimeo=1800 0 0

<p您可以通过输入以下命令了解有关 fstab 选项的更多信息:

复制代码
man nfs

<p在任何后续服务器重新启动后,您可以使用单个命令挂载 fstab 文件中指定的目录:

复制代码
mount -a

<p您可以使用前面的两个命令检查已挂载的目录:

复制代码
df -h
复制代码
mount

移除 NFS 挂载

<p如果您决定移除目录,可以使用 umount 命令卸载它:

复制代码
cd
sudo umount /目录名称

<p然后再次查看文件系统,您会发现您选择的已挂载目录已消失。

复制代码
df -h
相关推荐
q***385117 分钟前
Spring boot启动原理及相关组件
数据库·spring boot·后端
你不是我我1 小时前
【Java 开发日记】SQL 语句左连接右连接内连接如何使用,区别是什么?
java·javascript·数据库
JELEE.1 小时前
Django中如何重写save()方法
数据库·django
SuperSpinach1 小时前
mysql 报错Authentication method ‘caching_sha2_password‘ is not supported.
数据库·mysql
R.lin1 小时前
MySQL 性能优化最佳实践
数据库·mysql·性能优化
北i1 小时前
TiDB 关联子查询去关联优化实战案例与原理深度解析
java·数据库·sql·tidb
清风6666661 小时前
基于单片机的智慧校园自动打铃系统设计
数据库·单片机·嵌入式硬件·毕业设计·课程设计·期末大作业
JIngJaneIL3 小时前
就业|高校就业|基于ssm+vue的高校就业信息系统的设计与实现(源码+数据库+文档)
java·前端·数据库·vue.js·spring boot·毕设·高校就业
CXH7283 小时前
nginx-file-server
运维·数据库·nginx
一 乐3 小时前
社区互助|社区交易|基于springboot+vue的社区互助交易系统(源码+数据库+文档)
java·数据库·vue.js·spring boot·后端·小区互助系统