首页/系统/信创系统运维速查/迁移后属主与权限对账
迁移适配65 条

迁移后属主与权限对账

迁移后「能读不能写」「服务起不来」多因属主权限变化:导出两端权限清单比对,按业务需要最小化修正并留记录。

信创系统运维速查系统更新于 2026-10-13

迁移后权限为什么会变

复制、打包解包、同步工具对权限的保留行为各不相同:有的默认重设属主,有的在目标端找不到同名用户时直接落成数字属主,还有的会因为运行账号不同而把属主改成执行者。迁移后出现的「能读不能写」「服务起不来」,多数都能追溯到这类差异。

对账而不是凭感觉修

有效做法是把两端权限清单导出后比对:权限位、属主属组、附加访问控制条目三类信息一起看。差异项逐条判断是迁移造成的还是业务本来就需要的,再按最小权限原则修正,并把改动写入变更记录,便于日后追溯。

基本信息

清单导出用文件状态格式输出权限、属主与路径
附加条目访问控制列表需单独导出与恢复
修正原则按业务需要最小化授权
记录要求改动范围与原因写入变更记录

典型使用场景

  • 迁移后应用报权限不足,无法写入数据目录
  • 服务启动失败,日志提示无法创建或写入文件
  • 共享目录权限在迁移后扩大,安全扫描提出整改
  • 对账发现部分文件属主变成数字标识
  • 交付验收时提供权限一致性比对结果

权限清单

权限清单
# 源端与目标端分别导出,再比对差异
find /data -exec stat -c '%A %U:%G %n' {} + | sort > /tmp/perm.src
find /data -exec stat -c '%A %U:%G %n' {} + | sort > /tmp/perm.dst
diff /tmp/perm.src /tmp/perm.dst | head -40
getfacl -R /data > /tmp/acl.bak 2>/dev/null   # 保存访问控制列表现状
ls -l /data | head                            # 抽样确认属主显示是否正常

按需修正

按需修正
chown -R app:app /data/app                    # 恢复应用目录属主
find /data/app -type d -exec chmod 750 {} \;
find /data/app -type f -exec chmod 640 {} \;
setfacl --restore=/tmp/acl.bak                # 需要时恢复访问控制列表
# 修正后跑一次业务功能验证,确认读写正常

差异与处置

差异现象原因处置
属主变成数字标识目标端无同名用户建立同名用户或重新映射属主
目录权限变小复制工具未保留权限按业务需要恢复权限位
附加条目丢失传统复制工具不处理列表从导出的清单恢复
属主被改成执行者以高权限账号执行同步改回业务账号并复核
权限被放宽为图省事统一设成可读写按最小权限重新收紧
不要用把所有文件和目录设成完全开放权限的方式解决权限问题:这既是安全基线的不符合项,也会掩盖真正的属主错配,后续更难定位。

易错点

  • 不同工具对权限与属主的保留行为不同,迁移前后不比对清单就会留下隐性差异
  • 应用报权限不足时先改配置再查属主,方向反了会引入新的配置问题
  • 为快速开通权限把目录设成所有人可读写,安全扫描与等保核查直接判为不符合
  • 只改文件权限不管附加访问控制条目,部分依赖条目授权的业务仍然失败

数据来源与参考

  • man 1 chmod
  • man 1 setfacl
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌