【问题标题】:Append all logs to /var/log将所有日志附加到 /var/log
【发布时间】:2010-03-15 10:46:46
【问题描述】:

应用场景:

我将(正常/永久)/var/log 挂载在加密分区 (/dev/LVG/log) 上。 /dev/LVG/log 在启动时无法访问,需要稍后通过 su 从 ssh 手动激活。

RAM 驱动器(使用 tmpfs)在初始化时(在 rc.local 中)挂载到 /var/log。

一旦 /dev/LVG/log 被激活,我需要一种将 tmpfs 中的所有内容附加到 /dev/LVG/log 的好方法,然后再将其挂载为 /var/log。

关于什么是这样做的好方法有什么建议吗?提前致谢!

【问题讨论】:

  • 对我来说这似乎不是一个好主意:看起来你会丢失许多日志。如果出现问题,您永远不会知道原因。
  • 编程相关的。应用程序必须与主机操作系统打交道,应用程序有设计准则,这两者往往是冲突的。
  • @Tim:谁说不是?
  • @giorgian:目前有两票可以结束这个问题,因为它们与 serverfault.com 无关/不属于编程相关。
  • @Tim:好的,谢谢。 @其他人:不要关闭这个问题。

标签: linux append logging


【解决方案1】:

您唯一能做的就是阻止,直到您以某种方式验证 /var/log 已安装在加密的 VG 上,或者如果您的应用程序必须在启动时启动,则将日志条目排队直到发生这种情况,这可能会有点昂贵。你不能对系统上的所有其他应用负责,我看不出有任何加密启动日志的理由。

再一次,如果您知道机器有空闲的堆,那么一旦某个事件表明可以写入磁盘就刷新日志队列似乎是明智的。只要您注意避免可能填满队列的事件泛滥,这并不比大多数 shell 保留的历史更昂贵。

这并没有考虑到可能的日志丢失,但可以稍微想象一下。

【讨论】:

    【解决方案2】:

    您可能会丢失日志记录。您可能想尝试将您的日志写入 /tmp 中的一个文件,该文件是 tmpfs,因此是在内存中。然后,您可以将内容附加到您的加密卷,然后在 tmp.xml 中删除该文件。当然,如果您的机器无法启动并再次出现故障,tmp 将被删除,因此您将失去找出原因的好方法。

    【讨论】:

      猜你喜欢
      • 2019-10-14
      • 2015-02-09
      • 2022-10-19
      • 1970-01-01
      • 2019-07-28
      • 1970-01-01
      • 1970-01-01
      • 2019-01-15
      • 1970-01-01
      相关资源
      最近更新 更多