当前位置: 首页 > article >正文

NetApp ONTAP NFS qtree间移动文件,提示Permission denied

问题

由以下可以看到,用户wanlin.wang在其拥有的两个文件夹(wanlin与wanlinwang)下均有权限创建与删除文件。

遇到的问题是,从一个文件夹将文件移动到另一个文件夹(从一个qtree移动到另一个qtree),提示Permission denied。

[wanlin.wang@icinfra-cn-172-16-0-115 project_01]$ pwd

/projects/project_01

[wanlin.wang@icinfra-cn-172-16-0-115 project_01]$ ll

total 8

drwxrwx--T 2 wanlin.wang root 4096 Sep  4 11:10 wanlin

drwxrwx--T 2 wanlin.wang root 4096 Sep  4 11:05 wanlinwang

[wanlin.wang@icinfra-cn-172-16-0-115 project_01]$ touch wanlin/test.txt

[wanlin.wang@icinfra-cn-172-16-0-115 project_01]$ touch wanlinwang/test.txt

[wanlin.wang@icinfra-cn-172-16-0-115 project_01]$ rm wanlin/test.txt

[wanlin.wang@icinfra-cn-172-16-0-115 project_01]$ rm wanlinwang/test.txt

[wanlin.wang@icinfra-cn-172-16-0-115 project_01]$

[wanlin.wang@icinfra-cn-172-16-0-115 project_01]$ touch wanlin/test.txt

[wanlin.wang@icinfra-cn-172-16-0-115 project_01]$ mv wanlin/test.txt wanlinwang/

mv: cannot move 'wanlin/test.txt' to 'wanlinwang/test.txt': Permission denied

资料

qtree简介

从10720-tr-4067.pdf(NFS in NetApp ONTAP Best practice and implementation guide)文档可知:在ONTAP,qtree可以认为独立的文件系统。

  • 当文件被从一个文件夹移动到同一个volume下的另一个文件夹,文件只是简单地被rename到新名字,不涉及数据的拷贝删除,速度很快。
  • 当文件被从一个qtree移动到另一个qtree时,文件需要被拷贝到新位置,因此速度要慢很多。

validate-qtree-export选项

  • Enabled:
    • Rename in same volume and qtree: SUCCESS
    • Rename in same volume, different qtrees: EACCESS
    • Rename between volumes where qtree IDs differ: EACCESS
    • Rename between volumes where qtree IDs match: XDEV
  • Disabled:
    • Rename in same volume and qtree: SUCCESS
    • Rename in same volume, different qtrees: SUCCESS
    • Rename between volumes where qtree IDs differ: XDEV
    • Rename between volumes where qtree IDs match: XDEV

解决

方法一(workaround):

icinfra-cn::*> vserver nfs show -vserver data_svm01 -fields validate-qtree-export

vserver    validate-qtree-export

---------- ---------------------

data_svm01 enabled

icinfra-cn::*> vserver nfs modify -vserver data_svm01 -validate-qtree-export disable

方法二:

由于参考资料可知,它是bug。因此将版本升级到Fixed版本可以解决。

在我的环境,我将9.14.1升级至9.14.1P7版本。

[wanlin.wang@icinfra-cn-172-16-0-115 project_01]$ touch wanlin/test.txt

[wanlin.wang@icinfra-cn-172-16-0-115 project_01]$ touch wanlinwang/test.txt

[wanlin.wang@icinfra-cn-172-16-0-115 project_01]$ rm wanlin/test.txt

[wanlin.wang@icinfra-cn-172-16-0-115 project_01]$ rm wanlinwang/test.txt

[wanlin.wang@icinfra-cn-172-16-0-115 project_01]$

[wanlin.wang@icinfra-cn-172-16-0-115 project_01]$ touch wanlin/test.txt

[wanlin.wang@icinfra-cn-172-16-0-115 project_01]$ mv wanlin/test.txt wanlinwang/

[wanlin.wang@icinfra-cn-172-16-0-115 project_01]$

验证

如图,不会提示Permission denied了。

参考资料

Permission denied while moving files between qtrees when NFS option '-validate-qtree-export' is enabled - NetApp Knowledge Base 这里介绍如何workaround这个问题。

NetApp Support Site 这里介绍它是一个bug,可以通过升级小版本解决。


http://www.kler.cn/a/296742.html

相关文章:

  • Ubuntu上安装libdc1394-22-dev出现无法定位安装包的解决办法
  • 【pgsql】pgpool-4.5.3 读写分离极简配置实现
  • 深度学习⑧Meta-Learning Introduction
  • CCF编程能力等级认证GESP—C++8级—20240907
  • C++中的管道和信号量详细教程及示例
  • Ilya-AI分享的他在OpenAI学习到的15个提示工程技巧
  • Mac电脑IDEA2024安装后打不开问题解决
  • perl的学习记录——仿真regression
  • springboot集成activemq,并配置多个mq
  • ※※Leetcode Hot 100刷题记录 -Day8(和为k的子数组)
  • Spring Boot项目中怎么构建多模块的应用
  • Day16_0.1基础学习MATLAB学习小技巧总结(16)——元胞数组
  • DDoS安全防护:多场景适用,满足不同行业需求
  • 误删重要文件?这3款数据恢复工具,一键找回无压力
  • 长文本分块的新策略——后期分块(Late Chunking),让RAG应用“又准又高效“
  • 数据结构(1):ArrayList和顺序表
  • 网络安全 day4 --- APP架构小程序H5+Vue语言Web封装原生开发Flutter
  • Java 字符串、数组、ArrayList之间的相互转换
  • 秒懂:进程相关的操作
  • MyBatis-MappedStatement什么时候生成?QueryWrapper如何做到动态生成了SQL?