一、服务器端:
1.1安装NFS服务:
#执行以下命令安装NFS服务器,
#apt会自动安装nfs-common、rpcbind等13个软件包
sudo apt install nfs-kernel-server
1.2编写配置文件:
#编辑/etc/exports 文件:
sudo vi /etc/exports
#/etc/exports文件的内容如下:
/tmp *(rw,sync,no_subtree_check,no_root_squash)
/data *(rw,sync,no_subtree_check,no_root_squash)
/logs *(rw,sync,no_subtree_check,no_root_squash)
1.3创建共享目录
#在服务器端创建/tmp /data和/logs共享目录
sudo mkdir -p /tmp
sudo mkdir -p /data
sudo mkdir -p /logs
1.4重启nfs服务:
sudo service nfs-kernel-server restart
1.5常用命令工具:
#在安装NFS服务器时,已包含常用的命令行工具,无需额外安装。
#显示已经mount到本机nfs目录的客户端机器。
sudo showmount -e localhost
#将配置文件中的目录全部重新export一次!无需重启服务。
sudo exportfs -rv
#查看NFS的运行状态
sudo nfsstat
#查看rpc执行信息,可以用于检测rpc运行情况
sudo rpcinfo
#查看网络端口,NFS默认是使用111端口。
sudo netstat -tu -4
二、客户端:
2.1安装客户端工具:
#在需要连接到NFS服务器的客户端机器上,
#需要执行以下命令,安装nfs-common软件包。
#apt会自动安装nfs-common、rpcbind等12个软件包
sudo apt install nfs-common
2.2查看NFS服务器上的共享目录
#显示指定的(192.168.3.167)NFS服务器上export出来的目录
sudo showmount -e 192.168.3.167
2.3创建本地挂载目录
sudo mkdir -p /mnt/data
sudo mkdir -p /mnt/logs
2.4挂载共享目录
#将NFS服务器192.168.3.167上的目录,挂载到本地的/mnt/目录下
sudo mount -t nfs 192.168.3.167:/data /mnt/data
sudo mount -t nfs 192.168.3.167:/logs /mnt/logs
#注:在没有安装nfs-common或者nfs-kernel-server软件包的机器上,
#直接执行showmount、exportfs、nfsstat、rpcinfo等命令时,
#系统会给出友好的提示,
#比如直接showmount会提示需要执行sudo apt install nfs-common命令,
#比如直接rpcinfo会提示需要执行sudo apt install rpcbind命令。
3:window系统挂载:
安装NFS客户端(NFS服务)
我们需要做的第一件事是安装NFS客户端,可以按照以下步骤完成:
第1步:打开程序和功能。
第2步:单击“ 打开或关闭Windows功能”。
步骤3:向下滚动并选中Services for NFS选项,然后单击OK。
步骤4:安装完成后,单击“ 关闭”并退回到桌面。
为匿名用户启用写入权限
使用默认选项,在使用匿名用户挂载UNIX共享时,您将只具有读取权限。我们可以通过更改用于挂载共享的UID和GID来为匿名用户提供写入权限。
下图显示了使用默认设置安装的共享。
要更改UID和GID,我们需要通过执行以下步骤对Windows注册表进行简单更改:
- 通过在搜索框中键入Enter键打开注册表。
- 浏览到HKEY_LOCAL_MACHINE SOFTWARE Microsoft ClientForNFS CurrentVersion Default。
- 在名为AnonymousUid的Default文件夹中创建一个新的新DWORD(32位)值,并将UNIX目录中找到的UID分配为NFS系统共享。
- 在名为AnonymousGid的Default文件夹中创建一个新的New DWORD(32位)值,并将UNIX目录中找到的GID分配给NFS系统共享。
- 重新启动NFS客户端或重新启动计算机以应用更改。
mount命令的输出现在应如下所示:
Local Remote Properties
-------------------------------------------------------------------------------
Z: \10.1.1.211mntvms UID=0, GID=0
rsize=1048576, wsize=1048576
mount=soft, timeout=1.6
retry=1, locking=yes
fileaccess=755, lang=ANSI
casesensitive=no
sec=sys
注意应用于UID和GID的0值。这意味着使用root用户挂载共享。
如何挂载NFS共享
假设您的NAS设备与Windows计算机位于同一网络中,并且设备的IP地址为10.1.1.211,则以下命令将在NFS系统上的/ mnt / vms上安装共享。
C:Userswindows>mount -o anon \10.1.1.211mntvms Z:
Z: is now successfully connected to \10.1.1.211mntvms
The command completed successfully.
共享现已安装,我们可以通过导航到Z:驱动器来访问数据。
就是这样,我们现在可以写入NAS设备了。虽然,我确实注意到第一次尝试打开共享需要很长时间。