IBM Cloud Docs
在 Red Hat Linux 上安装文件共享

在 Red Hat Linux 上安装文件共享

使用以下指示信息将基于 Red Hat Enterprise Linux®的 IBM Cloud® 计算实例连接到网络文件系统 (NFS) 文件共享。

准备工作

  1. 如果文件共享是以安全组访问模式设置的,请验证计算主机是否属于与共享相同的 安全组。 如果文件共享使用 VPC 访问模式设置,请确认要加载共享的服务器与文件共享位于同一区域。 更多信息,请参阅 安装目标访问模式

  2. 确认服务器所在的 VPC 存在共享的挂载目标。 如果需要新的安装目标,请遵循 创建文件共享和安装目标 中的指示信息。

  3. 从安装目标获取文件共享的安装路径。 可从 控制台 的文件共享详细信息页面、CLIAPITerraform 获取安装路径信息。

  4. 如果要在传输过程中使用加密,则需要从元数据服务中获取 IPsec 证书。 确保已为挂载目标启用传输中加密。 此外,使用安全连接安装文件共享。 此功能仅可用于具有 dp2 概要文件和安全组访问方式的文件共享。 有关更多信息,请参阅 Encryption in Transit-Securing mount connections between file share and host

    安装并运行 mount helper 实用程序,以通过传输中的加密或不使用加密连接来安装文件共享。

File Storage for VPC 服务需要 NFS V v4.1 或更高版本。

安装文件共享

执行以下步骤以在 RHEL 主机上安装文件共享。 示例基于 RHEL 8。

SSH 到要安装文件共享的 Compute 实例,然后继续执行以下步骤:

  1. 安装必需的工具。

    yum install nfs-utils
    
  2. 在实例中创建一个目录。

    mkdir /mnt/test
    
  3. 挂载远程文件共享。

    mount -t nfs4 -o <options> <host:/mount_target> /mnt
    

    请参阅以下示例。

    mount -t nfs4 -o sec=sys,nfsvers=4.1 10.240.64.11:/384f711c_0684_4643_b1c3_dc7acb36d04a /mnt/test
    
  4. 使用磁盘文件系统命令验证安装是否成功。

    $ df -h
    Filesystem                                                                                    Size  Used Avail Use% Mounted on
    udev                                                                                          3.9G     0  3.9G   0% /dev
    tmpfs                                                                                         798M  660K  798M   1% /run
    /dev/vda2                                                                                      99G  1.6G   93G   2% /
    tmpfs                                                                                         3.9G     0  3.9G   0% /dev/shm
    tmpfs                                                                                         5.0M     0  5.0M   0% /run/lock
    tmpfs                                                                                         3.9G     0  3.9G   0% /sys/fs/cgroup
    /dev/vda1                                                                                     240M   73M  155M  33% /boot
    fsf-dal2433a-dz.adn.networklayer.com:/nxg_s_voll_246a9cb9-4679-4dc5-9522-4a7ed2575136  190G  384K  190G   1% /mnt/test
    tmpfs                                                                                         798M     0  798M   0% /run/user/0
    
  5. 转至安装点以创建测试文件并列出所有文件以验证共享是否已安装为读/写。

    touch /mnt/test/test.txt
    ls -al /mnt/test
    
    $ touch /mnt/test/test.txt
    ls -al /mnt/test
    total 12
    drwxr-xr-x   2 nobody nobody 4096 Apr 8 15:52 .
    dr-xr-xr-x. 22 root   root   4096 Apr 8 14:30 ..
    -rw-r--r--   1 nobody nobody    0 Apr 8 15:52 test.txt
    

    文件由根用户创建,所有权为 nobody:nobody。 要正确显示所有权,请使用正确的域设置更新 idmapd.conf。 如需了解更多信息,请参阅 如何为 NFS 实现 no_root_squash

  6. 启动时挂载远程文件共享。 要完成设置,必须编辑文件系统表 (/etc/fstab) 并将远程文件共享添加到启动时自动加载的条目列表中。 在 fstab 中创建条目之前,请执行以下步骤将安装路径主机名添加到 /etc/hosts

    1. 获取安装路径的 hostname.com 部分,例如 fsf-dal2433a-dz.adn.networklayer.com 并获取 IP 地址。 从实例运行以下命令以获取 IP 地址。

      host hostname.com
      

      请参阅以下示例。

      host fsf-dal2433a-dz.adn.networklayer.com
      fsf-dal2433a-dz.adn.networklayer.com has address 203.0.113.0
      

      如果在运行 host 命令时迂到“找不到命令”错误,请使用 yum install bind-utils 进行安装。

    2. 编辑 /etc/hosts 并向主机名条目添加 IP。

      <IP_Address> hostname.com
      

      请参阅以下示例。

      198.51.100.0 fsf-dal2433a-dz.adn.networklayer.com
      
    3. 编辑文件系统表 /etc/fstab,并添加条目。

      (hostname):/(file_share_path) /mnt nfs_version options 0 0
      

      请参阅以下示例。

      fsf-dal2433a-dz.adn.networklayer.com:/nxg_s_voll_246a9cb9-4679-4dc5-9522-4a7ed2575136 /mnt/test nfs4 nfsvers=4.1,sec=sys,_netdev 0 0
      
  7. 验证配置文件是否没有任何错误。

    mount -fav
    

    如果命令完成时没有错误,说明设置已完成。

    对于 NFS 4.1,请在挂载命令中添加 sec=sys,以防止出现文件所有权问题。 使用 _netdev 在启动所有网络组件之后等待安装存储器。

如何对 NFS 实施 no_root_squash(可选)

默认情况下,NFS 会将以根权限创建的任何文件降级为 nobody 用户。 此安全功能部件会阻止共享特权,除非请求了这些特权。

通过配置 no_root_squash,root 客户机可以保留远程 NFS 文件共享上的 root 用户许可权。

对于 NFSv4.1,将 nfsv4 域设置为:slnfsv4.com,并启动 rpcidmapd 或操作系统使用的类似服务。

  1. 从主机在 /etc/idmapd.conf 中设置域。

    $ vi /etc/idmapd.conf
    [General]
    #Verbosity = 0
    #The following should be set to the local NFSv4 domain name
    #The default is the host's DNS domain name.
    Domain = slnfsv4.com
    [Mapping]
    Nobody-User = nobody
    Nobody-Group = nobody
    
  2. 运行 nfsidmap -c

卸装文件系统

要卸装主机上目前已安装的任何文件系统,请运行 umount 命令并输入磁盘名或安装点名称。

umount /dev/sdb
umount /mnt