linux服务器常用命令 (linux服务器一些小技巧)

什么是NFS

NFS (Network File System) 是一种在不同操作系统之间实现文件共享的协议。它允许在网络上的计算机之间共享文件和目录。NFS协议支持两种不同类型的服务:NFS服务器和NFS客户端。

NFS服务器是一个运行NFS服务的主机,它可以将本地文件系统的目录共享给其他的NFS客户端,而NFS客户端则可以挂载这些共享目录中的文件系统到自己的文件系统树上,使之在自己的操作系统中可以读写这些文件。

NFS支持跨平台,所以它使得在不同操作系统之间共享数据变得非常容易。它可以运行在Unix、Linux、Windows等不同的操作系统上,兼容性非常好。NFS的优点如下:

  • 易于配置和管理共享资源。
  • 可实现多用户同时访问同一文件。
  • 跨平台兼容性好,可以在不同的操作系统上实现文件共享。
  • 可以通过NFS客户端在远程网络上挂载NFS服务器上的目录,并与其进行文件交互。

环境准备

  • 两台CentOS 7服务器
  • 可以在网络*访上**问这两台服务器
  • 安装基本的需要的软件包:nfs-utils
yum install nfs-utils -y

服务器端配置

配置Exports文件

  1. 首先在服务器端创建一个需要共享的目录:
mkdir -p /data/nfs_share

  1. 编辑/etc/exports文件,添加以下内容:
/data/nfs_share *(rw,sync,no_root_squash)

  1. 加载exports文件:
exportfs -a

启动NFS服务

systemctl enable rpcbind
systemctl enable nfs-server
systemctl enable nfs-lock
systemctl enable nfs-idmap
systemctl start rpcbind
systemctl start nfs-server
systemctl start nfs-lock
systemctl start nfs-idmap

客户端配置

挂载NFS共享目录

  1. 创建挂载目录:
mkdir -p /mnt/nfs_share

  1. 在客户端挂载NFS共享目录:
mount -t nfs SERVER_IP:/data/nfs_share /mnt/nfs_share

自动挂载NFS共享目录

  1. 安装nfs-utils:
yum install nfs-utils -y

  1. 编辑/etc/fstab文件,添加以下内容:
SERVER_IP:/data/nfs_share /mnt/nfs_share nfs defaults 0 0

验证NFS

在客户端执行以下命令:

touch /mnt/nfs_share/test

如果不出意外,则此时在服务器端的/data/nfs_share目录下可以看到一个名为test的文件。

注意事项:

  1. 确定SELinux是否开启并配置相关规则,以避免SELinux导致的权限问题。在开启SELinux的情况下,应该使用semanage命令或修改/etc/selinux/targeted/contexts/files/file_contexts.local文件来配置NFS共享目录的安全上下文。
  2. 最好使用静态IP地址而非动态IP地址,在/etc/exports文件中指定正确的网络地址,以确保只有受信任的客户端可以访问NFS共享目录。
  3. 为了确保NFS共享目录的数据的安全性和完整性,建议在/etc/exports文件中为共享目录指定合适的选项和权限。例如,可以使用ro选项将共享目录设置为只读模式,使用no_root_squash选项禁止客户端使用root用户以root的权限访问共享目录。
  4. NFS版本的选择要与客户端的NFS协议版本相匹配。NFSv4.x具有更强的安全性,但是也需要更复杂的配置。
  5. 还可以配合iptables防火墙等工具使用,对NFS服务进行进一步的限制和保护。