麒麟OS中文件权限777仍提示“没有权限”,是因为父目录缺少写权限——WPS等软件需在父目录创建临时锁文件,若父目录不可写则强制只读。需检查并修正父目录写权限,方法包括:chmod u+w .、加组或递归修复路径。

麒麟OS中即使将目标文件权限设为777,打开或保存时仍提示“没有权限”,大概率是父目录缺少写权限——WPS、LibreOffice等软件必须在父目录中创建临时锁文件(.~lock.xxx#),若父目录不可写,就会强制启用只读模式,且该限制优先级高于文件自身权限。
检查父目录是否具备写权限
打开终端,进入目标文件所在目录:cd /path/to/your/file(将/path/to/your/file替换为实际路径)。
执行ls -ld .(注意末尾是英文句号),查看当前目录(即父目录)的权限与归属。
若输出中权限位末三位为r-x(例如drwxr-xr-x),说明其他用户或所属组无写权;若第三列所有者不是你当前用户,且你未被加入第四列所示的所属组,【即使执行chmod 777也无法绕过此限制】。
验证当前用户是否能向父目录写入
运行id -u -n确认当前用户名,再比对ls -ld .输出的第三列(所有者)和第四列(所属组)。
若所有者不匹配,且你不在所属组中,直接尝试写入测试:touch test_write_check && rm test_write_check。
若提示Permission denied,证实父目录确实拒绝写入——此时改文件权限毫无意义,必须先解决父目录的访问控制问题。
修正父目录权限的三种方法
方法一:给当前用户添加父目录写权限(推荐)
执行sudo chmod u+w .(注意末尾是英文句号),仅赋予所有者写权,不影响组和其他用户权限。
方法二:将当前用户加入父目录所属组
先查所属组名:ls -ld . | awk '{print $4}';再执行sudo usermod -aG 组名 $USER;最后运行newgrp 组名立即生效,无需登出。
方法三:递归修复整个路径的父级写权(适用于嵌套深、多层只读)
第一步:返回根路径,逐级检查:cd / && ls -ld $(dirname /path/to/your/file | sed 's|/[^/]*$||g')
第二步:对每一级缺失写权的父目录重复执行sudo chmod u+w 目录名
第三步:回到原目录,再次运行touch .test_ok确认可写。
















