您的位置:首页 > 理论基础 > 计算机网络

Linux设置网络文件系统

2009-08-02 11:55 381 查看
(1) NFS的配置:

首先在shell执行setup,弹出菜单界面后,选中System services,回车进入系统服务选项菜单,在其中选中 [*]nfs ,然后退出.

(2) vim /etc/exports

Nfs服务器的配置,配置文件/etc/exports:

Exports文件中一些选项的含义

选项 说明

Ro 该主机对该共享目录有只读权限

Rw 该主机对该共享目录有读写权限

Root_squash 客户机用root用户访问该共享文件夹时,将root用户映射成匿名用户

No_root_squash 客户机用root访问该共享文件夹时,不映射root用户

All_squash 客户机上的任何用户访问该共享目录时都映射成匿名用户

Anonuid 将客户机上的用户映射成指定的本地用户ID的用户

Anongid 将客户机上的用户映射成属于指定的本地用户组ID

Sync 资料同步写入到内存与硬盘中

Async 资料会先暂存于内存中,而非直接写入硬盘

Insecure 允许从这台机器过来的非授权访问

例/ zhang (rw) wang (rw,no_root_squash) 表示共享服务器上的根目录(/)只有zhang和wang两台主机可以访问,且有读写权限;zhang主机用root用户身份访问时,将客户机的root用户映射成服务器上的匿名用户(root_squash,该参数为缺省参数),相当于在服务器使用nobody用户访问目录;wang主机用root用户身份访问该共享目录时,不映射root用户(no_root_squash),即相当于在服务器上用root身份访问该目录

/root/share/ 192.168.1.20 (rw,insecure,sync,all_squash) 表示共享服务器上的/root/share/目录只有192.168.1.20主机可以访问,且有读写权限;此主机用任何身份访问时,将客户机的用户都映射成服务器上的匿名用户(all_squash),相当于在服务器上用nobody用户访问该目录(若客户机要在该共享目录上保存文件(即写操作),则服务器上的nobody用户对该目录必须有写的权限)

/home/ljm/ *.gdfs.edu.cn (rw,insecure,sync,all_squash) 表示共享/home/ljm/目录,*.gdfs.edu.cn域中所有的主机都可以访问该目录,且有读写权限

/home/share/ .gdfs.edu.cn (ro,sync,all_squash,anonuid=student,anongid=math) 表示共享目录/home/share/,*.gdfs.edu.cn域中的所有主机都可以访问,但只有只读的权限,所有用户都映射成服务器上的uid为student、gid为math的用户

将这个默认的空文件修改为只有如下一行内容:

/ (rw) //即根目录可读写,/和(rw)之间要要留空格

然后保存退出(:wq),然后执行如下命令:

运行以下命令启动NFS服务。

/etc/rc.d/init.d/nfs restart 或 service nfs restart

动nfs后又修改了/etc/exports,不用重启该服务,使用exports命令即可:

Exports [-aruv]

-a 全部mount或umount文件/etc/exports中的内容

-r 重新mount文件/etc/exports中的共享内容

-u umount目录

-v 在export的时候,将详细的信息输出到屏幕上

例:

[root@localhost ~]#/usr/sbin/exportfs –rv 全部重新export一次,若修改了文件exports,直接执行此命令即可

[root@localhost ~]#/usr/sbin/exportfs –au 全部卸载

启动portmap服务,service portmap start ;(为什么要这个?因为portmap定向RPC通信数据流如果,若不运行portmap,则NFS客户机无法找到从NFS服务器共享的目录。)

启动nfs服务,service nfs start;

Nfs客户端的配置:

启动目标板并连通网络后,首先查看kernel自身是否支持nfs,

cat /proc/filesystems

查看其中是否有nfs一行,若没有则表示内核不支持nfs,就需要重新编译和烧内核;有则OK,接下来就可以直接mount操作。

若是临时使用可直接执行mount命令:mount servername(or IP): 共享目录 本地挂载目录

有时要加上选项-o nolock

nolock -- 禁用文件锁。这个设置在连接到一个旧版本的NFS服务器时偶尔会用到。

若客户机启动就自动挂载服务器的共享目录,则需修改客户机上的/etc/fstab文件

/etc/fstab格式:(192.168.233.139:/share /mnt nfs defaults 0 2)

Fs_spec fs_file fs_type fs_options fs_dump fs_pass

Fs_spec:定义希望加载的文件系统所在的设备或远程文件系统,对于nfs则设为IP:/共享目录

Fs_file:本地挂载点

Fs_type:挂载类型

Fs_options:挂载参数

Fs_dump:该选项被“dump”命令使用来检查一个文件系统该以多快频率进行转储,若不需转储即为0

Fs_pass:该字段被fsck命令使用来决定在启动时需要被扫描的文件系统的顺序,根文件系统“/”对应该字段值为1,其他文件系统为2,若该文件系统无需在启动时被扫描则为0

安全提醒:确保网络安全,使用nfs时结合tcp_wrappers来限制使用范围(如只想192.168.5.123主机可挂载nfs服务器上的共享目录),另外还可结合iptables来加强安全性。

[root@localhost ~]#vi /etc/hosts.allow

Portmap:192.168.5.123:allow

[root@localhost ~]#vi /etc/hosts.deny

Portmap:ALL:deny

关机时若nfs server上有client联机时,先关掉portmap与nfs两个系统服务。若无法正确将此2项服务关掉,用netstat –utlp找出PID,然后用kill杀掉进程才关机

Nfsstat查看NFS的运行状态,调整NFS运行大有帮助

Rpcinfo查看rpc执行信息,用于检测rpc运行情况

挂载格式:mount –t nfs hostname(or IP):/directory /mount point

卸载:umount /本地挂载目录(本地client卸载方法,但用exports –au为server卸载)

Showmount –e IP(查看NFS服务器上共享了那些目录)

Showmount –a IP(用于nfs server上,显示已经mount上本机NFS服务器的client(客户机))
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: