IBM Cloud Docs
在 Red Hat Linux 上安装 File Storage for Classic

在 Red Hat Linux 上安装 File Storage for Classic

使用以下指示信息将基于 Red Hat Enterprise Linux®的 IBM Cloud® 计算实例连接到网络文件系统 (NFS) 共享。 有关如何订购 IBM Cloud® File Storage for Classic的更多信息,请参阅 入门教程

开始之前,请确保用于访问 File Storage for Classic 卷的主机已获得授权。 有关详细信息,请参阅For more information, see 在控制台中授权主机从 CLI 授权主机使用 Terraform 授权主机

安装 File Storage for Classic 共享

  1. 安装必需的工具。

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

    mkdir /mnt/test
    
  3. 通过控制台中的 File Storage for Classic 详细信息页面,使用API调用(SoftLayer_Network_Storage::getNetworkMountAddress() ),或通过查看Terraform中的 ibm_storage_file 资源,获取挂载点信息。

  4. 安装远程共享。

    # mount -t nfs -o <options> <host:mount_point> /mnt
    

    storage_as_a_service 卷的示例。

    #mount -t nfs -o nfsvers=3 fsf-wdc0403a-fz.service.softlayer.com:/IBM02SEV1414935_66/data01 /mnt
    

    enterprise 卷的示例。

    # mount -t nfs -o nfsvers=3 nfshou0201d-fz.service.softlayer.com:/IBM01SEV1414935_2 /mnt
    

    如果使用的是 NFS 4.1,请将 sec=sys 添加到 mount 命令中,以防止发生文件所有权问题。 如果您使用的是 NFSv3 或 NFS 4.1,请添加 _netdev,以便在所有网络组件启动后挂载存储。 有关 mount 命令及其选项的更多信息,请参阅 mount(8)手册页

  5. 使用磁盘文件系统命令验证安装是否成功。

    # df -h
    Filesystem Size Used Avail Use% Mounted on
    /dev/xvda2  25G  1.4G  22G    6%   /
    /tmpfs     1.9G     0 1.9G    0%   /dev/shm
    /dev/xvda1 97M    51M  42M   55%
    
  6. 转至安装点并读/写文件。

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

    由 root 用户创建的文件将具有 nobody:nobody 所有权。 为了正确显示所有权,idmapd.conf 需要更新正确的域名设置。 有关更多信息,请参阅 实现 no_root_squash for NFS(可选) 部分。

  7. 在启动时安装远程共享。 为了完成设置,请编辑文件系统表 (/etc/fstab) 以将远程共享添加到将在启动时自动安装的条目的列表:

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

    请参阅以下示例。

    fsf-wdc0403a-fz.service.softlayer.com:/IBM02SEV1414935_66/data01 /mnt nfs nfsvers=3 0 0
    fsf-wdc0403a-fz.service.softlayer.com:/IBM02SEV1414935_66/data01 /mnt nfs options 0 0
    fsf-wdc0403a-fz.service.softlayer.com:/IBM02SEV1414935_66/data01 /mnt nfs4 options 0 0
    fsf-wdc0403a-fz.service.softlayer.com:/IBM02SEV1414935_66/data01 /mnt nfs _netdev,nfsvers=3 0 0
    

    更多信息,请参阅 Linux /etc/fstab 文件简介

  8. 验证配置文件是否没有任何错误。

    # mount -fav
    

    如果此命令完成且未发生任何错误,那么设置完成。

    如果主机操作系统是 CentOS,那么可以配置更多选项。 有关更多信息,请参阅在 CentOS 中安装 File Storage for Classic

管理用户对已挂载文件共享内容的权限

作为系统管理员,您可以管理已挂载文件存储卷上的数据访问权限。 挂载文件共享后,您可以使用 chownchmod 命令为单个用户和组分配读取、写入和执行权限,从而细化访问控制。 更多信息,请参阅 Red Hat 的教程:如何为用户、群组和其他人管理 Linux 权限

如何对 NFS 实施 no_root_squash(可选)

缺省情况下,NFS 会将使用 root 用户许可权创建的任何文件降级为供 nobody 用户访问。 此安全功能部件将阻止共享特权,除非请求了这些特权。

配置 no_root_squash 后,root用户可以在远程 NFS 共享中保留root权限。

  • 对于 NFSv3,客户机不需要执行任何操作; no_root_squash 只是正常工作。
  • 对于 NFSv4.1,您需要将 nfsv4 域设置为:slnfsv4.com 并启动 rpcidmapd,或者您的操作系统使用的类似服务。

示例

  1. 从主机上,将域名设置为 /etc/idmapd.conf

    #vi /etc/idmapd.conf
    [General]
    #Verbosity = 0
    #The domain value 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

  3. 启动 rpcidmapd

    systemctl start rpcidmapd
    systemctl enable rpcidmapd
    

卸装文件系统

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

umount /dev/sdb
umount /mnt