/NFS///
写在前面:NFS在数据传输/信息传递时使用RPC协议(Remote Procedure Call 远程过程调用)Server和Client的RPC进程来管理和“对应”主机的IP、对应端口、PID注意对应这一词!!!因为在client以对应的用户身份登陆会变成对应的“所有者”(这个词不太会表达)权限上,默认压制root,即root_squash
NFS端口号2049
还会占用不固定的端口号,由rpc产生rcp.nfsd: 管理client能否登入主机
rpc.mountd:管理NFS文件系统/
目录1.NFS简介2.安装、配置NFS服务 搭建准备 配置文件编辑 启动服务 更新/etc/exports 查看共享目录3.NFS配置的一些选项说明 /1.NFS简介NFS全程是network file systemNFS允许一个系统在网络上和他人共享目录和文件,通过NFS,用户和程序可以访问本地文件一样访问远端系统上的文件假如有三台机器A,B,C,他们需要访问同一个目录,目录中都是图片,传统的做法是把这些图片放到ABC,但是使用NFS只需要放到A上,然后A共享B和C即可,访问的时候,B和C是通过网络的方式访问A上的那个目录的2.安装、配置NFS服务
在提供NFS服务的机器上:搭建准备:安装 nfs-utils rpcbind/portmap(centOS 5)yum install -y nfs-utils 会同时安装上rpcbind编辑配置文件:
vim /etc/exports //格式如下: //[要共享的目录] [主机名1或者ip1(参数1,参数2...)][主机名2或者ip2(参数1,参数2)] //譬如我要分享/tmp这个目录,只有192.168.75.0/24这个网段可读写,其他只读: // /tmp 192.168.75.0/24(rw) *(wo) // 仅让*.linux.org网段可以访问/etc/samba,但是存储数据的时候UID,GID全部变成40身份 // /etc/samba *.linux.org(rw,all_squash,anonuid=40,anongid=40) // 我要将私人目录/private开放给192.168.75.132 // /private 192.168.75.132(rw) 注意!!! 上面的()必须是连着的!!!启动服务:/etc/init.d/rpcbind start/etc/init.d/nfs start 在更新/etc/exports 文件之后:无需重启服务,只需要重新 exportfs -arv加载即可exportfs [-aruv] -a :全部挂载/卸载/etc/exports里面的设置 -r :重新挂载/etc/exports里面的设置,同步更新/etc/exports以及/var/lib/nfs/xtab的内容 -u :卸载某个目录 -v :导出的时候显示到屏幕上 在客户端上:客户端同样安装yum install -y nfs-utils查看有无可以挂载的共享目录:showmount [-ae] hostname -a :在屏幕上显示当前主机和client连接后所使用目录的状态 -e :显示hostname机器上/etc/exports中的共享目录如想要在客户端上挂载服务端共享的目录:首先 showmount -e hostname然后 mount -t nfs 192.168.137.10:/home/ /mnt/3.NFS配置的一些选项说明
rw :读写ro :只读all_squash: 所有登陆者都会变成nobodyroot_squash:如果以root登陆,就会把它变成nobody,限制了rootno_root_squash:如果以root登陆,就会对共享的目录拥有root权限,极不安全,不建议使用anonuid:要和root_squash以及all_squash一起使用,用于指定使用NFS的用户限定后的uid和gid,前提是本机的/etc/passwd中存在这个uid,gid anongid:同上sync:同步模式,内存中数据时时写入磁盘async:不同步,把内存中数据定期写入磁盘中
//centOS 5 听说会有问题/
所以在客户端上挂载服务端的NFSmount -t nfs -onolock,nfsvers=3 192.168.137.10:/home/ /mnt/ //如果不加-onolock,nfsvers=3 则在挂载目录下的文件属主和组都是nobody,如果指定nfsvers=3则显示rootmount -t nfs -oremount,nolock,nfsvers=3....