需先禁用kysec拦截再调整权限:执行sudo setstatus -f kidoff并验证kid protect已off,再用ls -ld确认归属,最后通过图形属性、chmod、find递归或setfacl acl精准设置访问控制。

您需要在麒麟操作系统中调整某个文件夹的访问控制能力,比如让开发组成员能编辑项目代码、禁止访客进入共享资料目录,或确保财务报表仅限指定人员读取。直接右键属性有时无效,终端命令也可能提示“权限不足”,这通常是因为KYSEC安全模块拦截或归属关系不匹配导致。
先确认当前权限与所有者
打开终端,执行 ls -ld /path/to/folder 查看目录权限和归属。输出类似 drwxr-xr-x 3 root root 4096 Jun 10 14:22 /home/user/data——开头十位字符是权限位,第三列是所有者,第四列是所属组。
若所有者不是你当前用户(用 id -u -n 确认),后续 chmod 即使加 sudo 也可能被 KYSEC 拦截。
禁用KYSEC拦截(关键前置步骤)
麒麟V10 2403及更新版本默认启用KYSEC内核级执行控制,它会拦截 chmod、chown 等系统调用,哪怕你是root用户也会报“权限不足”。
执行 sudo setstatus -f kidoff 将 kysec_kid 参数设为 0。
【执行后必须运行 getstatus 验证 kid protect 已显示 off,否则后续所有操作无效】
若提示 command not found,说明系统未安装 KYSEC 管理工具,需联系管理员或使用软模式替代:sudo setstatus softmode -p。
图形界面右键属性修改(免命令行)
适合不熟悉终端操作的用户,或临时快速调整。
在文件管理器中找到目标文件夹,右键 → 选择“属性” → 切换到“权限”选项卡。
在“访问权限”区域,分别设置“所有者”“所属组”“其他用户”的读、写、执行状态——勾选即开启,取消即关闭。
勾选下方“应用到子文件夹和文件”复选框,确保新创建的文件自动继承此权限规则。
点击“确定”保存,系统可能弹出密码验证窗口,输入当前用户开机密码即可生效。
用chmod数字模式快速设基础权限
该方法适合明确知道权限需求的场景,例如网站根目录必须所有者可读写执行、组和其他用户仅能读取和进入。
运行 sudo chmod 750 /path/to/folder,使所有者拥有全部权限,所属组可读可执行,其他用户完全无权访问。
若该文件夹需被同组成员编辑,改用 sudo chmod 775 /path/to/folder,此时所属组获得写权限,但其他用户仍不可写。
【注意:chmod 777 会开放全部权限,任何用户都能修改删除内容,生产环境严禁使用】
递归修改文件夹及其全部内容权限
第一步:先给所有子目录加执行权限(否则无法进入)sudo find /path/to/folder -type d -exec chmod 755 {} \;
第二步:再给所有普通文件设只读写权限sudo find /path/to/folder -type f -exec chmod 644 {} \;
第三步:若含 Shell 脚本,单独赋执行权sudo find /path/to/folder -name "*.sh" -exec chmod 755 {} \;
这三步组合能精准区分目录与文件权限,避免 chmod -R 导致普通文件被错误赋予执行位,消除安全隐患。
用ACL为特定用户单独授权
当标准三元权限无法满足需求时,比如要让张三有读写权、李四只能读、王五完全禁止访问,就必须启用 ACL 机制。
方法一:为张三添加读写权限sudo setfacl -m u:zhangsan:rw- /path/to/folder
方法二:为李四仅设读权限sudo setfacl -m u:lisix:r-- /path/to/folder
方法三:彻底禁止王五访问sudo setfacl -m u:wangwu:--- /path/to/folder
最后执行 getfacl /path/to/folder 核对输出,确认各用户条目及其权限符号准确无误。











