0

nixpkgs 中的 nagiossystemd.services.nagios.serviceConfig.Restart="always";使日志混乱journalctl -u nagios,应该是 Restart="no"; 反而!

MySQL修复

对于 MySQL,这有效:

systemd.services.mysql.serviceConfig = {
  Restart = "always";
  RestartSec="10s";
  StartLimitInterval="1min";
};

由于 MySQL 服务没有列出任何“Restart”、“RestartSec”或“StartLimitInterval”,我想。

尝试 nagios 修复

使用与之前 MySQL 相同的 nagios 机制,我尝试:

systemd.services.nagios.serviceConfig.Restart = "no";

给我一个:

error: The option `systemd.services.nagios.serviceConfigRestart' defined in `/etc/nixos/configuration.nix' does not exist.
(use ‘--show-trace’ to show detailed location information)

如果我将其更新为:

systemd.services.nagios.serviceConfig = lib.mkForce { Restart = "no"; };

结果是其中的值systemd.services.mysql.serviceConfig现在仅包含“重新启动”,但缺少重要的“执行开始”和其他服务定义:

journalctl -u nagios
nagios.service: Service lacks both ExecStart= and ExecStop= setting. Refusing.

最后使用这个:

systemd.services.nagios.serviceConfig = config.systemd.services.nagios.serviceConfig // { Restart = "no"; };

给我一个:

nixos-rebuild switch
error: infinite recursion encountered, at /nix/var/nix/profiles/per-user/root/channels/nixos/nixpkgs/lib/attrsets.nix:199:44
(use ‘--show-trace’ to show detailed location information)
4

2 回答 2

1

事实证明,这是 nixpkgs 中的一个错误,请参阅https://github.com/NixOS/nixpkgs/pull/41446

于 2018-06-09T10:25:15.757 回答
0

systemd.services.nagios.serviceConfig.Restart = "no";

  • 应该管用

错误:选项systemd.services.nagios.serviceConfigRestart' defined in/etc/nixos/configuration.nix' 不存在。(使用 '--show-trace' 显示详细的位置信息)

  • 建议您只是不小心省略了.inserviceConfig.Restart

如果它有任何用处,一些进一步的解释:

systemd.services.nagios.serviceConfig = lib.mkForce { 重启 = “否”; }; 结果是 systemd.services.mysql.serviceConfig 中的值现在只包含“Restart”,但缺少重要的“ExecStart”和其他服务定义:

journalctl -u nagios nagios.service:服务缺少 ExecStart= 和 ExecStop= 设置。拒绝。

  • 是因为你已经强制更换serviceConfig

最后使用这个:

systemd.services.nagios.serviceConfig = config.systemd.services.nagios.serviceConfig // { 重启 = "no"; }; 给我一个:

nixos-rebuild 开关错误:遇到无限递归,位于 /nix/var/nix/profiles/per-user/root/channels/nixos/nixpkgs/lib/attrsets.nix:199:44

  • 是因为您将 的值定义为serviceConfig的值serviceConfig,这是一个无限递归!
于 2018-06-08T11:33:33.793 回答