为什么 crontab 不存储在用户主目录中?

为什么 crontab 不存储在用户主目录中?

我很想知道:为什么 crontab 存储在 /var 而不是用户的主目录中?隔离这些文件进行升级非常痛苦,但我怀疑有一个合乎逻辑的原因......

答案1

我能想到的几个原因:

  • 在企业环境中,您可以拥有数千个用户。如果是这样,cron 就必须每分钟扫描每个用户的目录以检查 crontab 文件(是否已创建、删除或修改)。
    通过将它们保存在一个位置,它就不必进行这种密集扫描。
  • 主目录可能并不总是可用。如果主目录是 autofs 挂载,则可能不会挂载它们。让 cron 每分钟检查一次将导致它们被挂载,并防止它们因不活动而被卸载。此外,如果主目录已加密并使用用户密码解密,则 cron 将无法访问主目录,除非用户已登录并解密/安装它。
  • 主目录可能在主机之间共享。如果主目录是网络共享,则同一主目录将出现在多个主机上。但您可能不希望 cron 作业在每台主机上运行,​​而只在其中一台主机上运行。

相关内容