在 CentOS 中安装文件共享
在 CentOS 的 Linux® 计算实例上挂载 NFS 文件共享,可选启用传输过程中的IPsec加密(需要 dp2 配置文件及安全组访问模式)。
准备工作
-
确认服务器所在的 VPC 存在共享的挂载目标。 如果需要新的安装目标,请遵循 创建文件共享和安装目标 中的指示信息。
-
从安装目标获取文件共享的安装路径。 可从 控制台 的文件共享详细信息页面、CLI、API 或 Terraform 获取安装路径信息。
-
如果要在传输过程中使用加密,则需要从元数据服务中获取 IPsec 证书。 确保为安装目标启用传输中的加密。 此外,使用安全连接安装文件共享。 此功能仅可用于具有
dp2概要文件和安全组访问方式的文件共享。 有关更多信息,请参阅 Encryption in Transit-Securing mount connections between file share and host。安装并运行 mount helper 实用程序,以通过传输中的加密或不使用加密连接来安装文件共享。
File Storage for VPC 服务需要 NFS v4.1 或更高版本。
在 CentOS 上安装文件共享
通过执行以下步骤在 CentOS 主机上安装文件共享。 这些示例基于 CentOS 8。 这些步骤类似于 在 Red Hat Enterprise Linux® 上描述的步骤。
SSH 到要安装文件共享的 Compute 实例,然后继续执行以下步骤:
-
安装必需的工具。
dnf install nfs-utils -
在您的实例中创建一个目录。
mkdir /mnt/test -
挂载远程文件共享。
mount -t nfs4 -o <options> <host:/mount_target> /mnt请参阅以下示例。
mount -t nfs4 -o sec=sys 10.240.64.11:/384f711c_0684_4643_b1c3_dc7acb36d04a /mnt/test -
使用磁盘文件系统命令验证安装是否成功。
$ 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 -
转至安装点以创建测试文件并列出所有文件以验证共享是否已安装为读/写。
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这些文件由 root 创建,所有者为
nobody:nobody。 要正确显示所有权,请使用正确的域设置更新idmapd.conf。 如需了解更多信息,请参阅 《如何在 NFS 上实现no_root_squash》。 -
在启动时挂载远程文件共享。 要完成设置,您必须编辑文件系统表(
/etc/fstab),并将远程文件共享添加到启动时自动挂载的条目列表中。 在fstab中创建条目之前,请执行以下步骤将安装路径主机名添加到/etc/hosts。-
获取安装路径的
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命令时迂到“找不到命令”错误,请使用dnf install bind-utils进行安装。 -
编辑
/etc/hosts并向主机名条目添加 IP。<IP_Address> hostname.comhostname.com请参阅以下示例。
198.51.100.0 fsf-dal2433a-dz.adn.networklayer.com -
编辑文件系统表
/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
-
-
验证配置文件是否没有任何错误。
mount -fav如果该命令执行完毕且未出现错误,则说明您的设置已完成。
对于 NFS 4.1,请在挂载命令中添加
sec=sys,以避免文件所有权问题。 使用_netdev以等待安装存储器,直到启动所有网络组件为止。
如何对 NFS 实施 no_root_squash(可选)
默认情况下,NFS 会将所有以root权限创建的文件的所有权降级为 nobody 用户。 此安全功能部件会阻止共享特权,除非请求了这些特权。
通过配置 no_root_squash,root 客户机可以保留远程 NFS 文件共享上的 root 用户许可权。
对于 NFSv4.1,将 nfsv4 域设置为:slnfsv4.com,并启动 rpcidmapd 或您操作系统中使用的类似服务。 请参阅以下示例。
-
在主机上,通过
/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 -
运行
nfsidmap -c。
卸装文件系统
要卸装主机上目前已安装的任何文件系统,请运行 umount 命令并输入磁盘名或安装点名称。
umount /dev/sdb
umount /mnt