在银河麒麟V10中批量加读权限需用chmod或find分类型处理,注意所有者前提、KYSEC拦截及符号模式安全性。

在银河麒麟V10终端中批量修改文件读取权限,常见于从U盘拷贝文档后双击打不开、脚本无法cat查看内容、或协作项目中多人共享目录下部分文件被设为只对所有者可读等场景,本质是多个文件的权限位中缺少r(读)标志,需用chmod统一补全。
给指定目录下所有普通文件加读权限
这一步适用于/home/user/docs这类纯文档目录,不包含子目录或可执行脚本。
执行sudo chmod -R u+r /home/user/docs,命令中的-R表示递归处理,u+r代表为所有者添加读权限,不会改动写、执行位,也不会影响组和其他用户权限。
注意:若目录内混有.sh或.bin文件,此操作会把它们也加上r位——这本身无害,但若后续误执行,可能触发KYSEC拦截。建议先用file /home/user/docs/*确认类型。
精准区分目录与文件设置读权限
目录必须有x位才能进入,文件通常只需r位即可查看内容。一刀切用-R容易出错,推荐用find分类型处理。
方法一:仅给所有普通文件加读权限(跳过目录)
sudo find /home/user/project -type f -exec chmod u+r {} \;
方法二:同时给目录加rx、文件加r(确保能进入并查看)
sudo find /home/user/project -type d -exec chmod u+rx {} \; → sudo find /home/user/project -type f -exec chmod u+r {} \;
【关键前提】必须确保当前用户是这些文件的所有者,否则u+r无效;若属主为root,请先执行sudo chown -R $USER:$USER /home/user/project。
用符号模式批量增删读权限
符号模式更安全,能避免覆盖已有合理权限配置,比如你只想让组用户也能读,又不想动其他权限。
第一步:为当前用户和所属组同时添加读权限
sudo chmod ug+r /home/user/shared/*.pdf
第二步:禁止其他用户读取敏感日志文件
sudo chmod o-r /home/user/shared/*.log
第三步:撤销所有用户对临时缓存文件的读权限(仅保留所有者)
sudo chmod go-r /home/user/cache/*
这三步可组合使用,例如ug+r,o-r一次写成:sudo chmod ug+r,o-r /home/user/shared/*.txt。
绕过KYSEC拦截确保chmod生效
如果执行上述任何chmod命令后仍提示“权限不足”,大概率是KYSEC在后台拦截了权限修改调用,此时chmod看似运行成功,实际权限未变。
运行getstatus | grep "kid protect",若输出kid protect: on,则执行sudo setstatus -f kidoff。
执行后再次运行getstatus确认kid protect已变为off,之后重试chmod命令即可生效。
这一步不可跳过,尤其在政务、金融类麒麟V10定制版系统中,KYSEC默认强制开启。

















