自己整理的Ubuntu NFS常用指令及调优方法

简介: NFS(Network File System)网络文件系统是一种分布式文件系统协议,最初由Sun Microsystems开发,并在1984年首次发布。NFS允许不同计算机通过网络共享资源,特别是文件和目录,就像它们是本地存储的一部分一样。使用NFS的客户端可以挂载远程服务器上的文件系统,使得用户能够以透明的方式访问远程数据,实现跨多个系统的文件共享。

Ubuntu NFS command,不常用就容易忘记,整理NFS的相关command。

简单介绍一下什么叫NFS

NFS(Network File System)网络文件系统是一种分布式文件系统协议,最初由Sun Microsystems开发,并在1984年首次发布。

NFS允许不同计算机通过网络共享资源,特别是文件和目录,就像它们是本地存储的一部分一样。使用NFS的客户端可以挂载远程服务器上的文件系统,使得用户能够以透明的方式访问远程数据,实现跨多个系统的文件共享。

NFS基于客户端-服务器架构运行,其中服务器端提供共享的文件系统资源,而客户端则通过网络请求这些资源。

NFS协议通常在应用层实现,它依赖于底层的传输层协议进行通信,传统上是基于UDP,部分版本也可以使用TCP以增强可靠性。

NFS的关键技术之一是远程过程调用(RPC),这是一种让客户端能够直接调用位于远程机器上的服务或函数的技术。通过RPC,NFS定义了一套标准接口,用于处理文件操作,如打开、读取、写入、创建和删除等。

NFS广泛应用于企业环境和多操作系统环境中,提高了数据共享的效率和灵活性。

image.png

NFS最显而易见的好处有如下三点

  1. 本地工作站使用更少的磁盘空间,通过NFS访问存在另外一台服务器上的存储的资源。
  2. NFS目录是可以被共用的,企业信息化、移动办公必要的共享技术。
  3. U盘之类的易感染病毒的存储设备可以在网络上面被别的机器使用。而NFS可以减少网络中可移动存储设备的数量,帮助降低病毒传播风险。

    Ubuntu NFS常用指令

1,Ubuntu install NFS

apt-get install nfs-common

2,挂载NFS

mount 192.168.1.1:/python /mnt

3,给挂载的NFS高级授权

chmod -R 777 /mnt

4,卸载挂载的NFS

sudo umount /mnt

5,卸载NFS报错:umount.nfs4: /mnt: device is busy 处理办法。
找到占用的process:

fuser -m -v /mnt

mirror@mirror:~$ sudo umount /mnt
umount.nfs4: /mnt: device is busy
mirror@mirror:~$ fuser -m -v /mnt
USER PID ACCESS COMMAND
/mnt: root kernel mount /mnt
使用kill -9 杀进程:

kill -9 <pid>

此后再执行umont即可。
6,mount NFS后,配置开机自动执行脚本。

vim /etc/fstab
192.168.1.1:/python /mnt  nfs rw 0 0

7,df -h 查看挂载目录信息。
8,显示可用NFS目录:

showmount -e

9,重启NFS

sudo /etc/init.d/nfs-common restart

或者

service nfs-common restart

Ubuntu NFS调优方法

在Ubuntu系统中对NFS(Network File System)进行调优主要涉及以下几个方面:

  1. 性能优化

    • 缓冲/缓存调整:可以通过修改内核参数来调整NFS客户端的读写缓冲大小,例如通过修改 /etc/sysctl.conf 文件中的 vfs.nfs.* 相关设置,如 vfs.nfs.mountpoint_cache_timeout 等。

    • 挂载选项:在挂载NFS共享时可以指定不同的挂载选项以优化性能。例如:

      sudo mount -t nfs server:/nfs/export /mnt/nfs -o rw,bg,hard,nointr,rsize=8192,wsize=8192,timeo=600,actimeo=30
      

      其中,rsizewsize 分别指定了读写块大小,增大它们可能有助于提高大文件传输效率;timeo 是超时时间;actimeo 影响目录属性缓存时间。

    • 网络优化:确保网络带宽充足,并且没有瓶颈。考虑使用低延迟、高带宽的网络设备和配置合适的TCP窗口大小。

  2. 服务器端配置

    • NFS服务端配置优化:调整 exports 配置文件,正确设置访问权限、同步模式(sync/async)、以及是否启用压缩等。

    • 后台进程优化:检查NFS守护程序和其他相关服务(如rpcbind或portmap)的配置,确保它们运行在适当的并发级别和服务质量上。

  3. 硬件与存储优化

    • RAID配置:如果服务器端存储支持,采用RAID阵列可以提升I/O性能。
    • SSD使用:将NFS数据存储在高性能的SSD硬盘上,可以极大提升响应速度。
  4. 日志与监控

    • 使用系统工具如 nfsstat 或第三方监控工具来监测NFS服务状态,找出潜在的性能瓶颈并针对性地进行优化。
  5. 安全优化

    • 限制访问策略,仅允许特定IP或子网访问NFS共享,减少不必要的安全风险。

针对具体场景,请根据实际情况调整上述配置。记得在更改配置后,需要重新加载服务或者重启服务使改动生效。对于部分系统参数调整,可能需要重启系统才能应用新的内核参数。

目录
相关文章
|
15天前
|
Ubuntu Shell 开发工具
Ubuntu下安装配置和调优 Oh-my-fish
Oh-my-fish 是一个强大的工具,可以大大增强 Fish Shell 的功能和美观度。通过安装和配置 Oh-my-fish,可以极大地提升命令行的使用体验。同时,通过适当的调优,可以优化 Oh-my-fish 的性能,使其在保持丰富功能的同时,仍然能够快速启动并高效运行。希望本文提供的详细步骤和示例代码能帮助您在 Ubuntu 系统中顺利安装、配置和调优 Oh-my-fish。
43 7
|
2月前
|
并行计算 Ubuntu Linux
Ubuntu学习笔记(三):Linux下操作指令大全
Ubuntu学习笔记,介绍了Linux操作系统中常用的命令和操作,如文件管理、系统信息查看、软件安装等。
47 3
|
2月前
|
Kubernetes 容器
基于Ubuntu-22.04安装K8s-v1.28.2实验(三)数据卷挂载NFS(网络文件系统)
基于Ubuntu-22.04安装K8s-v1.28.2实验(三)数据卷挂载NFS(网络文件系统)
161 0
|
3月前
|
Ubuntu 应用服务中间件 网络安全
Ubuntu 22.04环境下为Odoo开启80端口的方法
通过以上步骤,你应该能够在Ubuntu 22.04环境下为Odoo开启80端口。访问你的域名时,Nginx会将请求代理到Odoo,允许你通过80端口访问Odoo应用。
120 1
|
3月前
|
监控 Ubuntu Python
代码实现Ubuntu系统参数监控的方法
通过这种方式,你可以方便地对Ubuntu系统的关键参数进行实时监控,对系统性能分析和资源管理具有重要意义。
42 0
|
4月前
|
存储 Ubuntu Go
在Ubuntu 16.04上安装Go 1.6的方法
在Ubuntu 16.04上安装Go 1.6的方法
54 1
|
4月前
|
存储 Ubuntu Go
在Ubuntu 18.04上安装Go的方法
在Ubuntu 18.04上安装Go的方法
69 1
|
4月前
|
存储 Ubuntu Linux
在Ubuntu 14.04上安装Go 1.6的方法
在Ubuntu 14.04上安装Go 1.6的方法
63 1
|
4月前
|
Ubuntu Linux 持续交付
在Ubuntu 16.04上安装Docker Compose的方法
在Ubuntu 16.04上安装Docker Compose的方法
121 1
|
4月前
|
Ubuntu 网络安全
【ubuntu】目录下文件太多导致rm指令无法执行问题解决方法
【ubuntu】目录下文件太多导致rm指令无法执行问题解决方法
86 0