讲师中心 微信公众号
AI工具推荐 视频效率加速

日志切割后权限变成root导致服务写不进去

老强姑娘_3733

老强姑娘_3733

发布时间:2026-09-10 12:26:27

|

939人浏览过

|

来源于php中文网

原创

logrotate的create指令必须配对服务运行身份,格式为create 640 user group,否则新日志权限不匹配导致无法写入;同时需配合postrotate重载服务句柄,并注意SELinux、systemd保护机制及配置加载顺序。

日志切割后权限变成root导致服务写不进去

logrotate 的 create 指令没配对服务运行身份

日志切割后权限是 root:root,但你的服务(比如 nginxmyapp)是以非 root 用户(如 www-datamyuser)运行的,新日志文件一创建就无法写入——这是最常见原因。logrotate 默认不创建新文件,也不改权限;一旦你加了 create 却只写了 644 或漏掉属主属组,就会继承默认行为或 fallback 到 root:root

  • create 必须带三个参数:create 640 myuser mygroup,顺序不能错:权限、属主、属组
  • 属主必须和进程实际运行用户一致(查法:ps -o user,comm -C nginxsystemctl show --property=User nginx.service
  • 若服务用 systemd 管理且未显式设 User=,默认以 root 运行,此时 create 640 root root 是安全的;但多数 Web 服务已明确降权,不能照搬
  • 权限值别硬套 644:640 表示属主可读写、属组可读、其他不可访问,既保安全又允运维组(如 adm)分析日志

服务没收到轮转通知,还在往旧文件句柄写

即使 create 配对了,如果服务没重载日志文件句柄,它会继续往已被重命名的旧文件(如 app.log.1)里追加——看起来“新日志空着”,其实是写偏了。这不是权限问题,而是信号没发到位。

  • 确认配置中是否含 postrotate + endscript 块,且里面调用了正确 reload 命令
  • 常见错误写法:/bin/kill -USR1 `cat /var/run/nginx.pid` ——但 Nginx 在 systemd 下推荐用 systemctl kill --signal=USR1 nginx 或直接 systemctl reload nginx
  • 避免在 postrotate 中用 service nginx reload:某些发行版该命令不触发真正的 reload,只是 restart
  • sharedscripts:多个日志路径共用同一份 postrotate 脚本时必需,否则每个路径都单独执行一遍,可能重复发信号

SELinux 或 systemd 的上下文覆盖了 logrotate 权限

尤其在 RHEL/CentOS/Fedora 上,即使 create 640 myuser mygroup 生效了,新日志文件也可能被 SELinux 自动打上错误类型(如 admin_home_t),导致服务因策略拒绝写入;systemd 服务若启用了 ProtectSystem=ReadOnlyPaths=,也会拦截写操作。

  • 检查上下文:ls -Z /var/log/myapp/app.log,正常应为 system_u:object_r:var_log_t:s0
  • 临时修复:sudo restorecon -v /var/log/myapp/app.log;长期方案是在 logrotate 配置末尾加 prerotate 执行 restorecon
  • 查 systemd 限制:systemctl show --property=ProtectSystem,ReadOnlyPaths myapp.service,若返回 strict 或含 /var/log,需调整 service 文件
  • 不要关 SELinux:用 ausearch -m avc -ts recent | audit2why 定位具体拒绝项,再用 audit2allow 生成策略

配置被其他文件覆盖或未生效

logrotate 加载顺序是:先读 /etc/logrotate.conf,再按字母序加载 /etc/logrotate.d/*。如果你的服务配置在 /etc/logrotate.d/myapp,但 /etc/logrotate.conf 里有全局 create,它会覆盖掉你本地的设置——而且不会报错。

  • 运行 logrotate -d /etc/logrotate.conf(debug 模式)看实际解析出的 create 值是什么
  • 在服务专属配置里显式写全 create,不要依赖全局配置
  • 确保文件名不带点或波浪线(如 myapp.conf~),logrotate 会跳过它们
  • 检查 cron 是否真在跑:systemctl status crongrep logrotate /var/log/syslog

真正卡住人的地方,往往不是 create 少写了哪个参数,而是服务身份、信号通知、安全模块、配置加载这四层之间存在隐性耦合——改完一行配置,得同步验证三处状态才敢说修好了。

热门AI工具

更多
AionClaw
AionClaw Hot

AionClaw是一款面向办公、创作和编程任务的AI桌面智能体。

蛙蛙写作

一款AI论文写作工具,主要用于超级AI智能写作助手,适合需要提升相关任务效率的用户。

WorkBuddy

一款AI办公效率工具,主要用于腾讯云推出的AI原生桌面智能体工作台,适合需要提升相关任务效率的用户。

DeepSeek

DeepSeek是一款面向对话、写作、编程和推理场景的AI大模型工具。

咔片AIPPT

一款在线AI演示文稿制作工具,可根据主题和内容需求辅助生成PPT结构与页面,提高演示材料制作效率。

Laper
Laper Hot

Laper是专为编剧、导演和制片人推出的 AI 原生剧本创作工具。

超级简历WonderCV

一款AI办公效率工具,主要用于免费求职简历模版下载制作,应届生职场人必备简历制作神器,适合需要提升相关任务效率的用户。

Loomy
Loomy Hot

一款AI工具,主要用于科大讯飞发布的桌面级 AI 助理,比 OpenClaw 更易用、更安全!,适合需要提升相关任务效率的用户。

豆包大模型

豆包大模型是一款由字节跳动推出的企业级大语言模型服务平台。

相关专题

更多
Vibeknow在线使用入口合集
Vibeknow在线使用入口合集

本专题汇总了Vibeknow在线创作视频的官方入口及网页版使用教程,涵盖PPT、PDF、Word等文档一键转讲解视频的核心操作,并整理了免费版水印规则与手机端浏览器访问指南,助你快速将知识内容视频化。

0

2026.09.21

NumPy随机数文件读写与dtype数据类型
NumPy随机数文件读写与dtype数据类型

本专题整理 NumPy 随机数、文件读写与 dtype 数据类型相关教程,覆盖 Generator/random、随机数种子、正态分布采样、npy/npz/CSV/TXT 保存读取、loadtxt/savetxt、memmap、大文件处理、astype 类型转换、结构化 dtype、整数溢出和精度丢失等场景。

0

2026.09.21

NumPy矩阵运算与线性代数计算
NumPy矩阵运算与线性代数计算

本专题整理 NumPy 矩阵运算与线性代数计算相关教程,覆盖矩阵乘法、dot 与 @ 运算符、逆矩阵、行列式、特征值与特征向量、SVD、线性方程组、欧氏距离、矩阵分解和大规模矩阵性能优化等内容,帮助读者掌握 np.linalg 与矩阵计算实战。

0

2026.09.21

NumPy广播机制数学运算与统计分析
NumPy广播机制数学运算与统计分析

本专题整理 NumPy 广播机制、数组数学运算与统计分析相关教程,覆盖广播规则、维度对齐、矩阵与数组加减除法、向量化计算、均值方差、分位数、中位数、直方图和 unique 频次统计等场景,帮助读者掌握 ndarray 高效计算与统计处理方法。

0

2026.09.21

NumPy数组创建索引切片与数据选择
NumPy数组创建索引切片与数据选择

本专题整理 NumPy 数组创建、索引、切片与数据选择相关教程,覆盖 np.array、zeros/ones、多维数组形状、基础切片、花式索引、布尔索引、条件筛选、视图与副本等常用场景,帮助读者系统掌握 ndarray 数据构造与高效提取方法。

0

2026.09.21

Aionclaw智能助手介绍
Aionclaw智能助手介绍

本专题汇总了AionClaw(AI龙虾助手)的功能介绍与在线使用入口。AionClaw是杭州趣猿人工智能有限公司推出的桌面级AI智能体,能直接在电脑上读写文件、运行脚本、操作浏览器,自动交付Word、PPT、Excel等成品。

20

2026.09.20

AionClaw AI智能体与电脑自动化任务执行功能使用教程
AionClaw AI智能体与电脑自动化任务执行功能使用教程

AionClaw专题整理AI智能体与电脑自动化相关功能使用教程,涵盖安装部署、AI任务执行、Skills技能、文件处理、浏览器控制、电脑操作、持久记忆、聊天工具连接以及办公、编程和内容创作等功能,帮助用户快速掌握AionClaw的实际使用方法。

0

2026.09.20

AI视频生成软件推荐
AI视频生成软件推荐

本专题汇总了当前主流的AI视频生成软件推荐与排行榜单,涵盖seko、AniShort、剧云、Lovart、LiblibAI及立刻mv等热门工具。同时整理了各软件在文生视频、图生视频、时长限制、画质表现及免费额度等方面的差异对比,助您快速选对适合创作需求的AI视频生成工具。

200

2026.09.16

ai生成视频的工具免费版合集
ai生成视频的工具免费版合集

本专题汇总了当前免费AI生成视频工具的排行榜与推荐清单,涵盖seko、讯飞智作、AniShort及剧云、Lovart等多模型集成平台。同时整理了各工具的免费额度、输出时长、水印政策及适用场景差异,助您快速选择合适工具开启AI视频创作。

100

2026.09.16

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
ubuntu官方总文档
ubuntu官方总文档

共0课时 | 0人学习

Linux网络安全之防火墙技术汇总
Linux网络安全之防火墙技术汇总

共31课时 | 4万人学习

Linux网络安全之防火墙技术汇总
Linux网络安全之防火墙技术汇总

共31课时 | 4万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn