You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

SLURM主节点旧slurmctld.log压缩后无法自动生成新日志的排查咨询

解决Slurmctld日志文件无法自动重建的排查点
  • 检查日志轮转工具的配置
    系统自动压缩日志一般由logrotate完成,需确认Slurm对应的logrotate配置(通常在/etc/logrotate.d/slurm)是否配置正确:

    • 必须包含create指令,指定与现有日志一致的权限0600、属主slurm和属组slurm,确保轮转后能自动生成符合要求的新日志文件。
    • 要添加postrotate脚本段,执行信号通知slurmctld进程重新打开日志文件,避免进程持续持有已被删除的旧文件句柄。示例配置:
      /var/log/slurm/slurmctld.log {
          missingok
          notifempty
          compress
          delaycompress
          create 0600 slurm slurm
          postrotate
              kill -USR1 $(pidof slurmctld) || true
          endscript
      }
      
  • 确认Slurmctld进程的文件句柄状态
    用lsof -p $(pidof slurmctld)查看进程是否仍持有已被压缩删除的旧日志文件句柄(状态显示为(deleted))。如果存在这种情况,手动执行kill -USR1 $(pidof slurmctld)触发进程重新打开日志,同时确保这个操作能被日志轮转工具自动执行。

  • 核对日志路径与目录权限
    虽然配置中指定了SlurmctldLogFile=/var/log/slurm/slurmctld.log,但要确认:

    • 实际目录路径是否与配置一致(注意用户提供的目录是/var/logs/slurm,但配置里是/var/log/slurm,需核对是否存在路径拼写错误)。
    • /var/log/slurm目录的权限drwxr-xr-x slurm slurm确实允许slurm用户写入,避免因目录权限问题无法创建新文件。
  • 排查安全模块的限制
    如果系统启用了SELinux或AppArmor:

    • SELinux:用ausearch -m avc -ts recent查看是否有slurmctld创建日志文件的权限拒绝记录,若有则调整SELinux上下文:
      semanage fcontext -a -t var_log_t "/var/log/slurm(/.*)?"
      restorecon -Rv /var/log/slurm
      
    • AppArmor:检查Slurm对应的配置文件,确保允许进程在/var/log/slurm目录下创建文件。

内容的提问来源于stack exchange,提问作者Emma Athan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.19 16:14:58