admin 管理员组文章数量: 1086019
2024年6月7日发(作者:前端开发框架是什么)
linux之间实现共享文件夹挂载实例:
一、linux存储服务器(10.89.8.5 域名:),linux客户端服务器(10.89.0.3 域
名:)
a、存储服务器配置如下:
1、[wds@ ~]#mkdir /mnt/mm
2、[wds@ ~]#chmod 777 /mnt/mm
3、[wds@ ~]#vi /etc/exports -------编辑/etc 目录下的共享目录配置文
件exports,指定共享目录及权限等。对NFS服务的访问是由exports来批准,它枚举了
若干有权访问NFS服务器上文件系统的主机名。
在该文件里添加如下内容:
/mnt/mm *(rw,) *表示所有的客户机都可以挂接此目录, rw表示
挂接此目录的客户机对该目录有读写的权力,
4、[wds@ ~]#service nfs restart ----开启nfs服务
5、[wds@ ~]#service nfs status ----检查nfs服务是否开启
6、[wds@ ~]#service portmap restart ----开启端口映射服务
b、客户端服务器配置如下:
1、[wds@ ~]#mkdir /home/jj
2、[wds@ ~]#mount -t nfs 10.89.8.5:/mnt/mm /home/jj
3、[wds@ ~]#df ---验证挂载目录是否成功
二、[wds@localhost ~]# exportfs [-aruv] 参数:
参数说明:
-a: 全部挂载(或者卸载)/etc/exports 文件的设置
-r: 从新挂载/etc/exports 里设置,此外,同步更新/etc/exports 及/var/lib/nfs/xtab
的内容
-u: 卸载某一目录
-v: 在导出时,将共享目录显示在屏幕上
例如:
[wds@localhost ~]# exportfs rv 全部从新导出一次
[wds@localhost ~]# exportfs au 全部卸载掉
三、Linux 服务器端NFS 服务器的配置
以root 身份登陆Linux 服务器,编辑/etc 目录下的共享目录配置文件exports,指
定共享目录及权限等。
执行如下命令编辑文件/etc/exports:
# vi /etc/exports
在该文件里添加如下内容:
/home/work 192.168.0.*(rw,sync,no_root_squash)
然后保存退出。
添加的内容表示:允许ip 地址范围在192.168.0.*的计算机以读写的权限来访问
/home/work 目录。
/home/work 也称为服务器输出共享目录。
括号内的参数意义描述如下:
rw:读/写权限,只读权限的参数为ro;
sync: 表示所有数据在请求时写入共享,即数据同步写入内存和硬盘;
no_root_squash:表示允许挂接此目录的客户机享有该主机的 root 身份。
NFS是通过网络进行数据传输,那么NFS使用哪些端口呢,答案是……不知道,因
为NFS传输数据时使用的端口是随机的,唯一的限制就是小于1024,客户端怎么知道
服务器使用的是哪个端口,此时就要用到远程过程调用RPC。
其实,NFS运行在SUN的RPC(Remote Procedure
Call,远程过程调用)基础上,RPC定义了一种与系统无关的方法来实现进程间通信,
由此,NFS Server也可以看作是RPC
Server。正
因为NFS是一个RPC服务程序,所以在使用它之前,先要映射好端口——通过portmap
设定。比如:某个NFS
Client发起NFS服务请求时,它需要先得到一个端口(port),所以它先通过portmap得到
port
number(不仅是NFS,所有的RPC服务程序启动之前,都需要先设定好portmap)。
注意:在启动RPC服务(比如NFS)之前,需要先启动portmap服务。
使用umount命令可以卸载文件系统。利用设备名或挂载点都能umount文件系统,不
过最好还是通过挂载点卸载,以免使用绑定挂载(一个设备,多个挂载点)时产生混乱。
下面两条命令分别通过设备名和挂载点卸载文件系统,同时输出详细信息:
1. # umount -v /dev/sda1 通过设备名卸载
2. /dev/sda1 umounted
3. # umount -v /mnt/mymount/ 通过挂载点卸载
4. /tmp/ umounted
如果设备正忙,卸载即告失败。卸载失败的常见原因是,某个打开的shell当前目录为
挂载点里的某个目录:
1. # umount -v /mnt/mymount/
2. umount: /mnt/mymount: device is busy
3. umount: /mnt/mymount: device is busy
有时,导致设备忙的原因并不好找。碰到这种情况时,可以用lsof列出已打开文件,然
后搜索列表查找待卸载的挂载点:
1. # lsof | grep mymount 查找mymount分区里打开的文件
2. bash 9341 francois cwd DIR 8,1 1024 2 /mnt/mymount
从上面的输出可知,mymount分区无法卸载的原因在于,francois运行的PID为9341的
bash进程。
对付系统文件正忙的另一种方法是执行延迟卸载:
1. # umount -vl /mnt/mymount/ 执行延迟卸载
延迟卸载(lazy unmount)会立即卸载目录树里的文件系统,等到设备不再繁忙时才清
理所有相关资源。
版权声明:本文标题:两台linux之间实现共享文件夹挂载实例 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.roclinux.cn/b/1717770450a712377.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论