本文介绍云服务器ECS如何通过接入点访问通用型NAS NFS文件系统。
前提条件
操作步骤
连接ECS实例。具体连接方式,请参见ECS远程连接方式概述。
重要下载客户端需要通过公网下载,连接ECS实例前,请确认ECS实例已绑定弹性公网IP或配置了公网IP。
安装NAS客户端。
Alibaba Cloud Linux
下载客户端。
wget https://aliyun-encryption.oss-cn-beijing.aliyuncs.com/aliyun-alinas-utils-1.3-0.20240914145556.91a304.al7.noarch.rpm
安装客户端。
sudo yum install aliyun-alinas-utils-*.rpm
检查NAS客户端安装结果。
which mount.alinas
如果回显包含如下类似信息,说明NAS客户端安装成功。
CentOS
下载客户端。
CentOS 7.x
wget https://aliyun-encryption.oss-cn-beijing.aliyuncs.com/aliyun-alinas-utils-1.1-8.el7.noarch.rpm
CentOS 8.x
wget https://aliyun-encryption.oss-cn-beijing.aliyuncs.com/aliyun-alinas-utils-1.1-8.el8.noarch.rpm
安装客户端。
sudo yum install aliyun-alinas-utils-*.rpm
检查NAS客户端安装结果。
which mount.alinas
如果回显包含如下类似信息,说明NAS客户端安装成功。
Red Hat Enterprise Linux
下载客户端。
Red Hat Enterprise Linux 7.x
wget https://aliyun-encryption.oss-cn-beijing.aliyuncs.com/aliyun-alinas-utils-1.1-8.el7.noarch.rpm
Red Hat Enterprise Linux 8.x
wget https://aliyun-encryption.oss-cn-beijing.aliyuncs.com/aliyun-alinas-utils-1.1-8.el8.noarch.rpm
安装客户端。
sudo yum --disablerepo=rhui-rhel-7-server-rhui-extras-debug-rpms install aliyun-alinas-utils-*.rpm
检查NAS客户端安装结果。
which mount.alinas
如果回显包含如下类似信息,说明NAS客户端安装成功。
Ubuntu和Debian
下载客户端。
wget https://aliyun-encryption.oss-cn-beijing.aliyuncs.com/aliyun-alinas-utils-1.1-8.deb
安装客户端。
sudo apt update sudo dpkg -i aliyun-alinas-utils-*.deb sudo apt-get install -f sudo dpkg -i aliyun-alinas-utils-*.deb
检查NAS客户端安装结果。
which mount.alinas
如果回显包含如下类似信息,说明NAS客户端安装成功。
挂载NFS文件系统。
未开启接入点RAM策略
NFSv3协议
sudo mount -t alinas -o tls,vers=3 <access-point>:/ /mnt
NFSv4.0协议
sudo mount -t alinas -o tls,vers=4.0 <access-point>:/ /mnt
重要参数说明如下表所示。
参数
说明
tls
启用数据传输加密。
重要使用接入点访问文件系统,必须启用数据传输加密。
<access-point>:/
表示<接入点域名>:<接入点相对路径>,请根据实际情况替换。
接入点域名:您可以在文件存储NAS控制台文件系统列表页面,单击目标文件系统后的管理,进入挂载使用页面,然后单击接入点页签获取挂载地址。更多信息,请参见查看接入点域名。例如,
ap-BLC2mN****.9e7de4b923-efr27.cn-zhangjiakou.nas.aliyuncs.com
。接入点相对路径:一般填写为
/
即可。说明例如,在创建接入点时,如果将接入点根目录设置为
/test
,则通过/
将直接挂载到NAS上的/test
目录,如果设置其他相对路径/path/to/dir
,则将对应挂载到NAS上的/test/path/to/dir
,且需要确保在此之前,/test/path/to/dir
在NAS上已存在。
/mnt
当前服务器上待挂载的本地路径。
Linux ECS实例的任意子目录(例如:/mnt),请您确保子目录在本地文件系统存在。
已开启接入点RAM策略
配置RAM信息。
创建
/etc/aliyun/alinas/.credentials
文件。touch /etc/aliyun/alinas/.credentials
执行
vi /etc/aliyun/alinas/.credentials
命令,打开/etc/aliyun/alinas/.credentials
文件并添加以下内容。RAM用户
[NASCredentials] accessKeyID = your_accesskey_id accessKeySecret = your_accesskey_secret
其中,
your_accesskey_id
和your_accesskey_secret
,请替换为您实际的AccessKey ID和AccessKey Secret且该RAM用户已被授权接入点客户端权限策略。如何获取AccessKey,请参见如何获取AccessKey?。RAM角色
[NASCredentials] accessKeyID = your_accesskey_id accessKeySecret = your_accesskey_secret securityToken = your_security_token
其中,
your_accesskey_id
、your_accesskey_secret
和your_security_token
,请替换为您实际的RAM扮演角色的临时身份凭证,且该RAM扮演角色已被授权(可选)配置接入点策略。您可以通过RAM扮演角色调用AssumeRole API,获取该RAM扮演角色的安全令牌(STS Token)、AccessKey ID和AccessKey Secret。
挂载NFS文件系统。
NFSv3协议
sudo mount -t alinas -o tls,vers=3,ram <access-point>:/ /mnt
NFSv4协议
sudo mount -t alinas -o tls,vers=4.0,ram <access-point>:/ /mnt
重要参数说明如下表所示。
参数
说明
tls
启用数据传输加密。
重要使用接入点访问文件系统,必须启用数据传输加密。
ram
使用配置的RAM信息挂载文件系统。RAM信息一般放置于
/etc/aliyun/alinas/.credentials
路径。如果您需要修改指定的路径,请将ram
参数修改为ram_config_file=指定路径
。<access-point>:/
表示<接入点域名>:<接入点相对路径> ,请根据实际情况替换。
接入点域名:您可以在文件存储NAS控制台文件系统列表页面,单击目标文件系统后的管理,进入挂载使用页面,然后单击接入点页签获取挂载地址。更多信息,请参见查看接入点域名。例如,
ap-BLC2mN****.9e7de4b923-efr27.cn-zhangjiakou.nas.aliyuncs.com
。接入点相对路径:一般填写为
/
即可。说明例如,在创建接入点时,如果将接入点根目录设置为
/test
,则通过/
将直接挂载到NAS上的/test
目录,如果设置其他相对路径/path/to/dir
,则将对应挂载到NAS上的/test/path/to/dir
,且需要确保在此之前,/test/path/to/dir
在NAS上已存在。
/mnt
当前服务器上待挂载的本地路径。
Linux ECS实例的任意子目录(例如:/mnt),请您确保子目录在本地文件系统存在。
验证挂载结果。
执行命令
mount -l
返回示例
如果返回信息包含如下类似信息,说明挂载成功。
挂载成功后,您还可以执行
df -h
命令,查看当前文件系统的容量信息。如果挂载失败,请进行错误排查。具体操作,请参见接入点挂载失败排查。
挂载成功后,您可以在Linux ECS上访问NAS文件系统,执行读取、写入、查看等操作。示例如下:
mkdir /mnt/dir1 mkdir /mnt/dir2 touch /mnt/file1 echo 'some file content' > /mnt/file2 ls /mnt
可选:配置开机时自动挂载。
为避免已挂载文件系统的ECS实例重启后,挂载信息丢失,您可以通过在Linux ECS实例中配置/etc/fstab文件,实现在ECS实例重启时NFS文件系统自动挂载。
打开/etc/fstab配置文件,添加挂载配置。
未开启接入点RAM策略,请执行以下命令。
access-point:/ /mnt alinas _netdev,tls,vers=3 0 0
已开启接入点RAM策略,请执行以下命令。
access-point:/ /mnt alinas _netdev,tls,vers=3,ram 0 0
示例中主要参数说明,请参见参数说明。其余参数说明如下。
参数
说明
_netdev
防止客户端在网络就绪之前开始挂载文件系统。
vers
文件系统协议版本。
vers=3:使用NFS v3协议挂载文件系统。
vers=4.0:使用NFS v4协议挂载文件系统。
0(ram后第一项)
非零值表示文件系统应由dump备份。对于NAS文件系统而言,此值默认为0。
0(ram后第二项)
该值表示fsck在启动时检查文件系统的顺序。对于NAS文件系统而言,此值默认为0,表示fsck不应在启动时运行。
执行
reboot
命令,重启ECS实例。说明在重启ECS实例前,请确认手动挂载成功,避免ECS实例重启失败。另外,如果自动挂载配置成功,在ECS实例重启后,可以通过
df -h
命令查看到挂载的NAS文件系统。
接入点挂载失败排查
挂载文件系统时,返回mount: unknown filesystem type 'alinas'
该如何处理?
重新安装客户端alinas-utils。具体操作,请参见安装NAS客户端。
挂载文件系统时,返回mount.nfs: an incorrect mount option was specified
该如何处理?
可能原因
挂载命令错误或NAS客户端版本过低。
解决方案
确认挂载命令参数名是否正确。详细信息,请参见挂载NFS文件系统。
执行以下命令,确认NAS客户端版本,如果版本小于1.1-8,请更新至最新版本的NAS客户端。
rpm -qa | grep alinas
挂载文件系统时,返回mount.nfs: Unknown error 521
该如何处理?
可能原因
接入点域名错误。
接入点权限组配置错误。
开启RAM策略后,未配置RAM策略或.credential配置文件中accessKeyID或accessKeySecret配置错误。
使用STS Token超期。
解决方案
检查挂载命令中填写的域名是否正确。
关于如何查看接入点域名,请参见查看接入点域名。
检查接入点权限组配置。
你可以在接入点列表的操作列,单击管理,进入接入点详情页面,查看接入点所属权限组。关于权限组的更多信息,请参见管理权限组。
如果接入点开启了RAM策略。
请确认挂载命令是否包含
ram
参数。挂载命令示例如下所示:NFSv3协议
sudo mount -t alinas -o tls,vers=3,ram <access-point>:/ /mnt
NFSv4.0协议
sudo mount -t alinas -o tls,vers=4.0,ram <access-point>:/ /mnt
确认RAM用户的AccessKey配置是否正确。
关于如何配置RAM信息,请参见配置RAM信息。
确认RAM用户是否被授权了接入点nas:ClientMount权限,以及接入点客户端权限策略内容是否正确。
关于接入点客户端权限策略的详细信息,请参见配置接入点客户端权限策略。
如果通过STS Token访问,确认Token是否超期。
后续操作
关于如何卸载文件系统的操作,请参见在Linux系统中卸载挂载目录。
关于如何设置目录配额的操作,请参见目录配额。
关于如何开启NFS ACL的操作,请参见NAS NFS ACL。
关于如何备份文件系统数据的操作,请参见通用型NAS备份。