什么是nfs
nfs网络文件系统(Network File System),作用就是把网络上的一台电脑当成一个磁盘文件系统使用,譬如,电脑A打开了nfs功能,那么对于同一网络上的电脑B来说,电脑A就是一块硬盘,电脑B访问电脑A的过程就是电脑A把它们之间的连线转换为磁盘的连线,当电脑B读写电脑A的文件时,电脑A自动完成中间和系统、文件系统、硬件驱动的所有过程,直接向电脑B提供文件服务。
说白了就是类似于Windows共享文件夹的一种文件服务器功能,只是实现的方式有所不同,网上邻居是直接把目录共享出来,而NFS是依靠现有数据建立新的文件系统。
为什么要使用nfs
那为什么要使用nfs呢?
- 一方面,对于从事嵌入式开发的人员来说,对nfs并不陌生而且nfs给他们带来了多好处,从网络文件系统启动开发板,减少了开销也保护了开发板,而且将服务器里的一个目录挂载到开发板的目录下面,通过这样可以起到在开发板上实时调试和共享文件。
- 另一方面,在公司开发项目的时候,员工往往是不能获得服务器的完全使用权限的,一般情况下是为各员工分配出其所能操作的单个目录,这样的话,使用 nfs 管理就会非常的方便,而且对下面的员工而言感觉上来说也就像是在操作整个服务器一样。
安装、配置、启动nfs服务
1)安装nfs服务,通过在终端执行以下命令安装nfs服务,安装完成后会自动运行。
sudo apt-get install nfs-kernel-server portmap
2)它的配置文件为/etc/exports,打开该文件。
sudo vi /etc/exports
3)在下面增加一下内容,以后将通过网络文件系统访问/home/用户名/nfs目录
/home/用户名/nfs *(rw,sync,no_root_squash)
4)在用户目录下创建nfs目录
mkdir /home/用户名/nfs
5)重启服务器,重新加载配置文件
sudo /etc/init.d/nfs-kernel-server restart
到此为止,安装配置nfs服务已经完成,以后可以直接使用。
测试nfs服务
1)在/home/用户名/nfs目录下创建测试文件hello
cd /home/用户名/nfs
touch hello
2)测试服务器,把服务器共享目录nfs挂在到/mnt节点
sudo mount -t nfs -o nolock -o tcp IP(此处填写服务器ip):/home/用户名/nfs /mnt
3)进入/mnt目录可以看到hello文件,表示构建成功
4)卸载网络共享目录
sudo umount /mnt
注)一般在用于嵌入式开发的时候挂载nfs时使用一下命令会更稳定
mount -t nfs -o nolock,rsize=4096,wsize=4096 192.168.22.101(服务器ip):/work/nfs_root/first_fs /mnt
以上就是所有关于nfs服务的介绍、安装、配置、和使用、挂在之后,进入挂在的文件夹就可以按照正常的操作电脑一样使用该文件夹了。