大橙子网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
打开NAS的管理工具(IBM NASAdmin) 选择File System,然后打开Service for Unix选项 选择Server for NFS,确认Computer Name是localhost 选择Server for PCNFS,然后选择Group 增加需要访问NAS的UNIX用户组。这些用户组察睁的信息可以在UNIX服务器的/etc/group文件中查到。在AIX中,文件的格式是staff:!:1:pemodem,ipsec,netinst,protcs。第一项是用祥瞎户组名,第三项是组ID,要将这两项记录并填入NAS的用户组中。在增加完用户组后,按Apply。 选择User增加需要访问NAS的UNIX用户名。这些用户名的信息可谨没空以在UNIX服务器的/etc/passwd文件中查到。在AIX中,文件的格式是user3135:!:3135:1:User 3135:/home/user3135:/bin/ksh。第一项是用户名,第三项是用户ID,第四项是组ID,记录这些信息并填入NAS的用户创建信息中。在增加完用户后,按Apply。 再次选择Groups,选择要添加的用户组,完成添加。 选择用户名影射(User Name Mapping)选择PCNFS在Password file path and name中,填入c:\winnt\system32\drivers\etc\passwd;在Group file path and name中填入c:\winnt\system3\drivers\etc\group,然后按Apply。 选择Synchronize Now 选择Maps,确认Simple Maps被选择,NAS的主机名在Windows domain name中 然后要创建NFS目录共享: 打开Windows Explorer 选择要共享的目录或创建新的共享目录 在要共享的目录上点击右键,选择Properties 选择NFS Sharing 选择Share this folder,选择Allow Anonymous Access 在Security中,选择适当的权限,确认Everyone组有至少list权限
浑南网站建设公司成都创新互联,浑南网站设计制作,有大型网站制作公司丰富经验。已为浑南上千余家提供企业网站建设服务。企业网站搭建\外贸网站建设要多少钱,请找那个售后服务好的浑南做网站的公司定做!
1.1 搭建NFS服务器
NFS(Network FileSystem,网络文件系统)是由SUN公司发展,并于1984年推出的技术,用于在不同机器,不同操作系统之间通过网络互相分享各自的文件。NFS设计之初就是为了在不同的系统间使用,所以它的通讯协议设计与主机及操作系统无关。
NFS分服务器和客户机,当使用远端文件时只要用mount命令就可把远端NFS服务器上的文件系统挂载在本地文件系统之下,操作远程文件与操作本地文件没有不同。NFS服务器所共享文件或目录记录在/etc/exports文件中。
嵌入式Linux开发中,会经常使用NFS,目标系统通常作为NFS客户机使用,Linux主机作为NFS服吵皮务器。在目标系统上通过NFS,将服务器的NFS共享目录挂载到本地,可以直接运行服务器上的文件。在调试系统驱动模块以及应用程序,NFS都是十分必要的,并且Linux还支持NFS根文件系统,能直接从远程NFS root启动系统,这对嵌入式Linux根文件系统裁剪和集成也是十分有必要的。
安装nfs-kernel-server:
ky@ubuntu:~$ sudo apt-get install nfs-kernel-server
设置NFS-Server目录。修改/etc/exports文件,在其中增加NFS服务器目录。 一个NFS服务器可以共享多个NFS目录,在/etc/exports文件中,每个目录的设置独占一行,编写格式如下:
NFS共享目录路径 客户机IP或者名称(参数1,参数2,...,参数n)
说明:
q NFS共享目录可以是主机的任何一个目录,为了方便使用,最好将权限设置为777。
q 客户机指的是可以访问共享目录的客户机的IP或者主机名,可以是指定的IP或者主机名。如果使用IP,可以使用通配符。假如指定高吵IP为192.168.1.x的客户机可以访问,可以写成192.168.1.*,如果设置为*,则表示任何客户机都可以访问。
q 访问参数可以是一个,也可以是多个,用逗号分开。可能的参数和说明如 REF _Ref286733518 \h 表 5.108D0C9EA79F9BACE118C8200AA004BA90B02000000080000000E0000005F005200650066003200380036003700330033003500310038000000 所列。
表 STYLEREF 1 \s 5. SEQ 表 \* ARABIC \s 1 1 NFS设置参数和说明
参数
说明
ro
只读访问
rw
读写访问
sync
所有数据在请求时写入共享
async
nfs在写入数据前可以响应请求
secure
nfs通过1024以下的安全TCP/IP端口发送
insecure
nfs通过1024以上的端口发送
wdelay
如果多个用户要写入nfs目录,则归组写入(默认)
no_wdelay
如果多个用户要写入nfs目录,则立即写入,当使用async时,无需此设置
hide
在nfs共享目录中不共享其子目录
no_hide
共享nfs目录的子目录
subtree_check
如果共享/usr/bin之类的子目录时,强制nfs检查父目录的权限(默认)
no_subtree_check
不检查父目录权限
all_squash
共享文件的UID和GID映射匿名用户anonymous,适合公用目录
no_all_squash
保留共享文件的UID和GID(默认)
root_squash
root用户的所有请求映射成如anonymous用户一样的权限(默认)
no_root_squash
root用户具有戚碰侍根目录的完全管理访问权限
anonuid=xxx
指定nfs服务器/etc/passwd文件中匿名用户的UID
anongid=xxx
指定nfs服务器/etc/passwd文件中匿名用户的GID
假定NFS共享目录是/home/ky/nfs,允许所有客户机访问,/etc/exports文件可写为:
/home/ky/nfs *(rw,sync,no_subtree_check, no_root_squash)
启动NFS服务器。启动portmap(如果有必要)和nfs-kernel-server服务:
ky@ubuntu:~$ sudo service portmap start
ky@ubuntu:~$ sudo service nfs-kernel-server start
本地验证NFS服务器。将NFS服务器目录挂载到本机另外一个目录下,可以看到挂载点目录下可以看到NFS服务器目录中的文件。
ky@ubuntu:~$ ls /home/ky/nfs/
aaaa
ky@ubuntu:~$ sudo mount -t nfs 127.0.0.1:/home/ky/nfs /mnt
ke@ubuntu:~$ ls /mnt
aaaa
ky@ubuntu:~$ sudo umount /mnt/
用开发板验证NFS服务器是否可用。启动开发板,进入系统,配置好开发板的IP地址后,用mount命令挂载NFS服务器的NFS目录:
target# mount -t nfs 192.168.1.3:/home/ky/nfs /mnt -o nolock
target# ls /mnt
kingyee
target# umount /mnt/
挂载成功后,可以在开发板的/mnt目录下看到NFS服务器上的文件。
说明,使用开发板与虚拟机安装的客户系统进行NFS挂载,需要将虚拟网卡设置为Bridged模式,并建议使用静态IP地址。
如果在使用中需要增加新的NFS共享目录,直接修改/etc/exports文件即可。修改该文件后,可以不用重启NFS服务,用exportfs命令读取/etc/exports文件,重新共享输出。exportfs命令语法如下:
exportfs [-aruv]
选项说明:
-a:全部挂载(或卸载) /etc/exports的设置;
-r:重新挂载/etc/exports的设置;
-u:卸载某一个目录;
-v:在输出的时候,把共享目录显示出来。
如果NFS已经启动,修改了/etc/exports文件,执行如下命令,新的设置即可生效:
ky@ubuntu:~$ exportfs -ra
NFS文件系唯携统本来是liunx的服务想在win7下实现需要用软件,如果想在不想用软件会很麻烦!!!!
Windows 7中加入了NFS 客户端功能,可以通过控制面板中的“程序和功能”-“打开和关闭Windows功能”- "NFS服务"
来开启,当然默认下Telnet客户端也是无效的,也可以在这里打开。判山芹安装完成后,就可以在Windows的命令行窗口中通过mount
以及showmount命令使用NFS的共享了。
C:\showmount /?
用法: showmount -e [server]
showmount -a [server]
showmount -d [server]
C:\mount /?
用法: mount [-o options] [-u:username] [-p:password | *] \\computername\sharename devicename | *
-o rsize=size 设置读取缓冲区的大小(以 KB 为单位)。
-o wsize=size 设置写入缓冲区的大小(以 KB 为单位)。
-o timeout=time 设置 RPC 调用的超时值(以秒为单位)。
-o retry=number 设置软装载的掘毕重试次数。
-o mtype=soft|hard 设置装载类型。
-o lang=euc-jp|euc-tw|euc-kr|shift-jis|big5|ksc5601|gb2312-80|ansi
指定用于文件和目录名称的编码。
-o fileaccess=mode 指定文件的权限模式。
这些模式用于在 NFS 服务器上创建的
新文件。使用 UNIX 样式模式位指定。
-o anon 作为匿名用户装载。
-o nolock 禁用锁定。
-o casesensitive=yes|no 指定在服务器上执行区分大小写的文件查找。
-o sec=sys|krb5|krb5i
简单的例子:
C:\Windows\SUA\binshowmount -enfs_serv1
导出列表在nfs_serv1:
/vol/volz 所有计算机
/vol/volx 所有计算机
/vol/Do_NOT_Delete 所有计算机
/vol/vol7 所有计算机
/vol/vol0 nfs_cli1
/vol/vol0/home 所有计算机
/vol/isan 所有计算机
/vol/vsc 所有计算机
/vol/nfs_smvi nfs_cli1
/vol/vol_t1 所有计算机
C:\mount \\nfs_serv1\vol\vol0 Z:
Z: 现已成功连接到 \\nfs_serv1\vol\vol0
需要注意的是,mount point和Linux和UNIX有所不同,不是使用一个目录作为挂载点,而是使用一个未使用的盘符。
例如上例中的"Z:"。这样就可以通过Z:盘访问你的共享了。非常方便。比起CIFS的方式更加快捷。
使用完后,可以用umount命令卸载共享。
C:\Users\leizumount
用法: [-f] -a | drive_letters | network_mounts
-a 删除所有 NFS 网络装入点
-f 强制删除 NFS 网络装入点
C:\Users\leizumount Z:
正在断开 Z: \\nfs_serv1\vol\vol0
连接上存在打开的文件和/或未完成的目录搜索。
要继续此操作吗? (Y/N) [N]:y
命令已成功完成。
C:\Users\leizmount
本地 远程 属性
-------------------------------------------------------------------------------
Z: \\10.128.132.175\vol\vol0 UID=-2, GID=-2
rsize=32768, wsize=32768
mount=soft, timeout=1.6
retry=1, locking=yes
fileaccess=755, lang=GB2312-80
casesensitive=no
由于阿里云线上有NAS存储,又不能公网访问,所以本地通过软件构建一个NAS以供戚友测试。
NFS的挂载原理
NFS分为客户端与服务器端,一般设置为一个Server端,多个客户端,也可设置为多对多,当服务器端设置好共享目录/data后,客户端通过相应的访问权限,将共享目录挂载到本地系统的某个目录下,就可以透明的看到共享目录里的文件了,依据服务器制定的相应权限做操模仔敬作
NFS服务器与客户端的通信原理
客户端NFS和服务端NFS通讯过程
1)首先服务器端启动RPC服务,并开启111端口
2)启动NFS服务,并向RPC注册端口信息
3)客户端启动RPC(portmap服务),向服务端的RPC(portmap)服务请求服务端的NFS端口
4)服务端的RPC(portmap)服务反馈NFS端口信息给客户端。
5)客户端通过获取的NFS端口来建立和服务端的NFS连接并进行数据的传输。
NFS系统守护进程
nfsd:它是基本的NFS守护进程,主要功能是管理客户端是否能够登录服务器;
mountd:它是RPC安装守护进程,主要功能是管理NFS的文件系统。
当客户端顺利通过nfsd登录NFS服务器后,在使用NFS服务所提供的文件前,还必须通过文件使用权限的验证。它会读取NFS的配置文件/etc/exports来对比客户端权限。
portmap:主要功能是进行端口映射工作。当客户端尝试连接并使用RPC服务器提供的服务(如NFS服务)时,portmap会将所管理的与服务对应的端口提供给客户端,从而使客户可以通过该端口向服务器请求服务。
环境:
新建一个虚拟机,系统安装使用最小化安装,可参照我前面的文章,有详细介绍。一般情况是系统盘是和数据盘分开。系统盘在线上我一般情况是分配20G,如果是容器等应用系盘我会分配50G,当然如果是有很多镜像的容器环境,那么我会系统将/var/lib/docker等用单独的数据盘来挂载。
安装配置NAS文件共享存储
1、服务端安装
2、关闭防火墙
3、配置nas
配置文件:/etc/exports
共享目录创建:
4. 本地NAS存储目录 192.168.230.0/24(授权访问客户端的地址段)
5. 重新加载NFS配置
参数说明:
rw:可读写的权限
ro:只读的权限 anonuid:可以自行设定这个UID的值,这个UID必需要存在于你的/etc/passwd当中anongid:同anonuid,但是变成groupID就是了 sync:资料同步写入到内存与硬盘当中 async:资料会先暂存于内存当中,而非直接写入硬盘 insecure:允许从这台机器过来的非授权访问
no_root_squash:登入NFS主机,使用该共享目录时相当于该目录的拥有者,如果是root的话,那么对于这个共享的目录来说,旦慎他就具有root的权限,这个参数『极不安全』,不建议使用
root_squash:登入NFS主机,使用该共享目录时相当于该目录的拥有者。但是如果是以root身份使用这个共享目录的时候,那么这个使用者(root)的权限将被压缩成为匿名使用者,即通常他的UID与GID都会变成nobody那个身份
all_squash:不论登入NFS的使用者身份为何,他的身份都会被压缩成为匿名使用者,通常也就是nobody
6. 启动服务
7. 设置开机启动
8. 查看端口占用,以便开着防火墙的时候设置,如果闲麻烦,可以通过限制访问IP
Linux nfs客户端安装
vi /ettc/hosts
在末尾加入
开机自动挂载
vi /etc/fstab
##尾行下面新增加一行写入
注:_netdev表示设备需要网络