centos bar?centos8官网下载教程
nfs:server is not responding,still trying的解决办法
系统:centos7.9
nfs版本:nfsstat: 1.3.0
rpcbind版本:rpcbind:0.2.0
查看message日志发现nfs客户连接端报如下错误
问题原因:
Mandag 27 november 2006 20:12 skrev Verner Kjærsgaard:
NFS协议到现在经历了V1、V2、V3、V4四个版本,但是它有一个缺点就是协议没有用户认证机制,而且数据在网络上传送的时候是明文传送,所以安全性极差,一般只能在局域网中使用。
NFSv3是1995年发布的,相比NFSv3,NFSv4发生了比较大的变化,最大的变化是NFSv4有状态了。NFSv2和NFSv3都是无状态协议,服务端不需要维护客户端的状态信息。无状态协议的一个优点在于灾难恢复,当服务器出现问题后,客户端只需要重复发送失败请求就可以了,直到收到服务端的响应信息。但是某些操作必须需要状态,如文件锁。如果客户端申请了文件锁,但是服务端重启了,由于NFSv3无状态,客户端再执行锁操作可能就会出错了。NFSv3需要NLM协助才能实现文件锁功能,但是有的时候两者配合不够协调。NFSv4设计成了一种有状态的协议,自身实现了文件锁功能,就不需要NLM协议了。
后来的 NFSv4.1
与NFSv4.0相比,NFSv4.1最大的变化是支持并行存储了。在以前的协议中,客户端直接与服务器连接,客户端直接将数据传输到服务器中。当客户端数量较少时这种方式没有问题,但是如果大量的客户端要访问数据时,NFS服务器很快就会成为一个瓶颈,抑制了系统的性能。NFSv4.1支持并行存储,服务器由一台元数据服务器(MDS)和多台数据服务器(DS)构成,元数据服务器只管理文件在磁盘中的布局,数据传输在客户端和数据服务器之间直接进行。由于系统中包含多台数据服务器,因此数据可以以并行方式访问,系统吞吐量迅速提升。现在新的是nfsv4.2
所以尽可能用nfs4
补充:
nfs4挂载的fsid问题
问题现象:
挂载nfs4时,报错:reason given by server:No such file or directory
背景知识:
NFSv4将所有共享使用一个虚拟文件系统展示给客户端。伪文件系统根目录(/)使用fsid=0标示,只有一个共享可以是fsid=0。客户端需要使用“nfs server ip:/”挂载伪文件系统,伪文件系统一般使用RO方式共享,其他共享可以通过mount–bind选项在伪文件系统目录下挂载。客户端挂载过程需要通过mount–t nfs4指定NFS版本为4,默认采用nfsv3。
解决:
以下是我的配置文件,我想挂在/datapool/nfs目录
/*(rw,fsid=0,insecure,no_root_squash)
/datapool/nfs*(rw,fsid=1000,insecure,no_root_squash
然后mount-t nfs4 ip:/datapool/nfs/mnt/nfs/
nfs配置参数选项说明:
ro:共享目录只读;
rw:共享目录可读可写;
all_squash:所有访问用户都映射为匿名用户或用户组;
no_all_squash(默认):访问用户先与本机用户匹配,匹配失败后再映射为匿名用户或用户组;
root_squash(默认):将来访的root用户映射为匿名用户或用户组;
no_root_squash:来访的root用户保持root帐号权限;
anonuid=<UID>:指定匿名访问用户的本地用户UID,默认为nfsnobody(65534);
anongid=<GID>:指定匿名访问用户的本地用户组GID,默认为nfsnobody(65534);
secure(默认):限制客户端只能从小于1024的tcp/ip端口连接服务器;
insecure:允许客户端从大于1024的tcp/ip端口连接服务器;
sync:将数据同步写入内存缓冲区与磁盘中,效率低,但可以保证数据的一致性;
async:将数据先保存在内存缓冲区中,必要时才写入磁盘;
wdelay(默认):检查是否有相关的写操作,如果有则将这些写操作一起执行,这样可以提高效率;
no_wdelay:若有写操作则立即执行,应与sync配合使用;
subtree_check(默认):若输出目录是一个子目录,则nfs服务器将检查其父目录的权限;
no_subtree_check:即使输出目录是一个子目录,nfs服务器也不检查其父目录的权限,这样可以提高效率;
Troubleshooting
1、在上面的操作过程中,如果你不幸遇到下面这个问题的话,可以尝试更新 Linux kernel或通过打开 IPv6来解决这个问题,这是1个 bug:
mount.nfs4: Cannot allocate memory
2、如果遇到如下问题,可能是因为你的 mount-t nfs使用的是 nfsv3协议,需要明确指出使用 nfsv4协议挂载 mount-t nfs4:
mount: mount to NFS server'172.16.20.1' failed: RPC Error: Program not registered.
如果网络不稳定
NFS默认是用UDP协议,换成TCP协议挂载即可:
mount-t nfs 11.11.165.115:/tmp/test0920/data-o proto=tcp-o nolock
nfs:server xxx.xxx.xxx.xxx is not responding,still trying的解决方法
方法1:
我在 arm上通过NFS共享文件时出现下面的错误提示
nfs:server is not responding,still trying原因分析: NFS的默认传输协议是 UDP,而PC机与嵌入式系统通过UPD交互时就会出现严重的网卡丢包现象。
解决方法:在客户端改用TCP协议,使用下面的命令,**#mount-o tcp 10.10.19.25:/home/export/mnt/local
方法2:**在目标板上通过NFS复制PC机上较大文件到目标板上的时候遇到的问题:
nfs: server*** not responding, still trying
修改方法:
nfs mount时候出现的NFS崩溃,按照以下的方式mount
mount-t nfs-o intr,nolock,rsize=1024,wsize=1024 192.168.1.3/root/somedir/client
附问题四:在测试时,“./progressbar-qws”后出现如Q3一样的提示,按Q3来处理。
以上参考了一些“快乐的天空”的经验,他的网页是:
他的
mount-t nfs-o intr,nolock,rsize=1024,wsize=1024 192.168.1.3/root/somedir/host
应该改成
mount-t nfs-o intr,nolock,rsize=1024,wsize=1024 192.168.1.3/root/somedir/client
有ue的英语单词
true、fuel、blue、glue、cruel等等。
1、true
英 [tru:]美 [tru:]
adj.真正的;真实的;正确的;忠实的。
adv.真正地;确实地;正确地;正当地。
Iallowedmyselftoacknowledgemytruefeelings
我愿意承认我的真实感情。
2、fuel
英 [ˈfju:əl]美 [ˈfjuəl]
n.燃料;(为身体提供能量的)食物;(维持、增加感情的)刺激物。
vt.给…加燃料,给…加油;激起。
Governmentforcesarerunningshortofammunitionandfuel
政府军队的弹药和燃料都所剩无几了。
3、blue
英 [blu:]美 [blu]
n.蓝色;[复数](美国海、陆、空三军穿的)蓝色制服;蓝颜料;[the blue(s)][用作单数或复数]布鲁斯(歌曲)(一种伤感的美国黑人民歌)。
adj.蓝色的;沮丧的,忧郁的。
Thesternwasembellishedwithcarvingsinredandblue
船尾饰有红色和蓝色的雕刻图案。
4、glue
英 [glu:]美 [ɡlu]
vt.胶合;紧附于。
n.胶水;胶粘物;粘聚力。
Youonlyneedaverysmallblobofglue,soonetubelastsforages
每次只需一点点胶水而已,因此一管可以用很长时间。
5、cruel
英 [kru:əl]美 [ˈkruəl]
adj.残酷的,残忍的;使人痛苦的,让人受难的;无情的,严酷的。
You'vebeenthevictimofarathercrueldeception.
你是一场相当残忍的骗局的受害者。
write failed怎么解决
limits.conf文件实际上就是ulimit命令的配置文件。nproc为打开的最大进程数,nofile为打开的最大文件数。该处和上面的/etc/profile是重复设置的。实现上该处增加了以后,/etc/profile就不用再做配置的,而且该处配置更规范些,可以对用户进行限制。
即然以上两处都做了设置,还是有上面的提示,神奇了。后来又乱折腾了半天,突然想到之前在centos 6.3版本配置的时候,发现centos 6.X以后新增了一个/etc/security/limits.d/90-nproc.conf文件,用于控制nproc。这里面的默认配置是