挂载访常见问题 您所在的位置:网站首页 阿里云盘如何删除文件内容 挂载访常见问题

挂载访常见问题

2023-07-19 16:25| 来源: 网络整理| 查看: 265

如果您有任何反馈或疑问,请单击下方按钮联系NAS技术支持进行咨询。

NAS技术支持

通过控制台一键挂载文件系统

一键挂载功能支持哪些操作系统和文件系统协议?

经典网络或者已打通VPC的ECS实例怎么通过控制台挂载文件系统?

通过控制台挂载文件系统失败可能有哪些原因?

强制卸载NAS文件系统有哪些风险?

在控制台使用一键挂载功能时,挂载参数怎么填写?

通过控制台一键挂载文件系统时,为什么在ECS列表中查询不到刚刚创建的ECS实例?

使用一键挂载功能时,新的协议类型或者挂载参数为什么没生效?

通过控制台批量挂载文件系统

批量挂载功能支持哪些操作系统和文件系统协议?

批量挂载支持经典网络类型、跨VPC挂载、跨地域挂载吗?

批量挂载功能支持本地IDC挂载吗?

如何确认批量挂载或卸载命令的执行结果?

通过云助手控制台批量挂载文件系统后,如何解读ECS挂载信息?

我的业务场景需要变更默认挂载参数,应该怎么操作?

使用批量挂载功能,新的协议类型或者挂载参数为什么没生效?

通过云助手批量挂载、卸载、查询状态失败时,该怎么办?

Linux挂载NFS文件系统

如何解决子目录不存在报错?

如何解决ECS实例重命名报错?

如何修改同时发起的NFS请求数量?

如何在Linux系统中创建NAS子目录并完成挂载?

如何处理误删挂载点导致的Linux服务器异常?

如何避免NFS 4.0监听端口被误认为木马?

阿里云NAS是否支持通过NFS和SMB协议同时挂载一个文件系统?

如何避免多进程或多客户端并发写同一日志文件可能出现的异常?

为什么两台ECS实例在查询NAS文件系统中同一文件时,文件的属主不同?

为什么写入文件系统的中文字符在客户端显示为乱码?

使用Linux操作系统在NFS文件系统中执行ls命令时,为什么会返回523错误?

挂载NFS文件系统时,返回mount.nfs: No such device该如何处理?

如何解决服务器开机自启动挂载NFS文件系统失败?

挂载NFS文件系统时,返回mount: can't find /root/nas in /etc/fstab该如何处理?

如何解决在NFS文件系统中创建文件延迟问题?

如何解决向NFS文件系统中写入数据延迟问题?

Windows挂载SMB文件系统

如何检查并解决Windows挂载SMB文件系统的报错?

为什么Windows 2016以后的版本不支持挂载SMB文件系统?

为什么SMB文件系统挂载有时候连接不上?

为什么Administrator能看见挂载的SMB目录,其他用户看不到?

为什么Windows Server 2016 IIS无法加载SMB volume文件?

如何检查并解决IIS服务在阿里云NAS上的使用问题?

当文件系统无法结束进程时,如何清理客户端泄露的句柄?

Linux挂载SMB文件系统

如何解决Linux挂载SMB文件系统性能不佳?

为什么Linux无法挂载SMB文件系统?

为什么Linux挂载SMB文件系统迁移和复制文件时速度缓慢?

Linux访问SMB文件系统时,报Permission denied错误,该怎么解决?

如何变更SMB文件系统中文件名大小写?

为什么不能改变文件owner,文件和目录mode?

并发访问同一文件时,服务器端出现无响应35s现象,该如何处理?

为什么SMB文件系统挂载点无响应?

为什么无法创建符号链接文件?

拷贝大文件时报"cp: error writing '': Bad file descriptor",该如何处理?

当文件系统无法结束进程时,如何清理客户端泄露的句柄?

Windows挂载NFS文件系统

如何检查并解决Windows NFS soft挂载问题?

如何解决Windows挂载NFS文件系统的报错?

如何解决Windows客户端对NFS文件系统中的文件重命名时返回的invalid device错误?

为什么Windows挂载NFS文件系统创建和打开文件时速度缓慢?

Windows使用NFS文件系统是否支持文件锁功能?

noresvport挂载参数

为什么要使用noresvport参数挂载NAS?

如何检查并修改noresvport挂载参数问题?

什么情况会引发网络切换或者后端服务的HA倒换?

为什么需要重新挂载?还有没有其他的方案?

访问文件

如何排查ECS安全组配置?

如何排查NAS权限组规则?

极速型NAS自动生成的安全组策略能改吗 ?

为什么云安全产品会对极速型NAS安全组告警高危风险 ?

前缀为.nfs的文件是怎么产生的?如何删除?

访问NAS文件系统目录下的文件时,返回bind conn to session failed on NFSv4 server该如何解决?

容器挂载

为什么卸载旧NAS并重新挂载新NAS后,容器Pod仍将数据写入旧NAS?

NAS是否支持作为Docker服务的存储目录?

本地或非阿里云主机挂载

本地电脑或非阿里云主机如何挂载访问阿里云NAS?

云桌面挂载NAS

阿里云无影云桌面如何挂载NAS?

一键挂载功能支持哪些操作系统和文件系统协议?

目前仅支持Linux操作系统挂载NFS文件系统,Windows操作系统挂载SMB文件系统、Windows操作系统挂载NFS文件系统及Linux操作系统挂载SMB文件系统场景,请您登录ECS实例执行命令挂载。更多信息,请参见Windows系统挂载SMB文件系统、Windows系统挂载通用型NAS NFS文件系统和Linux系统挂载SMB文件系统。

经典网络或者已打通VPC的ECS实例怎么通过控制台挂载文件系统?

不支持。

必须在同一VPC专有网络中,才可以通过控制台一键挂载NAS文件系统。但您可以使用ECS云助手控制台执行挂载操作。具体操作,请参见多台ECS实例批量挂载同一NAS文件系统。

说明

已打通VPC的场景仅支持同地域内的VPC挂载文件系统,不支持跨地域VPC挂载文件系统。

通过控制台挂载文件系统失败可能有哪些原因?

请您排查以下挂载失败原因并尝试修复。

挂载失败分类

挂载失败可能原因

解决方案

ECS实例或云助手状态异常

ECS实例非运行中状态

在ECS控制台检查目标ECS实例状态并修复。

云助手客户端未安装

请您安装云助手客户端。具体操作,请参见Linux实例安装云助手Agent。

挂载命令运行超时或中断

NFS客户端安装太慢

等待一段时间,再次尝试挂载操作。

NFS客户端安装失败

NFS客户端软件源识别失败

请您登录ECS实例,手动安装NFS客户端。具体操作,请参见安装NFS客户端。

输入参数格式错误

挂载路径和NAS目录传入错误

请您检查挂载路径和NAS目录都必须是绝对路径,非必填参数使用默认值即可。

挂载路径不符合要求

挂载路径非空目录

请您更换挂载路径,然后再次尝试挂载。

挂载路径已挂载在其他挂载点上

挂载路径的父目录已挂载在其他挂载点上

挂载命令错误

挂载参数配置错误

建议您使用默认挂载配置再次尝试挂载操作。

其他挂载失败原因

请执行错误排查脚本定位具体问题。具体操作,请参见挂载失败的排查方法与解决方案。

强制卸载NAS文件系统有哪些风险?

强制卸载可能导致未落盘数据丢失并造成相关应用程序异常退出,建议您登录ECS实例,执行fuser -mv 命令查看除挂载外的应用程序进程,确认进程关闭后再次尝试卸载文件系统。

如果确定已经没有应用程序使用NAS文件系统,而NAS文件系统仍然无法正常卸载,您可以尝试强制卸载。强制卸载后,可能造成内核残留状态,您需要重启ECS实例进行清除,否则可能无法重新挂载同一个挂载点。

在控制台使用一键挂载功能时,挂载参数怎么填写?

控制台上的默认挂载参数会根据协议版本和NAS文件系统类型自动调整为最优配置组合,如果您没有特殊需求建议使用默认参数,修改默认挂载参数可能导致挂载失败。

如果您的业务场景需要修改默认参数,请联系NAS技术支持进行咨询。

通过控制台一键挂载文件系统时,为什么在ECS列表中查询不到刚刚创建的ECS实例?

请您手动刷新浏览器页面,然后再次执行挂载操作查看ECS实例项。

使用一键挂载功能时,新的协议类型或者挂载参数为什么没生效?

如果指定挂载路径已经挂载至当前挂载点时,那么新指定的协议类型和挂载参数就会被忽略。请您先卸载目标挂载路径,然后使用新的协议类型和挂载参数重新执行挂载操作。

批量挂载功能支持哪些操作系统和文件系统协议?

目前仅支持Linux操作系统挂载NFS文件系统,Windows操作系统挂载SMB文件系统、Windows操作系统挂载NFS文件系统及Linux操作系统挂载SMB文件系统场景,请您登录ECS实例执行命令挂载。更多信息,请参见Windows系统挂载SMB文件系统、Windows系统挂载通用型NAS NFS文件系统和Linux系统挂载SMB文件系统。

批量挂载支持经典网络类型、跨VPC挂载、跨地域挂载吗?

支持经典网络类型和同地域内的跨VPC挂载。不支持跨地域挂载,即使VPC已打通也不支持跨地域挂载。

批量挂载功能支持本地IDC挂载吗?

不支持。您可以通过VPN网关设置或NAT网关设置实现本地IDC挂载文件系统。具体操作,请参见通过NAT网关实现本地数据中心访问阿里云NAS或通过VPN网关实现本地数据中心访问阿里云NAS。

如何确认批量挂载或卸载命令的执行结果?

您可以登录ECS管理控制台,选择运维与监控 > 发送命令/文件(云助手)。在云助手页面中的操作记录查看任务执行成功、执行失败或部分失败状态,单击目标任务操作列的查看,即可查询每台ECS实例的执行状态。

通过云助手控制台批量挂载文件系统后,如何解读ECS挂载信息?

您可以登录NAS控制台,进入目标文件系统详情页,在挂载使用页签通过查询功能查看ECS实例挂载状态。具体操作,请参见查询ECS实例状态。

我的业务场景需要变更默认挂载参数,应该怎么操作?

一般场景中,默认挂载参数无须填写,即参数mountparam留空。如果您需要使用特殊挂载参数,请在参数mountparam中填写完整的挂载参数,必须包含noresvport,且必须指定协议类型vers=3或者vers=4,minorversion=0。在执行挂载脚本时,当参数mountparam指定了自定义值,参数protocoltype的值会被脚本忽略。更多信息,请参见参数说明。

使用批量挂载功能,新的协议类型或者挂载参数为什么没生效?

如果指定挂载路径已经挂载至当前挂载点时,那么新指定的协议类型和挂载参数就会被忽略。请您先卸载目标挂载路径,然后使用新的协议类型和挂载参数重新执行挂载操作。

通过云助手批量挂载、卸载、查询状态失败时,该怎么办?

首先确认填写的挂载参数都符合条件。其次观察命令结果的错误码,根据错误提示进一步处理。更多信息,请参见错误信息。最后可以使用一键挂载功能,尝试先在一台ECS上面执行操作,如果失败再看相关报错提示,处理问题。

您也可以通过NAS控制台,先在一台ECS实例上挂载文件系统,如果挂载失败,请根据提示信息进一步处理。

如何解决子目录不存在报错?

报错信息:mount.nfs: access denied by server while mounting xxxx.nas.aliyuncs.com:/

挂载子目录时,挂载命令中指定的NAS子目录不存在导致报错。您可以先挂载NAS根目录,挂载成功后,创建需要的子目录,再重新挂载子目录。具体操作,请参见如何在Linux系统中创建NAS子目录并完成挂载?

如何解决ECS实例重命名报错?问题现象

NFSv4.0挂载时报错信息:mount.nfs: Operation not permitted或mount.nfs: an incorrect mount option was specified,但是使用NFSv3却可以挂载成功。

问题原因

对于某些内核版本,如果执行挂载操作的ECS实例名称与其他ECS实例名称相同,且该重名ECS实例已使用NFSv4.0挂载了同一个NFS挂载点,此时会产生冲突。

解决方案

在报错的ECS实例上执行以下命令。

echo 'install nfs /sbin/modprobe --ignore-install nfs nfs4_unique_id=`cat /sys/class/dmi/id/product_uuid`' >> /etc/modprobe.d/nfs.conf

在业务低峰期重启ECS实例。

您也可以手动卸载所有已挂载的NFS文件系统,并执行rmmod命令卸载NFSv4.0客户端和NFS内核模块。

重新挂载NFS文件系统。具体操作,请参见Linux系统挂载NFS文件系统。

如何修改同时发起的NFS请求数量?

NFS客户端对同时发起的NFS请求数量进行了控制,默认编译的内核中此参数值为2,严重影响性能,建议您将该参数值修改为128。

安装NFS客户端。具体操作,请参见安装NFS客户端。

执行以下命令,将同时发起的NFS请求数量修改为128。

echo "options sunrpc tcp_slot_table_entries=128" >> /etc/modprobe.d/sunrpc.confecho "options sunrpc tcp_max_slot_table_entries=128" >> /etc/modprobe.d/sunrpc.confsysctl-wsunrpc.tcp_slot_table_entries=128说明

您只需在首次安装NFS客户端后执行一次此操作(必须通过root用户操作),之后无需重复执行。

可选:重启云服务器ECS。

reboot

挂载文件系统。具体操作,请参见挂载NFS文件系统。

执行以下命令查看修改结果。

如果返回值为128,则说明修改成功。

cat /proc/sys/sunrpc/tcp_slot_table_entries如何在Linux系统中创建NAS子目录并完成挂载?

请确保您已挂载文件系统。具体操作,请参见Linux系统挂载NFS文件系统。

假设挂载时,将NAS的根目录挂载到ECS Linux的/mnt目录上。挂载成功后,/mnt相当于NAS的根目录,您可以在/mnt目录下创建NAS子目录。

在ECS Linux上,创建NAS子目录。

mkdir /mnt/subdir

创建用于挂载NAS的本地目录。

mkdir /tmp/mnt说明

服务器中的一个本地目录只能挂载一个文件系统。您可以创建多个本地目录用于挂载文件系统。

重新挂载文件系统。

sudo mount -t nfs -o vers=3,nolock,proto=tcp,rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2,file-system-id.region.nas.aliyuncs.com:/subdir /tmp/mnt

重要字段说明如下所示,请根据实际情况替换。

file-system-id.region.nas.aliyuncs.com:表示挂载点地址。您可以登录NAS控制台,在文件系统列表页面单击目标文件系统名称,进入详情页面单击挂载使用获取挂载点地址。

/subdir:表示NAS子目录。

/tmp/mnt:表示服务器的本地目录。

如何处理误删挂载点导致的Linux服务器异常?现象描述

假设在Linux操作系统中通过挂载点A挂载文件系统,在未卸载的情况下,通过NAS控制台上删除了挂载点A,导致Linux系统出现执行命令卡顿、无响应等异常情况。

解决方案

在服务器(如ECS Linux)中,按Ctrl+C,中断命令的执行。

执行mount命令,查看挂载信息。

通过挂载信息,获取挂载路径。如下图/mnt/data为当前挂载路径。查看挂载信息

执行umount -f /mnt/data命令强制卸载文件系统。

命令格式:umount -f

说明

如果执行umount -f 命令未解决问题,您也可以执行umount -l 命令。

卸载完成后,您可以重新创建挂载点,再次尝试挂载文件系统。

如何避免NFS 4.0监听端口被误认为木马?问题现象

通过NFSv4.0协议挂载NAS文件系统后,会有一个0.0.0.0的随机端口被监听,并且无法通过netstat定位该监听端口的进程。

由于被监听的端口不固定,并且无法定位监听进程,很容易被误判为文件传输受到木马攻击。NFSv4.0

问题原因

此随机端口是NFSv4.0客户端为了支持Callback而监听的。因为内核参数fs.nfs.nfs_callback_tcpport默认是0,所以NFSv4.0客户端会随机挑选一个端口进行监听,而随机端口本身并不会带来安全风险。

解决方案

在挂载文件系统之前,您可以通过配置参数fs.nfs.nfs_callback_tcpport到一个非零的确定值,以固定该端口。

sudo sysctl fs.nfs.nfs_callback_tcpport=

在以下示例中,将fs.nfs.nfs_callback_tcpport手动配置到端口45450。通过NFSv4.0协议挂载文件系统之后,netstat定位到被监听的端口即为手动配置的端口45450。45450

阿里云NAS是否支持通过NFS和SMB协议同时挂载一个文件系统?

不支持,不能使用NFS和SMB协议同时挂载同一个文件系统。一个文件系统只能通过一种协议挂载。

NFS协议文件系统请通过Linux操作系统挂载访问,SMB协议文件系统请通过Windows操作系统挂载访问。建议避免跨平台挂载NAS文件系统,以免导致一些操作兼容的问题(例如,支持的字符集、文件名的长度(Windows支持255宽字符,Linux支持255 UTF8字节)不一致等问题)。更多信息,请参见挂载文件系统目录说明和交叉挂载兼容性常见问题。

如何避免多进程或多客户端并发写同一日志文件可能出现的异常?问题现象

文件存储NAS为多客户端提供了统一名字空间的文件共享读写能力,但在多进程或多客户端并发写同一个文件的场景中(典型的例如并发写同一个日志文件),各进程分别维护了独立的文件描述符及写入位置等上下文信息,而NFS协议本身并没有提供Atomic Append语义的支持,因此可能会出现写覆盖、交叉、串行等异常现象。

解决方案

(推荐)不同进程或不同客户端写入同一文件系统的不同文件中,后续分析处理时再进行归并,这个方案能够很好地解决并发写入导致的问题,同时无需使用文件锁,不会对性能造成影响。

对于并发追加写同一个文件(如日志)的场景,可以使用文件锁+seek机制来保证写入的原子性和一致性。但是文件锁+seek是一个比较耗时的操作,可能会对性能产生显著的影响。下面将对这种方式进行一个简单的介绍,以供参考。

flock+seek使用方法

由于NFS协议本身没有提供对Atomic Append语义的支持,因此当并发写入同一文件末尾(如日志)时,很可能会出现相互覆盖的情况。在Linux中,通过使用flock+seek的方式,可以在NFS文件系统上做到模拟Atomic Append,对并发追加写入同一文件提供保护和支持。

使用方式如下:

调用fd=open(filename, O_WRONLY | O_APPEND | O_DIRECT) 以追加写的方式打开文件,并且指定 O_DIRECT(直写,不通过 Page Cache),获得文件描述符fd。

调用flock(fd, LOCK_EX|LOCK_NB)尝试获取文件锁,如果获取失败(如锁已被占用)则会返回错误,此时可以继续重试或进行错误处理。

文件锁获取成功后,调用lseek(fd, 0, SEEK_END)将fd当前的写入偏移定位到文件末尾。

执行正常的write操作,此时写入位置应该是文件的末尾,并且由于有文件锁的保护,不会出现并发写入相互覆盖的问题。

写操作执行完成后,调用flock(fd, LOCK_UN)释放文件锁。

为什么两台ECS实例在查询NAS文件系统中同一文件时,文件的属主不同?

在文件系统中,标识用户身份的不是用户名,而是UID或GID,您在ECS实例查询的属主用户名是由UID信息转换得到的,当同一UID在不同ECS实例中信息转换为不同的用户名,则会被认为是不同的属主。

例如,在ECS实例1中使用admin用户创建文件admin_on_machine1,在ECS实例2中使用admin用户创建文件admin_on_machine2。在ECS实例1中执行ll命令,查看已创建的文件,如下图所示:faq001在ECS实例2中执行ll命令,查看已创建的文件,如下图所示:faq002通过两台ECS实例查询可以看到,同一文件的属主用户名不一致。

然后,分别执行id命令,查询admin用户信息。如下图所示ECS实例1中admin用户的UID为505:faq04如下图所示ECS实例2中admin用户的UID为2915:faq005如下图所示执行stat admin_on_machine1 admin_on_machine2命令,查询到两个文件属于不同的UID:faq

为什么写入文件系统的中文字符在客户端显示为乱码?问题现象

在Linux或Windows客户端向NAS文件系统写入的中文字符(文件名、内容等)在另一个平台客户端显示为乱码。

问题原因

Windows客户端中文编解码默认使用GBK字符集,Linux客户端中文编解码默认使用UTF-8字符集,写入NAS文件系统的数据为平台对应字符集编码后的内容。在另一平台读取时需要进行解码,因为两个平台字符集并不兼容,故无法正常解码,导致显示内容为不可识别的乱码。

解决方案

建议您使用Windows客户端挂载SMB协议NAS文件系统,Linux客户端挂载NFS协议文件系统,从而规避平台不兼容问题。

使用Linux操作系统在NFS文件系统中执行ls命令时,为什么会返回523错误?问题现象

Linux客户端在NFS文件系统中执行ls命令时,返回如下报错信息。29

原因分析

对文件系统目录下执行ls时,该目录有并发的rename操作,则回返回523错误。

解决方案

稍等重试即可。如果还出现类似报错,请联系NAS技术支持进行咨询。

挂载NFS文件系统时,返回mount.nfs: No such device该如何处理?问题现象

在ECS实例中挂载NFS文件系统的NAS时,返回如下报错信息。

mount.nfs: No such deviceNo such device原因分析

可能是/etc/modprobe.d/sunrpc.conf文件中的options sunrpc tcp_slot_table_entries=128配置写成了options sunrpc tcp_slot_entries=128,导致sunrpc模块没有正常加载到内核。

解决方案

将/etc/modprobe.d/sunrpc.conf文件中的配置修改为options sunrpc tcp_slot_table_entries=128。

执行modprobe sunrpc命令,加载sunrpc模块。

重新挂载NFS文件系统。

如何解决服务器开机自启动挂载NFS文件系统失败?问题现象

已配置服务器重启后自动挂载NFS文件系统,但重启时,自动挂载失败。

原因分析

可能服务器的系统为CentOS 7.0。CentOS 7.0默认不处理fstab中的非local文件系统,remote-fs.target服务状态为disable,因此导致重启云服务器后,自动挂载NFS文件系统失败。

说明

配置项不会随着内核版本升级而变动,所以CenOS 7.0升级到7.9内核时,remote-fs.target服务依然是关闭的,需要您手动开启remote-fs.target服务。

解决方案

您可以任选以下一种方案实现服务器开机自启动挂载NFS文件系统,然后再打开/etc/fstab配置文件,添加挂载配置。如何添加挂载配置,请参见Linux系统挂载NFS文件系统。

方案一:彻底解决

依次执行以下命令,开启remote-fs.target服务,实现服务器开机自启动挂载NFS文件系统。

systemctlstartremote-fs.targetsystemctlenableremote-fs.target

方案二:临时解决

通过在系统的rc.local中执行以下命令,开启remote-fs.target服务,实现服务器开机自启动挂载NFS文件系统。

[!-f/etc/rc.local]&&echo'#!/bin/bash'>/etc/rc.local;echo"mount-a-tnfs">>/etc/rc.local;chmod+x/etc/rc.local挂载NFS文件系统时,返回mount: can't find /root/nas in /etc/fstab该如何处理?问题现象

在ECS实例中挂载NAS NFS文件系统时,返回如下报错信息。

mount: can't find /root/nas in /etc/fstab问题原因

可能是执行命令格式错误。

解决方案

使用正确的挂载命令挂载NAS NFS文件系统。关于Linux挂载NFS文件系统的挂载命令参数说明,请参见挂载命令参数说明。

通用型NAS,请执行以下命令。

使用NFS v3协议挂载文件系统:

sudo mount -t nfs -o vers=3,nolock,proto=tcp,rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2,noresvport file-system-id.region.nas.aliyuncs.com:/ /mnt

使用NFS v4协议挂载文件系统:

sudo mount -t nfs -o vers=4,minorversion=0,rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2,noresvport file-system-id.region.nas.aliyuncs.com:/ /mnt

极速型NAS,请执行以下命令。

sudo mount -t nfs -o vers=3,nolock,noacl,proto=tcp,rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2,noresvport file-system-id.region.extreme.nas.aliyuncs.com:/share /mnt

其中,file-system-id.region.nas.aliyuncs.com为NFS文件系统挂载点地址,请根据实际值替换。

如何解决在NFS文件系统中创建文件延迟问题?

问题现象:

ECS-1创建了文件abc,但是ECS-2需要过一段时间才能看到ECS-1创建的文件abc,有时会延迟1s,有时甚至会到1分钟,这是为什么?

问题原因:

这是Lookup Cache导致的,符合预期T时间。例如,ECS-2在ECS-1创建文件abc前进行了访问,导致ECS-2发生文件不存在,于是缓存了一条文件abc不存在的记录。在T时间内,由于FileAttr还没有过期,ECS-2再次访问时,仍会访问第一次缓存到文件abc不存在的记录。

解决方案:

如果要保证ECS-1创建文件后,ECS-2立即就能看到它,可以使用如下方案:

方案一:关闭ECS-2的Nagtive Lookup Cache,不缓存不存在的文件。该方案开销最小。

挂载时,添加lookupcache=positive(默认值lookupcache=all)字段,挂载命令如下所示:

sudo mount -t nfs -o vers=3,nolock,proto=tcp,rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2,noresvport,lookupcache=positive file-system-id.region.nas.aliyuncs.com:/ /mnt

方案二:关闭ECS-2的所有缓存。该方案会导致性能非常差,请根据业务实际情况选择合适的方案。

挂载时,添加actimeo=0字段,挂载命令如下所示:

sudo mount -t nfs -o vers=3,nolock,proto=tcp,rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2,noresvport,actimeo=0 file-system-id.region.nas.aliyuncs.com:/ /mnt如何解决向NFS文件系统中写入数据延迟问题?

问题现象:

ECS-1更新了文件abc,但是ECS-2立即去读它,仍然是旧的内容,这是为什么?

问题原因:

涉及如下两个原因。

第一个原因:ECS-1写了abc后,不会立即flush,会先进行PageCache,依赖应用层调用fsync或者close。

第二个原因:ECS-2存在文件Cache,可能不会立即去服务端取最新的内容。例如,ECS-2在ECS-1更新文件abc之时,就已经缓存了数据,当ECS-2再次去读时,仍然使用了缓存中的内容。

解决方案:

如果要保证ECS-1创建文件后,ECS-2立即就能看到它,可以使用如下方案:

方案一:CTO一致性,让ECS-1或ECS-2的读写符合CTO模式,则ECS-2一定能读到最新数据。具体来说,ECS-1更新文件后,一定要执行close或者执行fsync。ECS-2读之前,重新open,然后再去读。

方案二:关闭ECS-1和ECS-2的所有缓存。该方案会导致性能非常差,请根据业务实际情况选择合适的方案。

关闭ECS-1的缓存。挂载时,添加noac字段,保证所有写入立即落盘。挂载命令如下所示:

sudo mount -t nfs -o vers=3,nolock,proto=tcp,rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2,noresvport,noac file-system-id.region.nas.aliyuncs.com:/ /mnt说明

如果ECS-1的写操作完成后会调用fsync,或者使用sync写,可以将上面的noac替换为actimeo=0,性能会稍好一点。

noac等价于actimeo=0加sync(即,强制所有写入都为sync写)。

关闭ECS-2的缓存。挂载时,添加actimeo=0字段,忽略所有缓存。挂载命令如下所示:

sudo mount -t nfs -o vers=3,nolock,proto=tcp,rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2,noresvport,actimeo=0 file-system-id.region.nas.aliyuncs.com:/ /mnt如何检查并解决Windows挂载SMB文件系统的报错?系统错误53

错误描述

未找到网络路径。

原因分析

网络未连通。

TCP/IP NetBIOS Helper服务未启动。

注册表未正确配置LanmanWorkstation。

解决方案

执行ping 命令检查挂载点地址是否连通,延时是否正常。

如果网络连接正常,则执行步骤b。

如果网络连接不通,请您先通过以下方式排查网络异常。

确认挂载命令正确,无多余或缺少/ 、\、空格及myshare等内容。

正确挂载SMB文件系统的命令格式:

net use \\\myshare

示例:

net use z: \\xxxx.cn-hangzhou.nas.aliyuncs.com\myshare

在控制台确认文件系统类型为SMB。SMB

确认挂载点地址填写正确。

确认ECS实例与挂载点在同一个VPC中。

确认跨VPC或通过VPN连入的客户端,网络配置正确。

执行telnet 445命令检查SMB服务是否可用。

确认是否已启动TCP/IP NetBIOS Helper服务。具体操作,请参见Windows系统挂载SMB文件系统。

打开注册表,确认HKEY_LOCAL_MACHINE > System > CurrentControlSet > Control > NetworkProvider > OrderProviderOrder的值已包括LanmanWorkstation。如果没有,请添加。检查注册表

系统错误58

错误描述

指定的服务器无法运行请求的操作。

原因分析

客户端SMB协议版本不兼容。

解决方案

请确认Windows系统版本为Windows 2008 R2及以上版本(不包括Windows 2008)。

系统错误64

错误描述

指定的网络名不可用。

原因分析

NAS权限组未允许目标ECS访问。

NAS权限组未正确配置目标ECS的内网IP地址或VPC IP地址。

服务欠费。

选择经典网络进行挂载时,ECS和NAS不属于同一阿里云UID。

文件系统类型不是SMB。

解决方案

无权访问NAS文件系统资源,请从以下方面进行排查。

确认文件系统挂载点权限组已包含该机器的内网IP或VPC IP。

确认阿里云UID未欠费。

确认经典网络挂载时,ECS和NAS属于同一个阿里云UID。

确认文件系统类型为SMB。系统错误 64

系统错误67

错误描述

找不到网络名。

原因分析

关键的网络服务未启动。

解决方案

启动如下服务,具体操作,请参见Windows系统挂载SMB文件系统。

启用Workstation服务。

启用TCP/IP NetBIOS Helper服务。

系统错误85

错误描述

本地设备名已在使用中。

原因分析

目标盘符已被占用。

解决方案

请更换目标盘符重新挂载文件系统。

系统错误1231

错误描述

无法连接网络位置。

原因分析

系统未安装或未启用Microsoft网络客户端。

系统未安装或未启用Microsoft网络的文件和打印机共享。

解决方案

安装并启用Microsoft网络客户端或Microsoft网络的文件和打印机共享。

如果已安装但未启用Microsoft网络客户端或Microsoft网络的文件和打印机共享,请选中对应的选项。并通过以下方式安装并开启对应的选项。

系统错误1231

打开网络与共享中心,单击主机所连网络。

单击属性

无线网络连接属性对话框中,单击安装

安装Microsoft网络客户端。

选择网络功能类型对话框中,选择客户端,单击添加

选择Client for Microsoft Networks,单击确定

安装Microsoft网络的文件和打印机共享。

选择网络功能类型对话框中,选择服务,单击添加

选择Microsoft > File and Printer Sharing for Microsoft,单击确定

系统错误1272

错误描述

系统提示:不能访问此共享文件夹,因为您组织的安全策略阻止未经身份验证的来宾访问。这些策略可帮助保护您的电脑免受网络上不安全设备或恶意设备的威胁。

原因分析

Windows系统因安全策略阻挡了以来宾访问权限(Guest Auth)访问SMB文件系统的用户。

解决方案

若您的系统为Windows Server 2016之后版本(不包括Windows Server 2016),请修改以下注册表项允许来宾访问权限(Guest Auth)。

登录挂载文件系统的ECS服务器。

打开命令提示符,执行regedit命令,进入注册表编辑器页面。

在HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanWorkstation\Parameters路径下,确认AllowInsecureGuestAuth注册项值为1

如果AllowInsecureGuestAuth注册项的值为0,则单击鼠标右键修改AllowInsecureGuestAuth,将数值数据(V)中的值修为1。

如果未找到AllowInsecureGuestAuth注册项,则切换到PowerShell,执行以下命令,添加AllowInsecureGuestAuth注册项。

New-ItemProperty -Path Registry::HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanWorkstation\Parameters -Name AllowInsecureGuestAuth -PropertyType DWORD -Value 1

重新挂载SMB文件系统。

net use Z: \\file-system-id.region.nas.aliyuncs.com\myshare

如果继续返回1272错误,可能是RequireSecuritySignature注册项的值为1,请将该值修改为0,然后再重新挂载SMB文件系统。

RequireSecuritySignature注册项路径:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanWorkstation\Parameters。

更多信息,请参见Guest access in SMB2 disabled by default in Windows和Overview of Server Message Block signing。

为什么Windows 2016以后的版本不支持挂载SMB文件系统?问题现象

命令及错误提示:

C:\Users\Administrator>net use z: \\xxxxx-xxxx.xxxxx.nas.aliyuncs.com\myshare System error 1272 has occurred. You can't access this shared folder because your organization's security policies block unauthenticated guest access. These policies help protect your PC from unsafe or malicious devices on the network.问题原因

造成以上问题的原因是Windows Server的这个版本的安全特性默认不支持Guest用户访问远程共享目录。

解决方案

修改注册表:

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanWorkstation\Parameters] "AllowInsecureGuestAuth"=dword:0

修改为:

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanWorkstation\Parameters] "AllowInsecureGuestAuth"=dword:1

切换到PowerShell,执行以下命令:

New-ItemProperty -Path $registryPath -Name $name -Value $value -PropertyType DWORD -Force

详细解决方案,请参见Guest access in SMB2 disabled by default in Windows 10, Windows Server 2016 version 1709, and Windows Server 2019。

为什么SMB文件系统挂载有时候连接不上?问题现象

当您混用NFS和SMB文件系统,导致第一次通过net use命令挂载NFS文件系统连接失败后,挂载正确的SMB文件系统也会出现问题。

解决方案

检查确保挂载正确的文件系统后,暂时停止挂载,5分钟后再次挂载。如果还失败,请联系NAS技术支持进行咨询。

为什么Administrator能看见挂载的SMB目录,其他用户看不到?

该现象是由于Windows的用户隔离机制造成的。即一个登录用户的已挂载目录在另一个用户的登录界面中不会显示。

要实现多用户的共享,需要创建一个目录链接。比如C盘下创建一个myshare,命令如下:

mklink /D C:\myshare \\xxxxxxx-xxxx.cn-beijing.nas.aliyuncs.com\myshare\为什么Windows Server 2016 IIS无法加载SMB volume文件?

Windows Server 2016的IIS无法加载SMB文件系统的解决方案,请参见安装和配置AD域。

如何检查并解决IIS服务在阿里云NAS上的使用问题?

如果遇到Windows 2016挂载SMB失败,HTTP错误500.19,错误码0x8007003a等类似报错。解决方案,请参见IIS服务在阿里云NAS上的最佳实践。

如何解决Linux挂载SMB文件系统性能不佳?

如果SMB文件系统性能不佳,您可以从以下方面进行排查。

原因1:SMB单个文件系统的吞吐能力与存储量是相联系的。单文件系统的吞吐(读+写)上限与当前存储量呈线性关系。

解决方案:使用fio工具来测试SMB文件系统性能。具体操作,请参见NAS性能测试。

原因2:云服务器ECS(Linux)的单机网络带宽较小。

解决方案:使用多个云服务器ECS(Linux)达到文件系统的总体预期性能。

原因3:禁用了SMB文件系统的客户端缓存。

解决方案:在挂载SMB文件系统时,cache=none表示禁用缓存,默认或者cache=strict表示使用缓存;您可以通过sudo mount | grep cifs命令检查所用的选项是否正确。

原因4:没有设置合适的SMB客户端的I/O大小。

解决方案:根据业务需求调整rsize及wsize,默认值:1048576。

原因5:云服务器ECS(Linux)的CPU或内存的规格过低,或被其它业务占用过多。

解决方案:选择合适的云服务器ECS(Linux)规格、检查系统其它应用资源,确保系统满足CPU和内存要求。您可以通过top命令检查系统CPU、MEM使用情况。

原因6:挂载时使用了atime选项。

解决方案:如果您的业务不是对文件的访问时间(atime)极为敏感,请不要在挂载时使用atime选项。

原因7:遇到大量小文件频繁读、少量写但需要写时通知的WebServer场景。

解决方案:您可以在客户端配置该WebServer(如Apache)产品特定的缓存机制或者联系阿里云NAS团队开通WebServer场景加速功能。

为什么Linux无法挂载SMB文件系统?

Linux操作系统挂载SMB文件系统失败可能存在多种原因,请参照挂载失败的排查方法与解决方案排查Linux挂载SMB文件系统错误的原因及根据解决方案修复问题。具体操作,请参见Linux挂载SMB文件系统失败排查。

为什么Linux挂载SMB文件系统迁移和复制文件时速度缓慢?

如果已经排除了文件系统本身的性能问题,则可能原因是您没有使用并发式迁移或复制文件。您可以通过以下开源工具进行迁移或复制。

GNU Parallel

根据系统资源,选择合适的线程数。示例:find * -type | parallel --will-cite -j 10 cp {} /mnt/smb/ &

Fpart

Fpsync

multi

Linux访问SMB文件系统时,报Permission denied错误,该怎么解决?

原因:Linux管理员在挂载时使用了不正确的UID、GID、file_mode、dir_mode。

解决方案:检查是否正确设置了UID、GID、file_mode、dir_mode等挂载选项。更多信息,请参见Linux系统挂载SMB文件系统。

如何变更SMB文件系统中文件名大小写?

SMB文件系统对文件名大小写不敏感,和Windows系统保持一致。但在文件名大小写改名这个场景暂时没有支持。

您可以先从大写文件名改成一个其它名字的文件,再改成小写文件名,反之亦然。

为什么不能改变文件owner,文件和目录mode?

现在暂时不支持动态改变,只能在挂载时指定。更多信息,请参见Linux系统挂载SMB文件系统。

并发访问同一文件时,服务器端出现无响应35s现象,该如何处理?

原因:当前Linux SMB内核驱动有缺陷,会造成在使用vers=2.1或者3.0挂载时,在某些并发场景不能发出服务器端期待的SMB BreakAck协议包,导致服务器端无响应35s。

解决方案一:挂载文件系统时,使用vers=2.0协议。

解决方案二:执行以下操作。

在加载CIFS模块时,禁用oplocks,执行以下命令。

# modprobe cifs enable_oplocks=0

当CIFS模块加载完成时,禁用oplocks,执行以下命令。

# echo 0 > /sys/module/cifs/parameters/enable_oplocks

检查oplocks的状态,执行以下命令。

# cat /sys/module/cifs/parameters/enable_oplocks

输出结果中,Y代表启用(enabled)。N代表禁用(disabled)。

说明

为了使以上的修改生效,请卸载并重新挂载SMB文件系统。

如果您想使以上的修改永久生效,请创建文件/etc/modprobe.d/cifs.conf并添加命令行options cifs enable_oplocks=0。

为什么SMB文件系统挂载点无响应?

原因:在Linux内核为3.10.0-514之前的Linux分发版中,SMB内核驱动在并发场景有时会crash(内核stack如下所示),导致挂载点无法被访问。内核日志中有如下类似信息:

... [] cifs_oplock_break+0x1f1/0x270 [cifs] [] process_one_work+0x17a/0x440 [] rescuer_thread+0x294/0x3c0 ...

解决方案:

使用cache=none重新挂载(性能会受影响)。

升级云服务器ECS(Linux)的操作系统。

为什么无法创建符号链接文件?问题原因

Linux挂载SMB文件系统时没有选择mfsymlinks选项,或者使用了2.0协议版本挂载。

解决方案

Linux挂载SMB文件系统时,使用2.1或3.0协议版本并添加mfsymlinks选项。挂载命令示例如下,示例中的参数说明,请参见SMB(Linux)挂载命令参数说明。

sudo mount -t cifs //file-system-id.region.nas.aliyuncs.com/myshare /mnt -o vers=2.1,guest,uid=0,gid=0,dir_mode=0755,file_mode=0755,mfsymlinks,cache=strict,rsize=1048576,wsize=1048576拷贝大文件时报"cp: error writing '': Bad file descriptor",该如何处理?问题原因

网络或者后端有临时小故障发生,某些Linux分发版(如Suse)的SMB客户端功能较弱,不能很好的支持这种故障切换。

解决方案

建议选用NAS SMB推荐的Linux版本,NAS SMB支持的Linux操作系统版本如下表所示:

操作系统类型操作系统版本CentOSCentOS 7.6 64位:3.10.0-957.21.3.el7.x86_64及以上Alibaba Cloud LinuxAlibaba Cloud Linux 2.1903 64位:4.19.43-13.2.al7.x86_64及以上DebianDebian 9.10 64位:4.9.0-9-amd64及以上UbuntuUbuntu 18.04 64位:4.15.0-52-generic及以上OpenSuseOpenSuse 42.3 64位:4.4.90-28-default及以上SUSE LinuxEnterprise Server 12 SP2 64位:4.4.74-92.35-default及以上CoreOSCoreOS 2079.4.0 64位:4.19.43-coreos及以上当文件系统无法结束进程时,如何清理客户端泄露的句柄?

您可以使用以下工具断开SMB文件系统的所有连接,从而释放所有句柄。

Windows客户端

使用tcpview工具断开SMB文件系统的所有连接。具体操作,请参见tcpview。4

Linux客户端

使用killcx工具断开SMB文件系统的所有连接。具体操作,请参见killcx。

如何检查并解决Windows NFS soft挂载问题?

问题描述

在Windows系统上使用NFS文件系统时,默认使用soft模式进行挂载,而在以下场景中soft模式会对数据一致性造成影响,并且会造成应用异常退出。

数据一致性:使用soft模式挂载时,如果请求超时,则返回错误。对于应用,这个操作是未完成的;对于服务端,这个请求可能已经执行,所以会造成数据不一致。

应用异常退出:使用soft模式挂载时,如果请求超时,则返回超时错误。在某些语言中,会抛出异常,如果应用未处理,则会异常退出。

解决方案

在Windows系统中,使用hard模式挂载NFS文件系统,可以避免以上问题。

执行mount命令检查当前的挂载模式。

如果显示mount=soft,则按照以下步骤进行整改。

如果显示mount=hard,则无需整改。hard

停止当前正在使用此NFS文件系统的应用。

卸载NFS文件系统。

umount H:

请根据实际挂载盘符进行替换挂载命令中的盘符H:。

重新挂载NFS文件系统。

mount -o nolock -o mtype=hard -o timeout=60 \\xxxxxx.cn-hangzhou.nas.aliyuncs.com\! h:

请根据实际情况替换挂载点地址xxxxxx.cn-hangzhou.nas.aliyuncs.com和挂载盘符h:。

执行mount命令验证挂载结果。

如果回显信息包括mount=hard、locking=no以及timeout的参数值>=10,则表示挂载成功。挂载结果

如何解决Windows挂载NFS文件系统的报错?

问题描述:无效文件句柄

解决方案:请您按照正确步骤及参数配置重新挂载。具体操作,请参见Windows系统挂载通用型NAS NFS文件系统。

问题描述:网络错误-53

解决方案:请您按照正确步骤及参数配置重新挂载,具体操作,请参见Mounting NFS on a Windows Client。

问题描述:网络错误-1222MISTAKE

解决方案:请您安装NFS客户端之后,重新执行挂载操作。具体操作,请参见步骤一:安装NFS客户端。

如何解决Windows客户端对NFS文件系统中的文件重命名时返回的invalid device错误?

如果NFS文件系统是挂载在文件系统的子目录上,当执行文件重命名操作时,会返回的invalid device错误,请您将文件系统挂载在文件系统的根目录上。具体操作,请参见步骤二:挂载NFS文件系统。

为什么Windows挂载NFS文件系统创建和打开文件时速度缓慢?问题原因

Windows上使用NFS协议实例,会存在大小写敏感和大小写不敏感的兼容性问题,在目录里创建文件的性能随着目录规模增大而明显下降,原因是每次创建一个文件都需要对目录进行遍历,当目录规模达到10万级别时,目录遍历一次需要10秒钟以上。

解决方案

修改挂载参数,增加-o casesensitive=yes字段,避免目录遍历。挂载命令如下所示:

mount -o nolock -o mtype=hard -o timeout=60 -o casesensitive=yes \\file-system-id.region.nas.aliyuncs.com\! Z:

请根据实际情况替换盘符Z和挂载点地址file-system-id.region.nas.aliyuncs.com。

说明

启用大小写敏感选项和windows的原生语义是冲突的,使用上需要保证NFS目录中不出现因为大小写出现名字冲突(例如,同时出现a.txt和A.TXT),修改挂载参数可能会有不确定的影响,建议使用SMB NAS。

Windows使用NFS文件系统是否支持文件锁功能?

不支持。如果您需要在Windows中使用文件锁功能,建议您使用NAS SMB文件系统。

为什么要使用noresvport参数挂载NAS?

如果发生网络切换或者后端服务的HA倒换,小概率会造成NFS文件系统阻塞,若发生则可能需要几分钟时间连接才会自动恢复,极端情况下甚至需要重启ECS才能恢复。使用noresvport参数后,仅需要几秒即可自动完成恢复。

如何检查并修改noresvport挂载参数问题?说明

只适用于Linux系统的用户,Windows用户及在阿里云容器服务ACK中通过CSI或Flexvolume插件使用NAS的用户请忽略。

检查文件系统挂载是否使用noresvport挂载参数。

执行以下命令,在ECS(Linux)下载check_noresvport.py检查脚本。

wget -N https://nas-client-tools.oss-cn-hangzhou.aliyuncs.com/linux_client/check_noresvport.py -P /tmp/

执行检查脚本,以下命令是以python为示例。

python2.7 /tmp/check_noresvport.py

如果检查脚本输出:本台ECS无须处理noresvport问题,则无须处理,其他情况请执行以下步骤进行修复。

修复noresvport参数。

说明

建议在业务低峰进行修复。

请根据实际挂载场景选择以下修复方法:

如果使用ECS直接挂载NAS,请使用参数-r再次执行检查脚本。

python2.7 /tmp/check_noresvport.py -r

如果使用容器挂载NAS,请使用参数-c再次执行检查脚本。

python2.7 /tmp/check_noresvport.py -c

更新自动挂载配置。

如果配置过自动挂载,请更新自动挂载参数,加入noresvport挂载参数。更多信息,请参见Linux系统挂载NFS文件系统。

如果没有配置过自动挂载,跳过此步骤。

修复完成后,请再次执行步骤1,确认修复生效。如果仍有问题请联系NAS技术支持进行咨询。

什么情况会引发网络切换或者后端服务的HA倒换?

NAS服务是稳定的,网络切换或者后端服务的HA倒换都是罕见情况。后端服务升级会触发上述切换,但导致客户端阻塞的概率很低,并且在升级之前阿里云NAS团队会提前通知相关集群的用户,留出充足时间使用noresvport参数。其他可能引发切换的场景,还有负载均衡调整、服务端硬件故障等情况,有一定的不可预测性,所以即使服务端没有升级安排,也请尽快使用noresvport参数避免这样的风险。

为什么需要重新挂载?还有没有其他的方案?

需要重新挂载的原因是要把之前没有使用noresvport参数的TCP连接断开,然后使用noresvport参数挂载时,会建立新的TCP连接。为了把旧的TCP连接断开,就必须把NAS相关的业务都终止,然后执行umount卸载。

如果不希望重新挂载,可以考虑新建NAS挂载点,使用noresvport参数挂载到新的本地路径,然后把业务进程逐步迁移过去,最后废弃旧的挂载路径和挂载点。

如何排查ECS安全组配置?

ECS挂载访问NAS文件系统时,NAS NFS文件系统需要依赖2049、111、4001和4002端口,NAS SMB文件系统需要依赖445端口。如果安全组的出方向规则配置了拒绝访问这些端口,则无法挂载访问NAS文件系统。

您可以参照以下步骤进行排查和修改安全组规则。

登录ECS管理控制台。

在左侧导航栏,选择网络与安全 > 安全组

在页面上方,选择地域。

单击目标安全组规则ID,进入安全组规则详情页面。

单击出方向页签,查看出方向TCP协议下是否允许访问文件系统挂载点IP地址或网段以及端口(NFS:2049、111、4001、4002,SMB:445)。

说明

普通安全组默认出方向允许所有访问。此时,您无需修改。

企业安全组默认出方向禁止所有访问。此时,您需要在出方向中为文件系统挂载点IP添加TCP协议下相关端口的允许授权。

如果按照安全组规则匹配结果为出方向拒绝以上端口和文件系统挂载点IP地址或网段,请单击操作列的编辑,修改授权策略端口范围授权对象。更多有关安全组规则的信息,请参见安全组规则 。

如果出现无法解析的问题,您可以为安全组增加如下规则,支持DNS默认解析。

授权策略

优先级

协议类型

端口范围

授权对象

允许

1

自定义UDP

目的:53/53

目的:0.0.0.0/0

例如,为文件系统挂载点IP地址(192.168.12.151)配置出方向允许端口2049访问,配置示例如下。

普通安全组

授权策略

优先级

协议类型

端口范围

授权对象

允许

1

自定义TCP

目的:2049/2049

以下地址均涵盖挂载点IP地址(192.168.12.151),配置任意一条即可。

0.0.0.0/0

192.0.0.0/8

192.168.0.0/16

192.168.12.0/24

192.168.12.151/32

企业安全组

授权策略

优先级

协议类型

端口范围

授权对象

允许

1

自定义TCP

目的:2049/2049

以下地址均涵盖挂载点IP地址(192.168.12.151),配置任意一条即可。

0.0.0.0/0

192.0.0.0/8

192.168.0.0/16

192.168.12.0/24

192.168.12.151/32

如何排查NAS权限组规则?

在文件存储NAS中,权限组是一个白名单机制。ECS私网IP地址必须在挂载点配置的权限组白名单范围内才能正常访问挂载点。如果待访问文件系统的ECS IP地址或网段不在挂载点使用的权限组规则中,则无法挂载访问NAS文件系统。

说明

建议您将ECS的所有私网IP地址(包括辅助私网IP)配置到挂载点绑定的权限组中,避免网卡切换导致无法挂载访问NAS文件系统。

您可以参照以下步骤进行排查和修改权限组规则。

登录NAS控制台。

在左侧导航栏,选择文件系统>文件系统列表

在顶部菜单栏,选择地域。

单击目标文件系统前的展开图标,查看挂载点配置的权限组。

如果权限组为VPC默认权限组(全部允许),则无需进行修改。

默认权限组允许任何IP地址以最高权限(可读写且不限制Linux系统用户对文件系统的访问权限)访问文件系统,且不支持删除或修改。

如果是自定义权限组,单击权限组名称,进入该权限组规则列表页面,并查看自定义权限组规则。

如果该规则列表中不包含访问文件系统的ECS IP地址或网段,您可以单击编辑,将ECS IP地址包含到授权地址中。

例如,在自定义权限组规则中,当授权地址不包含访问文件系统的ECS IP地址(192.168.12.150)时,您可以将以下任意一个网段配置到授权地址中。

192.168.12.150/32

192.168.12.0/24

192.168.0.0/16

192.0.0.0/8

0.0.0.0/0

极速型NAS自动生成的安全组策略能改吗 ?

不支持修改和删除。当安全组策略描述为Createdbynas.Shouldnotdeleteit时,即为极速型NAS自动生成的安全组策略,该安全组仅作用于极速型NAS服务端的ENI网卡。如果您收到云安全产品会对极速型NAS安全组的高危风险告警信息,建议您对其进行白名单处理。

为什么云安全产品会对极速型NAS安全组告警高危风险 ?

云安全中心是基于模块对ECS安全组策略进行检测,ECS上面的是默认安全组,当检测到一些不必要的端口,所以产生告警,提示设置安全组最小粒度开放访问策略。当安全组策略描述为Createdbynas.Shouldnotdeleteit时,即为极速型NAS自动生成的安全组策略。该安全组策略仅作用于极速型NAS服务端的ENI网卡。如果该告警影响您的使用,建议您对其进行白名单处理。

前缀为.nfs的文件是怎么产生的?如何删除?

在应用程序已经打开某文件时,如果删除该文件,则会产生前缀为.nfs的临时文件。当访问进程关闭后,该临时文件将自动被删除。

访问NAS文件系统目录下的文件时,返回bind conn to session failed on NFSv4 server该如何解决?

问题原因

由于文件存储NAS不支持NFSv4.1协议,当您使用NFSv4.1协议挂载文件系统时产生该报错。

解决方案

请您根据业务场景选择使用NFSv3或NFSv4.0协议重新挂载文件系统。更多信息,请参见挂载文件系统目录说明。

如何处理多个ECS实例挂载同一NFS文件系统出现数据不同步的情况?问题现象

NAS在多挂载点的情况下,不同客户端进行实时同步时存在较长时间延迟的问题。

问题原因

操作系统kernel默认对文件和目录的属性进行维护,将其生成一份metadata缓存,以减少NFSPROC_GETATTR远程过程调用的需求。

解决方案

执行以下挂载命令,禁用文件和目录属性的缓存。

mount -t nfs4 -o noac file-system-id.region.nas.aliyuncs.com:/ /mnt

其中,file-system-id.region.nas.aliyuncs.com为文件系统挂载点地址,请根据实际值替换;/mnt :当前服务器上待挂载的本地路径,请根据实际情况替换路径。

为什么卸载旧NAS并重新挂载新NAS后,容器Pod仍将数据写入旧NAS?问题原因

将NAS挂载到ECS并通过本地存储卷(HostPath)映射的方式将NAS的挂载目录映射到容器时,容器中的挂载信息独立于ECS,ECS后续对NAS挂载目录进行卸载或者挂载新NAS时,已经启动的容器仍然会使用其启动时挂载的旧NAS。

解决方案

在ECS上重新挂载新NAS后,重启容器Pod。

NAS是否支持作为Docker服务的存储目录?

不支持。Docker存储需要用到overlay功能,目前,nas不支持overlay功能。

本地电脑或非阿里云主机如何挂载访问阿里云NAS?

操作环境

挂载说明

Linux操作系统

可通过以下两种方式挂载访问:

通过配置VPN网关实现本地数据访问阿里云NAS文件系统。具体操作,请参见通过VPN网关实现本地数据中心访问阿里云NAS。

通过配置NAT网关实现本地数据访问阿里云NAS文件系统。具体操作,请参见通过NAT网关实现本地数据中心访问阿里云NAS。

Windows操作系统

macOS客户端

需要先在macOS客户端挂载SMB文件系统,然后通过Kerberos协议访问SMB文件系统。具体操作,请参见macOS客户端通过VPN访问SMB文件系统。

阿里云无影云桌面如何挂载NAS?

阿里云无影云桌面支持使用文件存储NAS实现共享存储功能,每个工作区内可以创建一个NAS文件系统,用于满足云桌面之间共享文件的需求。

当同一工作区内的云桌面有共享文件的需求时,您可以参照以下方式挂载NAS:

无影云桌面未创建共享存储NAS

登录无影云桌面控制台创建共享存储NAS,系统将自动挂载NAS文件系统到对应工作区内的云桌面。创建成功后,您可以在共享存储NAS页面看到相应的共享存储NAS信息。当状态变更为已激活时,则表示已成功创建NAS文件系统。具体操作,请参见在Windows云电脑挂载NAS文件系统。

无影云桌面已创建共享存储NAS

在创建、启动、重启或者重建云桌面时,如果云桌面所属的工作区内有可用的NAS文件系统,则该NAS文件系统将被自动挂载。如果云桌面上的NAS文件系统被手动卸载,或者您想要将NAS文件系统挂载至其他路径,您可以手动挂载NAS文件系统。具体操作,请参见在Linux云电脑挂载NAS文件系统。



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有