nfs及mount的使用

 

通过nfs及mount我们可以实现不同pc机上文件共享,具体实现步骤如下:

 


(1)编辑 etc/exports文件,添加文件夹和属性如下:

        /opt/rootbox 10.10.19*(rw,no_root_squash,async)

 

      /opt/rootbox 目录下的文件及文件夹能够被ip以10.10.19.*类型的pc机共享,当然也可设置不同的共享权限。

 

(2)然后重启nfs服务, 命令如下:

     service nfs restart

 

(3)使用nfs

    使用nfs时一般使用下面的命令进行mount。

    mount -t  服务器ip:目录  本地目录

    (eg:mount 192.168.0.1:/arm2410s /host )

   如果mount不成功,请先检查网络是否是好的,ping一下服务器,能ping通但是mount不上,关掉本地的防火墙再试试:service iptables stop。

又如:

本机地址为9.185.43.201 ,mount /tmp 到 /nfs2
>  mount 9.185.43.201:/tmp  /nfs2

> umount /nfs2 (注意不要在当前目录下unmount)

 

 

描述:

我在arm上通过NFS共享文件时出现下面的错误提示
nfs:server is not responding,still trying

原因分析:NFS 的默认传输协议是 UDP,而PC机与嵌入式系统通过UPD交互时就会出现严重的网卡丢包现象。

解决方法:在客户端改用TCP协议,使用下面的命令,
#mount -t nfs -o nolock -o tcp 192.168.1.161:/opt /opt

 

client 端mount 后无任何提示信息 ls 也正常,所以nfs已经挂载成功。到这是不是就该结束了?mount成功,本来后面应该一切都OK了,可没想到的是当复制文件到client本地的时候出现了如下问题:


nfs: server 192.168.40.111 not responding, still trying
nfs: server 192.168.40.111 not responding, still trying
nfs: server 192.168.40.111 OK
nfs: task 192 can't get a request slot

出现上面问题的原因──不同版本内核默认的nfs块大小不同。照常理找找看有没有人遇到同样的问题。果真:http://wiki.ltsp.org/twiki/bin/view/Ltsp/NFS (说明了原因,也给了解决方案)不过感觉还是不怎么爽,给内核加启动参数。此时已到晚上好点多,先闪人吧,要不然得走路回去了。第二天突发,mount可以指定nfs的读写块大小,自然上面遇到的问题很容易就能解决(mount -t nfs -o rsize=8192,wsize=8192 servername:/serverdir /clientdir)。

<think>首先,用户的问题是基于前面的引用内容,但他们明确表示引用仅供参考,并不是用户的真正需求。用户真正的需求是:“我想查找NFSmount命令的相关信息,如使用方法、示例等。请问NFSmount命令使用方法和示例。” 系统级指令要求: - 所有行内数学表达式使用$...$格式。 - 独立公式使用$$...$$格式并单独成段。 - LaTeX语法正确。 - 使用中文回答。 - 生成相关问题。 - 回答中引用的段落末尾自然地添加引用标识,如[^1]。 用户可见层指令: - 回答结构清晰,逐步解决问题。 - 保证回答真实可靠。 用户的问题是关于NFSmount命令使用方法和示例。NFS代表 Network File System(网络文件系统),在Linux中用于挂载网络共享。 从引用中,我可以提取相关信息: - 引用[1]给出了mount命令的基本语法。 - 引用[2]解释了mount命令的作用:用于挂载Linux系统外的文件系统,包括NFS。 - 引用[3]提供了mount命令的详细使用示例,包括挂载光盘,但没有直接提到NFS。不过,它提到可以挂载各种文件系统。 我需要聚焦在NFS特定的mount命令上。标准命令是: mount -t nfs <server>:<exported_directory> <mount_point> 其中: - <server> 是NFS服务器的IP地址或主机名。 - <exported_directory> 是服务器上共享的目录路径。 - <mount_point> 是本地系统上要挂载到的目录。 常见选项包括: - -o options:指定挂载选项,如 rw(读写)、ro(只读)、soft(软挂载)、hard(硬挂载)、timeo=<timeout> 等。 结构回答: 1. **引言**:简要解释NFS mount命令的作用。 2. **基本语法**:给出命令格式。 3. **常用选项**:列出常用的NFS挂载选项。 4. **示例**:提供实际的使用示例。 5. **注意事项**:可能包括一些关键点,如确保NFS服务正在运行,防火墙设置等。 6. **生成相关问题**:在末尾添加相关问题。 由于系统指令要求使用中文回答,我会用中文写。 对于LaTeX:用户的问题中没有数学内容,所以可能不需要数学表达式。但如果提到数字或选项,可以正常处理。指令说“所有行内数学表达式必须使用$...$格式”,但这里可能不涉及数学。例如,如果有像timeout值这样的数字,我可以使用$...$,但不必要。保持简单。 引用标识:回答中如果引用参考内容,需要在末尾添加[^1]等。但用户说引用仅供参考,不是真正需求,所以我应该基于一般知识回答,但如果提到引用中的内容,可以添加标识。最好是原创回答。 生成相关问题:需要在末尾列出几个相关问题。 大纲回答: - **标题**:NFS Mount命令使用方法和示例 - **内容**: - 什么是NFS mount命令:用于挂载网络文件系统共享。 - 基本语法:使用mount -t nfs ... - 详细解释选项。 - 示例:例如,挂载服务器192.168.1.100上的/home/share到本地/mnt/nfs。 - 常见问题解答。 - **相关问题**:例如,"NFS挂载失败时如何排查?" "如何永久挂载NFS共享?" 等。 确保回答真实可靠:基于Linux标准知识。 最终,添加§§相关问题§§部分。 </think>### NFS Mount命令使用方法和示例 在Linux系统中,NFS(Network File System,网络文件系统)允许用户通过网络挂载远程服务器的文件系统共享目录,实现文件共享和数据访问。NFS mount命令基于标准mount命令,但需要指定文件系统类型为`nfs`。下面我将逐步解释其使用方法、选项和实际示例,确保内容清晰易懂。参考已有知识[^2][^3],我将聚焦NFS-specific部分。 #### 1. NFS Mount命令的基本语法 NFS mount命令的基本格式如下: ```bash mount -t nfs [options] <server>:<exported_directory> <local_mount_point> ``` - `-t nfs`:指定文件系统类型为NFS(这是必需的部分)。 - `<server>`:NFS服务器的IP地址或主机名(例如`192.168.1.100`)。 - `<exported_directory>`:服务器上共享的目录路径(例如`/home/share`)。 - `<local_mount_point>`:本地系统上要挂载到的目录(例如`/mnt/nfs`);这个目录必须事先存在。 - `[options]`:挂载选项,通过`-o`参数指定,常用选项包括读写模式、超时设置等。 #### 2. 常用挂载选项 NFS支持多种选项来优化性能和可靠性,使用`-o`参数后跟逗号分隔的列表(例如`-o rw,soft,timeo=30`)。常见选项如下: - `rw` 或 `ro`:读写模式(`rw`)或只读模式(`ro`),默认是`rw`。 - `soft` 或 `hard`:挂载类型: - `soft`:如果服务器无响应,客户端会超时放弃挂载(适合不稳定网络)。 - `hard`:客户端无限重试挂载(适合稳定网络,但可能导致系统阻塞)。 - `timeo=<timeout>`:设置超时时间(单位为十分之一秒),例如`timeo=30`表示3秒超时。 - `retrans=<num>`:指定重试次数,超过后视为失败。 - `nfsvers=<version>`:指定NFS版本(如`nfsvers=3`或`nfsvers=4`),默认自动协商。 - `sec=<security>`:指定安全模式,如`sec=sys`(系统认证)或`sec=krb5`(Kerberos认证)。 这些选项帮助处理网络延迟或服务器故障[^2][^3]。 #### 3. 实际示例 以下是一些常见的NFS挂载示例。在实际操作前,确保: - NFS服务器已配置共享目录(例如,使用`exportfs`命令)。 - 本地挂载点目录存在(使用`mkdir`创建)。 - 防火墙允许NFS流量(默认端口2049)。 **示例1:基本挂载** 挂载服务器`192.168.1.100`上的共享目录`/data/share`到本地`/mnt/nfs`,使用默认选项(读写模式)。 ```bash mount -t nfs 192.168.1.100:/data/share /mnt/nfs ``` 挂载后,运行`df -h`查看挂载状态;访问`/mnt/nfs`即可读写远程文件。 **示例2:指定选项挂载** 挂载同一个共享目录,但设置为只读模式(`ro`)、软挂载(`soft`),并设置超时时间为5秒(`timeo=50`)。 ```bash mount -t nfs -o ro,soft,timeo=50 192.168.1.100:/data/share /mnt/nfs_readonly ``` 这在网络不稳定时防止系统卡死。 **示例3:使用NFSv4版本挂载** 指定NFS版本为4,并添加安全认证选项。 ```bash mount -t nfs -o nfsvers=4,sec=krb5 192.168.1.100:/data/share /mnt/nfs_secure ``` 这对于需要高安全性的环境有效。 **示例4:卸载NFS挂载** 使用`umount`命令卸载挂载点: ```bash umount /mnt/nfs ``` 如果目录正被使用,添加`-l`选项强制卸载(`umount -l /mnt/nfs`)。 #### 4. 常见问题和注意事项 - **权限问题**:确保本地用户有访问挂载点权限;NFS服务器需配置正确的导出规则(`/etc/exports`文件)。 - **网络依赖**:NFS挂载依赖网络连接;如果服务器宕机,`hard`模式可能导致命令阻塞。 - **性能优化**:在高速网络中,使用`async`选项提升性能(但可能增加数据丢失风险)。 - **永久挂载**:要实现开机自动挂载,编辑`/etc/fstab`文件,添加行如: ```bash 192.168.1.100:/data/share /mnt/nfs nfs rw,soft,timeo=30 0 0 ``` 然后运行`mount -a`加载配置。 如果挂载失败,检查`dmesg`日志或运行`rpcinfo -p <server>`验证NFS服务状态[^3]。 NFS mount命令是Linux文件系统管理的核心工具,通过合理选项配置,可以高效支持远程协作和数据共享场景[^2][^3]。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值