You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Azure Ubuntu虚拟机修改文件夹所有权/权限后无效果,SCP上传提示Permission denied

Azure Ubuntu虚拟机修改文件夹所有权/权限后无效果,SCP上传提示Permission denied

兄弟,我之前在Azure上折腾Ubuntu VM的时候也碰到过类似的权限问题,给你几个排查方向,一步步来:

1. 先确认路径有没有写错

别笑,有时候忙起来手滑打错路径太正常了!你再核对一下/folder1/folder2是不是真的存在,执行ls -d /folder1/folder2看看能不能正确列出这个目录,避免白忙活。

2. 父目录的权限也很关键

你只给了/folder1/folder2权限,但user1得能先进入/folder1才能访问子目录啊!执行ls -ld /folder1看看权限,确保user1对/folder1至少有x(执行)权限——这个权限是让用户能“进入”目录的基础。如果父目录权限不够,哪怕子目录权限全开也没用。

3. 别用ls -l看ACL权限,用getfacl!

ls -l只能显示文件/目录的基础权限(所有者、组、其他),你用setfacl加的是扩展ACL权限,得用getfacl /folder1/folder2才能看到有没有生效。执行这个命令看看输出里有没有user:user1:rwx的条目,要是有的话说明ACL已经加上了。

4. 检查chown命令是否完整

你执行的是sudo chown user1 /folder1/folder2,这个只改了目录的所有者,没改所属组。有时候系统里user1的组不是同名组,可能会有影响?可以试试sudo chown user1:user1 /folder1/folder2把所有者和组都改成user1,再看ls -l的输出是不是变了。

5. 排查是不是挂载的存储导致权限被覆盖

如果/folder1/folder2是挂载的Azure存储(比如File Share),挂载的时候可能加了uid/gid或者umask选项,会直接覆盖你设置的权限。执行mount命令看看这个目录的挂载参数,要是有这类选项,得调整挂载配置(比如/etc/fstab)才行。

6. 最后试试手动测试权限

切换到user1用户(su - user1),然后试试在/folder1/folder2里创建一个文件(touch /folder1/folder2/test.txt),如果也提示权限拒绝,那说明问题确实在目录权限上;如果能创建,那可能是SCP的问题(比如本地用户的权限、网络端的配置)。

按这几步排查下来,应该能找到问题所在!

备注:内容来源于stack exchange,提问作者Mumfi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.23 07:33:04