linux共享文件丢失,linux基础应用(NFS文件共享)
NFS简介NFS(Network File System)网络文件系统,由NFS服务器端和NFS客户端构成,通过网络(一般是局域网)使不同主机系统,可以彼此共享文件。NFS客户端mount挂载NFS服务器端共享的文件目录到NFS客户端本地系统的某一个挂载点下,NFS客户端本地访问挂载点的共享目录时,像是访问本地的磁盘分区或目录一样,实际上访问的是挂载的NFS服务器目录。
RPC远程过程调用
NFS服务器端和客户端之间的数据传输通过相对应网络端口,由于NFS支持的功能比较多,不同的功能会使用不同的程序启动,每启动一个功能就会启用一些端口来传输数据,因此NFS的功能对应的端口不固定,那么造成NFS服务器和NFS客户端数据传输的通信障碍(NFS客户端必须知道NFS服务器端的数据传输端口才能通信进行数据交互)则需要RPC(Remote procedure Call)远程过程调用来统一管理NFS端口,并且统一对外的端口是111,RPC会记录NFS端口的信息,这样就可以通过RPC实现NFS服务器和NFS客户端的端口通信。(RPC指定每个NFS功能所对应的端口,并且通知客户端,使客户端可连接到相应的端口上)
NFS工作流程
先启动NFS服务器端的RPC服务并开启111端口,然后启动NFS服务器端,NFS会随机使用一些端口,然后NFS就向PRC注册这些端口,RPC记录这些端口等待客户端RPC的请求,启动客户端RPC,向服务器端PRC请求服务器端NFS端口,服务器端的RPC将之前记录的NFS端口信息告知客户端,客户端通过获取到的NFS端口来建立和服务器端的NFS连接进行数据传输。
注:在启动服务器端NFS前启动RPC服务,否则服务器端NFS无法向RPC注册;如果PRC服务重启,之前注册好的NFS端口数据会全部丢失。
搭建NFS共享存储服务1、查看系统环境准备相应的安装包
部署NFS服务需要NFS和RPC软件包
linux-szge:~ # uname -a
Linux linux-szge 3.0.76-0.11-default #1 SMP Fri Jun 14 08:21:43 UTC 2013 (ccab990) x86_64 x86_64 x86_64 GNU/Linux
linux-szge:~ # cat /etc/issue
Welcome to SUSE Linux Enterprise Server 11 SP3 (x86_64) - Kernel \r (\l).
注:内核和操作系统不同,使用的安装包的版本也有差异,故需要根据操作系统和内核准备相应的软件包
2、检查是否安装NFS和RPC
linux-szge:~ # rpm -qa | egrep "nfs|rpcbind"
3、安装NFS和RPC
linux-szge:~ # zypper install rpcbind*
linux-szge:~ # zypper install nfs*
linux-szge:~ # rpm -qa | egrep "nfs|rpcbind"
nfsidmap-0.25-0.11.29
nfs-doc-1.2.3-18.29.1
rpcbind-0.1.6+git20080930-6.18.1
nfs-client-1.2.3-18.31.1
nfs-kernel-server-1.2.3-18.29.1
或者到下载相应的源码包或rpm包安装
注:服务器端和客户端本地都需要安装NFS和RPC
4、启动RPC
linux-szge:~ # service rpcbind start 启动RPC
linux-szge:~ # netstat -anpp | grep rpcbind 查看监听的端口是111
tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN 2641/rpcbind
linux-szge:~ # rpcinfo -p localhost 未启动NFS前查看NFS服务向RPC注册的端口信息
program vers proto port service
100000 4 tcp 111 portmapper
100000 3 tcp 111 portmapper
...
详情请看rpcinfo --help详解
linux-szge:~ # chkconfig rpcinfo on rpcinfo设置为开机自启动
linux-szge:~ #chkconfig --list rpcinfo
rpcinfo 0:off 1:off 2:off 3:on 4:off 5:on 6:off
详情请看chkconfig --help详解
5、配置及启动NFS
配置NFS服务器端
linux-szge: ~ # mkdir /data/lml;chmod 666 /data/lml/ 创建共享目录/data/lml并设置权限
linux-szge:~ # vim /etc/exports 编辑NFS主要配置文件exports(默认是空的)
/data/lml 172.30.3.73(rw,sync,no_root_squash,no_all_squash) 172.30.3.73可读写共享目录/data/lml
注:在172.30.3.73和(之间不能有空格,否则nfs写入时会报错read-only file system
NFS配置exports文件格式
注:客户端地址可以写IP,网段,主机名
NFS常用配置参数
启动NFS服务器端
linux-szge:~ # service nfsserver start 启动服务器端NFS
注:如果已启动服务器端NFS,后修改了/etc/exports配置,需要重新加载NFS或者重启RPC和NFS
linux-szge:~ # service nfsserver reload 重新加载服务器NFS
linux-szge:~ # exportfs -rv 重新加载服务器NFS(r表示重启,v表示显示export的选项)
linux-szge:~ # service rpcbind restart 先重启RPC
linux-szge:~ # service nfsserver restart 后重启NFS
linux-szge:~ # rpcinfo -p localhost 启动NFS后查看RPC注册的端口信息
program vers proto port service
100000 4 tcp 111 portmapper
...
100003 4 tcp 2049 nfs
100227 2 tcp 2049 nfs_acl
...
linux-szge:~ # chkconfig nfs on NFS设置为开机自启动
linux-szge:~ #chkconfig --list nfs
nfs 0:off 1:off 2:off 3:on 4:off 5:on 6:off
服务器端测试是否可联机
linux-szge:~ # showmount -e 测试是否可联机
Export list for linux-szge:
/data/lml 172.30.3.73
详情请看showmount --help详解
配置NFS客户端
linux: ~ # mkdir /getshare 创建共享目录
linux:~ # service rpcbind restart先重启RPC
linux:~ # showmount -e 172.30.1.199 扫描服务器端NFS目录(172.30.1.199是服务器端NFS的IP)
mount挂载NFS服务器端的共享目录/data/lml到客户端本地的/getshare下
linux:~ # mount -t nfs 172.30.1.199:/data/lml /getshare
挂载格式
mount -t nfs 主机名或IP:/共享目录 /挂载点
linux:~ # df 查看挂载情况
Filesystem Size Used Avail Use% Mounted on
/dev/sda2 40G 28G 11G 73% /
...
172.30.1.199:/data/lml 26G 8K 26G 1% /getshare
注:访问本地的/getshare相当于访问172.30.1.199的共享目录/data/lml
6、测试NFS能否正常使用
172.30.3.73客户端
挂载点创建文件test
linux:~ #cd /getshare ;echo "llalala" > test;ls -l
-rw-r--r-- 1 root root 8 May 7 15:28 test
172.30.1.199服务器端
共享目录查看是否有挂载点创建的test文件,有表示NFS可正常使用
linux-szge:~ # cd /data/lml;ls -l
-rw-r--r-- 1 root root 8 May 7 15:28 test
举报/反馈
linux共享文件丢失,linux基础应用(NFS文件共享)相关推荐
- Linux上(Redhat7)实现NFS文件共享服务
NFS(Network File System)网络文件系统基于TCP/IP 主要功能:通过网络(局域网)让不同的主机系统之间可以共享文件或目录,可以像使用本地主机资源那样远程读写文件夹 主要用途:N ...
- linux共享文件丢失,【干货分享】linux平台下数据文件被误删后,如何及时得知并进行恢复...
原标题:[干货分享]linux平台下数据文件被误删后,如何及时得知并进行恢复 我们知道在windows平台下,一旦文件在程序中打开,则不能被删除,所以不存在误删数据文件的情况,如下图所示. 但是在LI ...
- linux nfs文件共享
linux nfs文件共享 ◆一.概念 NFS是网络文件系统(Network File System)的简称,是分布式计算机系统的一个组成部分,可实现在异构网络上共享和装配远程文件系统. NFS由SU ...
- Linux配置NFS文件共享存储
一.NFS简介 NFS是一种基于TCP/IP传输的网络文件系统协议.通过使用NFS协议,客户机可以像访问本地目录一样访问远程服务器中的共享资源. 对于大多数负载均衡群集来说,使用NFS协议来共享数据存 ...
- Linux就该这么学--Samba NFS的配置
SAMBA文件共享服务 Samba服务程序现在已经成为在Linux系统与Windows系统之间共享文件的选择 1.安装ansible [root@myserver ~]# yum install -y ...
- linux入门指南(基础教程)
Linux学习基础 1.什么是Linux? 准确的说,是指Linux的kernel(系统的核心程序),其内核版权属于Linus Torvalds,在GPL(GNU General Public Lic ...
- 浅谈linux - samba实现linux与windows文件共享
概述 Samba是一个能让Linux系统应用Microsoft网络通讯协议的软件,而SMB是Server Message Block的缩写,即为服务器消息块,SMB主要是作为Microsoft的网络通 ...
- Linux最常用的基础命令
Linux最常用的基础命令个人总结 计算机基础知识: 32bit和64bit系统的区别.系统运行机制 32bit=内存的最大寻址空间是2**32,也就是说最大只能使用4GB的内存 64bit=内存的最 ...
- 《Linux共享文件夹搭建===samba》
博主这边文章主要是讲解一下 Linux共享文件夹搭建,利用samba服务协议. 博主之前介绍过利用NFS服务来搭建共享文件夹,这次来讲讲利用samba搭建共享文件夹的方法. 目录 1.samba服务以 ...
- 嵌入式Linux视频笔记----Linux基础入门
https://www.bilibili.com/video/BV1JK4y1t7io/?spm_id_from=333.788.videocard.2 运行于ARM-A7的嵌入式Linux系统基础知 ...
最新文章
- Scrapy五大核心组件简介
- 分布式事务:分布式事务原理概述
- <力扣>-----利用哈希表来判断是否存在重复元素
- 打造自己的装机U盘(二)
- vue 加载太慢_如何提高Vue项目首页的加载速度
- vmnet0 子网ip和子网掩码_IP地址知识介绍及子网划分与汇总
- 码头结构计算机辅助设计软件,空间结构分析软件MST2016 官方版
- postgres 退出_Postgresl选择正确的关闭模式
- pands 画图 调整大小_用宏命令对word里的图片尺寸大小进行批量修改的方法
- 中国电话区号(CSV)
- 大鱼吃小鱼小游戏完整版
- Xilinx AXI Crossbar相关调试记录
- windows 命令方式查找指定IP的MAC地址
- 7000词汇这么背我比较可以接受,连续看20天足以
- linux管道只能运输参数吗,oeasy教您玩转 linux 010212 管道 pipe
- JSRUN 对比 jsfiddle,jsbin,codepen
- tomcat错误This is very likely to create a memory leak
- 计算机软著进行转让的步骤
- flarum 轻论坛安装教程
- (已更新)谁是卧底线下发牌器微信小程序源码下载,强大的自定义功能
热门文章
- 学习 Python 第八天
- 科技四巨头展望:战线***升级 软硬界限模糊
- 「leetcode」701. 二叉搜索树中的插入操作:【递归法】【迭代法】详解
- 如何使用终端下载 macOS Monterey 12.1 正式版
- 如何在任何设备上将您的Apple笔记导出为PDF文件?
- 如何为 Apple 设备使用通用控制?
- 18 Strings for Mac(Xcode文件翻译工具)
- 在苹果Mac上如何将zsh用作默认Shell?
- 如何使用Snagit修剪视频?
- 已支持macOS Big Sur 的apple App更新列表