使用背景 默认情况下通过原生的 nfs 直接挂载的方式是没有办法设置自定义参数的,如官网所述: 参考:https://kubernetes.io/zh-cn/docs/concepts/storage/ volumes/#nfs 解决办法 可以通过创建 PV-PVC 的方式挂载时指定挂载参数,相关示例yaml 如下: 创建一个storageClassName:"" 的 PV 资源,设置 NFS 挂载和 mountOptions 字段(自定义参数): apiVersion: v1 kind: PersistentVolume metadata: name: test spec: capacity resources: requests: storage: 5Gi # 注意这里的值小于等于 PV 的值 storageClassName: "" 待绑定完成后,即可使用自定义参数挂载进工作负载使用 : 验证挂载参数:
将Ubuntu下的/home/dhcc/nfs挂载到CentOS下/home/shao/nfs。 Ubuntu: 1.安装配置NFS服务器 sudo apt-get install nfs-kernel-server nfs-common 2.配置参数 vim /etc/exports 文件最后加入一行 ,注意不要加到注释 /home/dhcc/nfs *(rw,sync,no_root_squash) #该目录为nfs服务根目录,*表示允许所有的网段访问,也可以使用具体的IP,参数详解在最后 /etc/rc.d/rc.local sudo mount -t nfs cpnas01.cloud.cnpc:/fs_nfs016 /data 2.mount直接挂载 mount -t nfs 附录:NFS常用参数如下: ro 只读访问 rw 读写访问sync 所有数据在请求时写入共享 async nfs在写入数据前可以响应请求 secure nfs通过1024以下的安全TCP/IP端口发送
nfs共享的时候,无论怎么检查都报错:mount.nfs: access denied by server while mounting NFS版本问题 编辑/etc/sysconfig/nfs文件,找到下面 #RPCNFSDARGS="-N 2 -N 3" #Turn off v4 protocol support #RPCNFSDARGS="-N 4" /*把这句前面的#号去掉*/ 最后保存,重启nfs 服务,再尝试挂载;如果挂载不上,可尝试在后面加-o nolock参数: [zzx@localhost ~]$ sudo mount -t nfs 192.168.1.110:/home/zzx/fl2440 /mnt/nfs -o nolock
Nconnect是NFS的一种挂载选项,允许客户端使用多个并行TCP连接与NFS存储通信 - 多路复用。 NFS-SSD(以太网直连SSD)如何改变游戏规则” nconnect挂载选项 NFS的挂载选项:nconnect大约五年前在Linux内核v5.3中首次亮相,它可以与NFSv2、3和4.x一起使用,调用方式如下 Nconnect仅在客户端首次挂载特定NFS服务器IP/NFS版本组合时生效,所选的nconnect值适用于从客户端到具有相同NFS版本的该NFS服务器IP的所有后续挂载。 除非在第一次挂载时指定,否则假定nconnect=1。这意味着在指定或更改nconnect值之前,必须卸载使用特定NFS版本的客户端到服务器的所有连接。 使用Hammerspace元数据服务器(Anvil)的IP地址将导出的目录挂载到 NFS中。无需明确指定NFS版本。客户端和服务器都将自动使用支持的最高版 - 在本例中为v4.2。
Autofs非常方便,主要有两点: 1)设置开机不一定要挂载的目录,当用的时候才实现自动挂载。 2)用户不使用自动挂载的目录一段的时间,会自动卸载。 ~]# vim /etc/nfs.misc # 添加以下内容 nfs -fstype=nfs,rw,sync 172.168.1.65:/data/nfs 注:NFS的本地挂载子目录为nfs,-fstype =nfs表示类型为nfs,rw、sync是挂载使用的权限,172.168.1.65:/data/nfs是远程NFS挂载目录。 ~]# df -h # 使用cd命令触发自动挂载 [root@localhost ~]# cd /data/nfs [root@localhost nfs]# ls -l [root@localhost nfs]# df -h # 结果显示已自动挂载 至此,Autofs自动挂载搭建完毕。
首先做点假设:假设有台 NFS 服务器 tree.mydatacenter.net 已经启动并运行。 安装软件包 你只需要安装两个软件包:用于 NFS 客户端的 nfs-common 和提供自动挂载的 autofs。 首先,将以下两行添加到文件 auto.master 中: /mnt/tree /etc/auto.misc/home/tree /etc/auto.home 每行以挂载 NFS 共享的目录开头。 第三步,使用以下行创建文件 auto.home: * -fstype=nfs tree:/home/& 该行表示 autofs 将挂载 auto.master 文件中匹配 首先,ls 的输出不会显示任何内容,但在运行 cd ourfiles 之后,将自动挂载 ourfiles 共享目录。 cd 命令也将被执行,你将进入新挂载的目录中。
主nginx操作: $ sudo yum install -y nfs-utils rpcbind $ sudo vim /etc/exports 写入如下内容: /data/wwwroot/ /data/wwwroot/www.dedecms.com/uploads/ 从web server: $ showmount -e 192.168.14.103 $ sudo mount -t nfs wwwroot/www.discuz.com/data/attachment/ /data/wwwroot/www.discuz.com/data/attachment/ $ sudo mount -t nfs 192.168.14.103:/data/wwwroot/www.dedecms.com/uploads/ /data/wwwroot/www.dedecms.com/uploads/ 从web server 查看挂载 admin@Centos-1 uploads]$ df -h 文件系统 容量 已用 可用 已用% 挂载点
NFS挂载时出现"mount.nfs: access denied by server while mounting "的解决方法 1、使用了非法端口,也就是使用了大于1024的端口。 服务,再尝试挂载。 off v4 protocol support #RPCNFSDARGS="-N 4" /*把这句前面的#号去掉*/ 最后保存,重启nfs服务,再尝试挂载;如果挂载不上,可尝试在后面加-o nolock 参数。 我自己的如下: [zzx@localhost ~]$ sudo mount -t nfs 192.168.1.110:/home/zzx/fl2440 /mnt/nfs -o nolock 3、查看客户端挂载的目录是否具备读写权限
Linux中的NFS挂载问题 在Linux环境中,如果你经常进行mysql的数据备份,可能会遇到备份机挂载在线上环境的问题,今天我们说说NFS备份机目录挂载的问题。 NFS: 配置好了NFS服务端之后,我们就可以给我们需要的NFS挂载机器进行相关配置了,一般来讲,挂载有三种方法,较为推荐的是autofs这种自动挂载的方法,其他两种都是开机挂载,不推荐,有兴趣大家可以去了解 autofs自动挂载方法在挂载时会咨询主映射配置文件/etc/auto.master来决定要定义哪些挂载点,然后使用适用于各个挂载点的参数来启动automount守护进程。 XX.XX.XXX.242:/data/mysql 其中mysql是/data/backup_zw242下面挂载目录的名字,后面的-rw,bg等是挂载的一些参数(有需要可自行查阅),最后的'IP 然后是-o参数,这个参数后面跟的内容,就是刚才/etc/autozw242.nfs文件里面的参数; 第二部分是NFS服务器的IP地址和相关目录; 第三部分是NFS客户端的相关目录; 6.设置自启动,重启
需求:在SUSE11.1 建NFS AIX6.1上挂载NFS 1.SUSE 11.1上建NFS (1)首先使用安装光盘安装nfs-kernel-server (2)配置共享目录,编辑 /etc/ 用户具有根目录的完全管理访问权限 (3)启动rpcbind nfsserver 两个服务 service rpcbind start service nfsserver start 2.AIX6.1上挂载建好的 /nfsdir * (2)在AIX系统上新建一个文件系统用来挂载NFS共享目录 ,比如 /nfsdir_720 (3)挂载NFS mount nfs_ip:/nfs_dir /local_dir AIX挂载NFS “vmount: Not owner”错误处理 需要修改nfso 将nfs_use_reserved_ports=0 修改成1 首先使用 nfso -a命令查看下配置, 然后执行修改命令 : nfso -o nfs_use_reserved_ports=1 修改完后,再重新挂载即可
---- 解决方案: 使用nfs(network file system)网络文件系统工具,它是通过网络使不同机器或者操作系统之间分享部分文件,用于宿主机和目标机之间的文件分享。 ---- 场景: 服务端( 硬盘本地宿主主机 ): IP :172.16.168.1 共享目录:/media/alic/asus 客户端( 将远程挂载磁盘主机 ): IP:172.31.131.151 挂载路径:/home/alic/Alic/share ---- 安装nfs(两台主机都需要安装) debain/ubuntu sudo apt-get install -y nfs-kernel-server 服务 ➜ ~ sudo systemctl restart nfs-server.service 客户端 (1) 先创建挂载的目录 ➜ ~ sudo mkdir /home/alic/Alic/share (2) 挂载远程磁盘 ➜ Alic sudo mount -t nfs 172.16.168.1:/media/alic/asus /home/alic/Alic/share ---- 至此,我们已经配置完成了
一:服务器端 step1:关闭防火墙 sudo ufw disable step2:安装nfs sudo apt-get install nfs-kernel-server step3: 打开/etc /exports文件,在末尾加入:/home/daysmark/nfsdir*(rw,sync,no_root_squash) 注:nfs允许挂载的目录及权限,在文件/etc/exports中进行定义, 重启服务: #sudo /etc/init.d/nfs-kernel-server restart //重启nfs服务 #showmount -e //显示共享出的目录 二:客户端 nfsclient端安装和配置 (1)安装nfsclient sudo apt-get install nfs-common (2)查看nfsserver上共享的目录 取消挂载用这个指令: #sudo umount /mnt
大多数Linux文件系统都是在引导时挂载的,并且在系统运行时仍然挂载。在fstab文件中配置的任何远程文件系统也是如此。 安装包 您只需要安装两个包:NFS客户端函数的常用NFS包,以及提供automount函数的autofs包。 tree:/share/ourfiles 这一行指示autofs在auto中匹配的位置挂载ourfiles共享。 家与以下线: * -fstype=nfs tree:/home/& 这一行指示autofs在auto中匹配的位置挂载用户共享。自动.home的主文件。 首先,ls的输出不会显示任何内容,但是在运行cd ourfiles之后,ourfiles共享目录将自动挂载。cd命令也将被执行,您将被放置到新挂载的目录中。
于是韦老师介绍了两种方式: 1 仅用flash上的根文件系统启动后,手工MOUNT NFS 使用NFS作为根文件系统来启动 视频中只介绍了开发板这端uboot参数的设置,并未介绍Ubuntu端 NFS服务器的设置 ,这就导致很多学员学习时遇到难以逾越的问题:NFS挂载,从而影响学习进度和热情。 简单解释各个参数的意义: /work/nfs :允许客户端挂载的目录,可添加任意多个,如果不设置,服务器将不允许客户端挂载。 服务器运行在哪个系统上,就是哪个系统的IP) /work/nfs: 要挂载的目录(Ubuntu的目录) /mnt : 要挂载到的目录(开发板上的目录,注意挂载成功后,/mnt下原有数据将会被隐藏 4.再次确认刚才设置的目录是否生效 5.查看Ubuntu的IP和开发板的IP,等会设置uboot启动参数时会用到 6.设置uboot启动参数 set bootargs noinitrd root=/dev
mount -t nfs -o nolock 172.22.44.2:/home/lzl/rootbox_hi3521u_pure/qvs/vs /tmpfs/vs_pub mount -t nfs rootbox_hi3521u_4g/qvs /home/lzl/rootbox_hi3531/qvs setenv bootargs ‘mem=150M console=ttyAMA0,115200 root=/dev/nfs
本来不知道nfs是啥,因为群里的Harry童鞋有个问题,如何把本地目录挂载到hdfs上,搞什么云存储,说那么巧就是那么巧,HDP支持nfs,然后我就照着文档的说明去做,最后弄出来了。 .dump.dir</name> <value>/tmp/.hdfs-nfs</value> </property> 4.nfs本身也有portmap和nfs3等东西,但是我们不用它们的,我们用 start nfs3 使用上面的命令启动的,可以用以下的命令停止 hadoop-daemon.sh stop nfs3 hadoop-daemon.sh stop portmap 5.安装nfs : / (everyone) 7.把本地的home/cenyuhai/nfs和hdfs做映射,做完映射之后,hdfs上的目录会出现在本地的/home/cenyuhai/nfs目录中 mount -t nfs -o vers=3,proto=tcp,nolock 127.0.0.1:/ /home/cenyuhai/nfs 然后我们可以看到nfs下面出现了这些目录,它们就是我在hdfs上面的目录
0 0 注意默认是nfs挂载 如果选择nfs4挂载,则可以用以下语句 mount -t nfs4 11.11.165.115:/tmp/test0920 /data 编辑/etc/fstab 则可以 现在新的是nfsv4.2 所以尽可能用nfs4 补充: nfs4挂载的fsid问题 问题现象: 挂载nfs4时,报错:reason given by server :No such file or 客户端需要使用“nfs server ip:/”挂载伪文件系统,伪文件系统一般使用RO方式共享,其他共享可以通过mount –bind选项在伪文件系统目录下挂载。 客户端挂载过程需要通过mount –t nfs4指定NFS版本为4,默认采用nfsv3。 ,insecure,no_root_squash 然后mount -t nfs4 ip:/datapool/nfs /mnt/nfs/ nfs配置参数选项说明: ro:共享目录只读; rw:
☀️ 介绍 Linux 系统下,如果想要将 A 机器的目录挂载到 B 机器,让 B 机器访问,可以通过 NFS 将目录挂载到 B 机器! *(rw,sync) EOF ## 生效exports exportfs -rv 文件中可以设置参数: rw:具有读写权限 sync:资料同步写入磁盘和内存 o:只读权限 no_root_squash 1、创建挂载目录 mkdir /backup 可以与服务端挂载目录不同名。 10.211.55.* 3、mount 挂载远程目录 mount -t nfs -o rw,bg,hard,rsize=32768,wsize=32768,vers=3,nointr,timeo=600 OK,至此已经配置完成,通过 df -h 就可以查看已挂载的 NFS 目录啦! 小BUG 最后再分享一个很坑的小bug吧,需要注意 ????
1 查看挂载配置: cat /var/lib/nfs/etab 查看NFS服务器端配置参数的细节 cat /proc/mounts 查看客户端mount的挂载参数细节 2 NFS客户端mount挂载参数说明 参数会一直挂载直到成功(但可能造成客户端无响应,常配合intr参数使用) intr 当hard挂载资源timeout后,若使用intr参数可在超时后终端挂载,防止NFS锁死 resize/wsize nfs 172.16.1.31:/date/ /mnt # 默认参数能满足大部分需求 4 mount -o可以使用的参数说明(红色默认值) ro/rw ■以只读/读写方式挂载 dev/nodev 表示性能优化参数,安全和性能是对立的 remount参数很重要,在文件系统变为只读后,进入单用户模式修复时,要使用mount -o remount,rw /** 来重新挂载目录 以上参数有部分只在fatab 中有效,sync至在ext234\fat\vfat\ufat中有效 5 企业生产环境下NFS优化挂载3种常见用法 1)默认挂载 mount -t nfs IP:目录 /挂载点 # 其实centos的默认挂载性能已经非常不错了
NFS客户端mount挂载优化 NFS作用 NFS服务可以让不同的客户端挂载使用同一个上目录,作为共享存储使用,这样可以保证不同节点的客户端数据的一致性,在集群环境中经常用到 NFS的优点 1、简单-- ---->容易上手,学习 2、方便------>安装快速,后期维护简单 3、可靠------>从软件层面上看,数据可靠性高 NFS服务安装成功并能使用之后,客户端挂载时也会加上一些参数进行优化 NFS挂载优化参数 1、有关系统安全的挂载优化参数 [root@localhost ~]# cat /etc/redhat-release CentOS release 6.5 (Final) 检查测试环境 [root /text.sh: Permission denied 经测试发现noexec参数只能禁止二进制程序执行,shell程序依然可执行 2、性能优化参数 首先卸载原来的挂载 [root@localhost ,上面所有测试数据由于虚拟机的硬件及其它因素可能会与实际环境有所差别,如需真正的数据需到生产环境测试 3、自动挂载autofs 此参数经常用于内部测试环境中,客户不需挂载目录到本地,一旦客户访问服务端,