将系统日志消息发送到存储池而不是 /var/log/

将系统日志消息发送到存储池而不是 /var/log/

我已配置并运行一个集中式 syslog 服务器。它从远程设备收集日志并将它们存储在 中/var/log/<remotehostname>/<logfile>.log,这是理所当然的。问题是/var/log非常小,而且我最终将有多个系统发送日志,因此我需要将它们存储在更大的设备上。

在 中rsyslog.conf,我尝试指定一个不同的目录来发送日志,但重新启动 后rsyslog,该目录中没有显示任何日志文件。此目录位于 下安装的 1TB 存储设备 (sdb) 上/mnt/。然后我尝试将它们发送到与 (sda) 相同的设备上的目录/var/log,但那里也没有显示任何日志。这些目录的权限与 下创建的目录相同/var/log

TL;DR 需要将日志文件发送到存储设备,而不是/var/log

知道我可能遗漏了什么吗?谢谢。

答案1

将 /var/log 目录更改为指向较大设备上的文件夹的软符号链接。只需将当前日志目录移到一边,

mv /var/log /var/log.old
然后创建一个软符号链接
ln -s [/路径/到/文件夹/on/large/storage] /var/log
然后您的日志文件应该会重新创建。这是一种解决方法,因此您不必将日志指向不同的路径。

如果我需要从服务器 scp 一个文件并且我没有权限,但我有 root 权限,我会使用这个技巧。

我将在我的主目录中创建一个软符号链接,指向我想要 scp 的文件。这样我就可以使用

scp 服务器:~/file 。

相关内容