如何Windows 7系统下如何搭建NFS服务器
Windows 7系统下搭建NFS服务器方法:
一、软件安装:
1、从百度搜索haneWIN,下载下来后,双击运行,出现界面后点“下一步”即可。
2、设置安装路径,选择即可。
3、是设置开始菜单下的文件名,默认即可,点“下一步”继续安装。
4、配置成功后,点击“安装”开始软件的安装,后面会自动安装完成。
二、软件配置:
1、修改exports文件:打开安装包下的exports文件,把D盘下的temp文件夹做为输出目录,这里可根据情况修改即可(-name:nfs不用去改)D:\\temp -name:nfs。
2、替换安装目录下的exports文件:修改完后保存关闭,找到haneWIN软件的安装文件夹,替换掉原来的exports即可。
三、重启nfs服务器:从开始菜单下找到haneWIN软件,选择NFS下的重启所有服务即可。
Ubuntu 16.04 搭建 NFS 文件共享服务器
服务器端需要安装 nfs-kernel-server 软件包:
$ sudo apt-get update
$ sudo apt-get install nfs-kernel-server
默认情况下,NFS 服务器上定义了某个共享目录,则该目录及其子目录下的所有文件都可被访问。
出于对安全的考虑,客户端任何需要 超级用户 (即 root 用户,UID=0 GID=0)权限的文件操作都默认映射到 UID=65534 和 GID=65534 的用户,即 Ubuntu 系统中的 nobody:nogroup。
例如客户端使用 root 权限在挂载的共享目录中创建文件时,该文件的 属主 和 属组 自动变为 nobody:nogroup ,而非 root:root 。
sudo mkdir -p /var/nfs/gernel
sudo mkdir -p /var/nfs/public
sudo chown nobody:nogroup /var/nfs/gernel
为了使 NFS 服务器定义的共享文件可被指定的客户端主机访问,需要在服务器端的 /etc/exports 文件中添加对应的记录。
该文件的格式如下:
Directory Host(Options ...) Host(Options) #comment
关于 /etc/exports 文件的详细语法格式可参考 man exports 。
文件示例:
列出 nfs 服务器上的共享目录
创建挂载点
sudo mkdir -p /mnt/nfs/gernel
sudo mkdir -p /mnt/nfs/public
sudo mkdir -p /mnt/nfs/starky
挂载远程目录
sudo mount 192.168.56.102:/var/nfs/gernel /mnt/nfs/gernel
sudo mount 192.168.56.102:/var/nfs/public /mnt/nfs/public
sudo mount 192.168.56.102:/home/starky /mnt/nfs/starky
权限测试
NFS 的权限设定基于 Linux 文件系统的权限管理,即客户端挂载远程共享目录后,会把它们当成本地磁盘目录一样对待,也是根据文件的属主(组)及其对应的权限设定来限制访问。
gernel 目录的属主(组)为 nobody:nogroup(65534:65534),所以虽然该目录为读写权限,非 root 用户无法执行新建操作。而 root 用户由于 NFS 默认的安全机制,会自动映射到 nobody:nogroup。
由于我在客户端和服务端都有一个名为 starky 的用户,且它们的 UID:GID 都为1000:1000,所以服务端的 /home/starky 目录可以直接被客户端的 starky 用户访问。且由于 no_root_squash 选项,通过 sudo 命令创建的文件其属主仍为 root(而不会再映射为 nobody)。
当然这会导致一些安全问题,比如多个客户端同时都有 UID(GID)为1000的用户(不管用户名是什么),则这些用户会共享服务端 /home/starky 目录里的文件权限。
可编辑 /etc/fstab 文件令挂载共享目录的 mount 操作成为系统的固定配置(手动输入的 mount 命令属于临时挂载,重启会自动卸载),使得系统重启后可以自动挂载远程文件系统。 /etc/fstab 文件的示例内容如下:
/etc/exports 文件的格式为: Directory Host(Options ...) Host(Options) #comment
其中的 Host 项用来指定可访问对应共享目录的主机,其格式可分为以下几种:
传输协议
最初的 NFSv2 由于性能原因使用 UDP 协议,虽然 NFS 添加了自己的 包序列重组 和 错误检查 功能,但 UDP 和 NFS 都不具备 阻塞控制 算法,所以在大型的互联网络环境中缺乏足够的性能。
NFSv3 提供了 UDP 和 TCP 协议之间的选择。NFSv4 只能使用 TCP 协议。
随着 CPU,内存等硬件设备和网络传输速度的提高,最初由于性能需求而倾向 UDP 协议的选择也变得不再必要。
State
NFSv2 和 NFSv3 是 无状态 的连接,服务端不会跟踪客户端对共享目录的挂载情况,而是使用 \"cookie\" 来记录一次成功的挂载。\"cookie\" 不会因为服务器重启而删除,可以用来在服务器挂掉之后保留客户端的连接信息。
NFSv4 是 有状态 的连接,客户端和服务端都会维护文件操作纪录及文件锁的状态。所以不再需要 \"cookie\" 的使用。
文件锁
早期版本的 NFS 协议(v2 v3)由于是 无状态 的连接,它们并不清楚哪些主机正在使用哪些文件。但是文件锁的实现又需要获取状态信息。所以早期协议中的文件锁是独立于 NFS 实现的。
而 NFSv4 将文件锁的实现整合到了核心协议中,虽然此举增加了复杂度,但同时也解决了早期版本中的很多问题。
但是为了兼容使用 V2 和 V3 协议的客户端,独立的 locked 和 statd 守护进程仍旧需要。
安全相关
NFS 协议最初在设计时并不关注安全性,NFSv4 通过引入对更强大的安全服务和身份验证的支持,加强了该协议的安全性。
传统的 NFS 协议大多使用 AUTH_SYS 验证方式,基于 UNIX 的用户和组标识。在这种方式下,客户端只需要发送自己的 UID 和 GID 并与服务器上的 /etc/passwd 文件内容作对比,以决定其拥有怎样的权限。
所以当多个客户端存在 UID 相同的用户时,这些用户会拥有相同的文件权限。更进一步,拥有 root 权限的用户可以通过 su 命令切换到任意 UID 登录,服务器会因此给予其对应 UID 的权限。
为了防止上面的问题出现,服务器可选择使用更健壮的验证机制比如 Kerberos 结合 NFS PRCSEC_GSS。
NFS 共享目录的访问控制基于 /etc/exports 文件中定义的主机名或 IP 地址。但是客户端很容易针对其身份和 IP 地址造假,这也会导致一些安全问题。
NFSv4 只使用 TCP 作为自己的传输协议,而且通常只开放 2049 端口进行数据传输。在配置防火墙时,除了放开 2049 端口的限制外,还要时刻注意数据传输的源地址和目标地址。
win10 系统默认不能挂载 NFS 共享目录,需要进入 控制面板 - 程序 - 程序和功能 - 启用或关闭 Windows 功能 ,勾选上 NFS 服务 。
UNIX and Linux System Administration Handbook, 4th Edition
How to Mount an NFS Share Using a Windows 10 Machine
NFS挂载(ubuntu win10 demoboard)
一:安装 NFS 服务器
sudo apt-get install nfs-kernel-server
二:配置该服务器
sudo vi /etc/exports
在打开的空的文件中,添加想要共享的目录
/srv/share *(rw,sync,no_subtree_squash)
这里: /srv/share 是 ubuntu 给其他平台 ( 开发板,其他远程终端等 ) 提供的共享目录;
* 表示所有客户机都可以挂载上述共享目录,
rw 表示挂接此目录的客户机对该目录有读写的权力,
sync 同步写磁盘
no_root_squash 表示客户端root用户对该目录具备写权限
no_subtree_squash 表示允许挂接此目录的客户机享有该主机的 subtree 身份。
三:启动 NFS 服务
sudo /etc/init.d/nfs-kernel-server start
有同学会出现这个情况:
exportfs :scandir /etc/exports.d no such file or directory
解决办法:sudo mkdir /etc/exports.d
启动NFS服务器成功后会出现:
*Exporting directories for NFS kernel daemon... [OK]
*Starting NFS kernel daemon [OK]
然后,在开发板上做如下设置:
四:打开超级终端或者 DNW ,保持串口处于通信状态
五:通过交叉网线连接 PC 和开发板。这一步千万不能忘, NFS 靠的就是这根线啊,线路都不通了,如何能够配置成功?
六:确保 ubuntu 下的 IP 地址与开发板的 IP 地址在同一网段。二者皆可以通过 ifconfig 查询,以及通过它设置 IP 地址。如果不在同一网段,请手动设置为同一网段。
ifconfig eth0 192.168.149.10
这时,开发板的 IP 就设置成 192.168.149.10 了。
ping一下网络,看是否能ping通。
以上六步已经配置好 NFS 了,下面具体测试是否通信正常:
七:在开发板的 linux 启动后的命令行里输入如下指令:
mount –t nfs –o nolock 192.168.1.103:/srv/share /mnt
其中 192.168.149.7 为 PC 端 ubuntu 的 IP 地址。
前面的挂载命令将会把 PC 端的 ubuntu 下的 /srv/share 目录挂载到开发板的 /mnt 目录。当然,前提是开发板的 linux 系统必须具备这个目录了。
试试先在 ubuntu 的 /srv/share路径放个文件,然后在开发板的命令行终端敲入 ls /mnt ,是不是看到刚才所放的文件了。
八:如果第七步没有成功,请仔细检查以上七步,重复一到七步!
一、安装hane win nfs server,版本1169(官方最新版1223经试验不成功)。
二、设置如下:
三、在-输出-编辑表文件-添加你的目录,选择访问方式和别名-文件-选择保存-退出该软件
d:\\nfs_folder -public -name:pc_nfs ip192.168.1.101(ip可加可不加)
四、以管理员身份重启服务(注:软件界面上“重启服务”按钮无效,在安装目录下找到重启服务):
五、若发现还是没有相关的目录出现,重启电脑
六、在开发板的Linux上对nfs目录进行挂载:
1.需将电脑的IP与开发板上的Ip设置在同一网段
2.在embed linux(开发板)输入以下命令:
mount -t nfs -o nolock 192.168.1.103:/pc_nfs_folder /mnt
电脑的IP 目录的别名 开发板上的目录
3.cd 到mnt文件夹下
ls 可以看到pc中该目录对应内容
showmount -e 192.168.1.200
若提示没有showmount这个命令,则安装nfs-common
sudo apt install nfs-common
可以看到在nfs server中挂载的文件夹,如下图所示。
sudo mkdir nfsfolder
挂载文件夹。
mount -e nfs 192.168.1.200:/video /home/nfsfolder
此时,win10和ubuntu即实现了文件夹的共享,win10或ubuntu均可以对该文件夹进行操作。
如何在window下搭建nfs服务器
如何通过Windows Server 2008 R2建立NFS存储
在我们日常工作的某些实验中,会需要使用存储服务器。而硬件存储成本高,如StarWind之类的iSCSI软存储解决方案需要单独下载服务器端程序,且配置比较繁琐,令很多新手们很是头疼。
事实上,利用Windows Server 2008 R2,我们可以很容易地将其作为一台NFS存储服务器,方便地得到一个NFS软存储,轻松解决某些环境下的问题。接下来以Windows Server 2008 R2 SP1 企业版为例,分享一下具体的实现步骤。
首先,打开服务器管理器,选择”添加角色”;
点击下一步,开始添加服务器角色;
添加”文件服务”,点击下一步;
点击下一步,开始添加角色服务;
添加”网络文件系统服务”,即”Network File System (NFS)”;
点击安装,开始执行;
安装完成后,在容量适合的分区下建立一个文件夹,选择属性,找到”NFS共享”选项卡,点击”管理NFS共享”;
保持选项默认,点击”权限”;
此处可以看到此存储的默认访问权限,默认为所有计算机都具有只读权限。我们可以将这条权限策略调整为”不可读”,并点击”添加”设置其他策略;
点击”添加”后,会出现如上图窗口,在”添加名称”栏填写允许访问此存储的主机的IP地址,设置访问类型,并按需勾选是否允许访问根目录即可。
以上,通过其他设备添加 “此服务器IP地址:/共享文件夹名称”,即可访问NFS存储
win10下怎么当nas服务器
安装配置NAS
1、插上SSD,NTFS格式,ghost安装win8,激活
2、用windows10直通车安装win10,装完自动激活
3、系统一开始的administrator设置复杂密码,进入系统后再设置user和guset用户
4、插上720G,NTFS格式,总共两个盘两个盘符,显示设置为平板模式,取消休眠,设置30分钟硬盘休眠。
5、安装迅雷极速版+百度云管家+网易云音乐……【目前是电影下载到SSD,每次新建任务提示空间不足再手动移到720G】
6、配置NFS服务+家庭组+远程桌面+teamviewer+PhotoSync+lantern
windows 怎么访问nfs服务器
1、NFS服务端安装nfs-utils软件yum install nfs-utils -y。
2、 mkdir -pv /u01/nps/volumes #nfs服务端创建共享目录。
3、 systemctl start nfs 启动nfs服务 systemctl status nfs 查看nfs状态,如图已经启动正常。
4、NFS客户端也使用命令yum install nfs-utils -y安装nfs软件,然后#如下命令验证是否可以访问nfs服务端。
5、在nfs客户端执行mount -t nfs 10.199.150.95:/u01/nps/volumes /u01命令,然后df -h查看,nfs共享目录已经正常挂载到了/u01目录。
6、设置开机自动挂载,防止系统重启掉盘,将如下自动挂载写入/etc/fstab配置文件。