NFS:在Linux上共享文件夹
目录:
英文术语“网络文件系统”的NFS,表示网络文件系统 。 它是标识Linux用来共享网络上的文件夹的本机系统的首字母缩写。 因此,可以从其他用户的计算机访问这些共享文件夹,就像它们在硬盘驱动器上一样。
因此,可以说,NFS 允许使用Linux的计算机相互连接和共享文件夹 。 此外,在Linux中,还有其他替代方法可以共享资源,例如Samba,FTP,SSH,但是在Linux网络中共享资源的推荐操作是NFS。
NFS:在Linux上共享文件夹
NFS安装
为了使用该服务,我们需要事先为相应的发行版安装NFS软件包 。 通常,大多数计算机已经包含该软件包,因为您可能需要随时共享一个文件夹。 但是,计算机已安装软件包的事实并不意味着它已经在网络上共享其文件系统。 为此,它需要配置和服务的先前启动。
要继续安装NFS,并且要获取最新版本,请从控制台使用apt-get命令:
apt-get install nfs-common nfs-kernel-server
NFS服务器配置
在启动服务之前,需要指定要共享的文件夹,并定义将在哪种权限下进行的访问:只读或读写。 另一方面,还可以确定哪些计算机可以连接到这些文件夹。 可以从以下文件配置所有这些选项 : / etc / exports
在配置文件的每一行中,我们可以指定几个点:
- 我们要共享的文件夹,共享权限(只读:“ ro”或读写:“ rw”),允许访问的计算机是什么。 它可以是名称,IP地址或IP地址范围。
使用NFS共享时,建议您设置最大权限限制。 例如,如果用户不需要写入文件,则必须设置“只读”权限。
NFS手动启动和停止
为了使NFS服务器服务正常工作,第一步是启动portman服务 ,因此我们必须执行的第一件事是:
sudo /etc/init.d/portmap开始
如果我们要启动NFS服务,或者每次我们对/ etc / exports文件进行修改时,都必须执行以下命令:
sudo /etc/init.d/nfs-kernel-server重新启动
否则,即停止服务,我们使用:
sudo /etc/init.d/nfs-kernel-server停止
您可能有兴趣阅读:ownCloud:如何在Ubuntu中拥有自己的云
NFS共享文件夹访问
为了访问由NFS共享的文件夹,要采取的第一步是安装portman和nfs-commons软件包 。 为此,我们执行:
sudo apt-get install portmap nfs-common sudo /etc/init.d/portmap重新启动
至此, 我们已经可以在系统上挂载共享文件夹了。 因此,该条目就像是硬盘驱动器上文件系统中的任何其他文件夹一样。
例如,如果我们在NFS服务器中有一个文件夹,则假定服务器共享一个由NFS命名为/ photos的文件夹。 在客户端PC上,我们可以创建一个名为/ photos-server的文件夹,并在其上安装服务器上的共享文件夹。 在控制台中执行的指令为:
sudo mount -t nfs服务器IP:/照片/服务器照片
从这一刻起,我们已经可以验证文件夹的内容,如果权限可用,甚至可以进行修改。 重要的是要注意,汇编必须在我们系统内的文件夹中完成,否则将不会显示远程文件。
另一方面, 要卸载该文件夹 ,我们在控制台中执行命令umount ,后跟安装该文件夹的名称,例如:
安装时的问题
装入NFS文件夹时,可能会出现以下3个错误中的任何一个:网络问题,服务器问题或客户端问题。
要排除问题是否出在服务器上,我们可以尝试使用IP 127.0.0.1将文件夹安装在服务器上。 如果可行,则问题出在网络或客户端上。
另一方面,如果从服务器到客户端的ping操作没有显示防火墙,则问题出在客户端。
如果这是客户端中发生的问题,我们可以尝试重新安装客户端或在客户端上执行以下命令:
apt-get install nfs-common nfs-kernel-server /etc/init.d/portmap restart /etc/init.d/nfs-kernel-server重新启动
最后尝试安装文件夹。
共享文件夹
如果要配置为在启动Linux系统时自动挂载由NFS共享的文件夹,则可以在/ etc / fstab文件中进行修改,要添加的行如下所示:
服务器IP:/照片/服务器照片NFS
这样,当我们启动机器时,服务器上的文件夹/照片将自动安装在我们的文件夹/照片服务器上。
此外,建议将网络上每个用户的数据集中存储在服务器空间中。 这将提供多种优势,例如:
- 用户可以访问他们的文件,甚至可以从异常的计算机上访问文件;对于管理员来说,制作备份副本要容易得多,并且如果用户的计算机出现故障,他们也不会丢失其信息。
为此,服务器必须具有集中的用户帐户,并且必须将客户端配置为在连接时进行身份验证。