如何在 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
相关推荐
如意机反光镜裸30 分钟前
如何快速将Excel数据导入到SQL Server数据库
数据库
Stara051133 分钟前
Git推送+拉去+uwsgi+Nginx服务器部署项目
git·python·mysql·nginx·gitee·github·uwsgi
不爱学习的啊Biao1 小时前
初识mysql数据库
数据库·mysql·oracle
宛唐羁客2 小时前
ODBC连接PostgreSQL数据库后,网卡DOWN后,客户端进程阻塞问题解决方法
网络·数据库
吴半杯2 小时前
Redis-monitor安装与配置
数据库·redis·缓存
是桃萌萌鸭~3 小时前
mysqldbcompare 使用及参数详解
数据库·mysql
gma9993 小时前
brpc 与 Etcd 二次封装
数据库·c++·rpc·etcd
Yz98763 小时前
hive复杂数据类型Array & Map & Struct & 炸裂函数explode
大数据·数据库·数据仓库·hive·hadoop·数据库开发·big data
小鹿撞出了脑震荡3 小时前
SQLite3语句以及用实现FMDB数据存储的学习
数据库·学习·sqlite
小草儿7993 小时前
gbase8s之mysql的show命令实现
数据库·mysql