如何在Linux中使用log2ram在内存中编写日志文件

时间:2020-03-21 11:45:08  来源:igfitidea点击:

日志文件通常包含一组系统事件或者记录。
系统管理员可以分析和调查日志文件以了解Linux系统中的内容。
在排除系统时,日志文件将大大有用。
所有日志文件都会自动生成并在Linux中的本地磁盘下保存在公共目录中 - /var/log/log/log/log/log/log/log/log。
我们还可以更改这些文件的位置并将其直接保存在内存中。
这是Log2内存实用程序在帮助的地方。
本教程介绍如何在Linux操作系统中使用log2ram在内存中保存或者写入日志文件。

为什么要在内存中保存日志文件?

LOG2内存专门为覆盆子PI系统创建。
由于Raspberry PI设备使用Micro SD卡进行存储(操作系统,库和用户程序),因此我们不希望通过所有时间编写日志文件来锤击SD卡。
在这种情况下,我们可以简单地将日志文件位置移动到TMPFS(内存)并定期将它们与物理磁盘同步。
即使,它是为Raspberry PI设备开发的,我们可以在所有基于Debian的系统中使用Log2内存程序。

在Ubuntu Linux中安装log2ram

在Raspberry PI或者其他基于Deb的系统上添加Log2内存存储库,如Ubuntu使用命令:

$echo "deb http://packages.azlux.fr/debian/buster main" | sudo tee /etc/apt/sources.list.d/azlux.list

添加GPG密钥:

$wget -qO - https://azlux.fr/repo.gpg.key | sudo apt-key add 

更新源列表:

$sudo apt update

最后,使用命令安装log2ram:

$sudo apt install log2ram

我们还可以使用源手动安装log2ram。

使用命令下载最新的log2ram版本:

$curl -Lo log2ram.tar.gz https://github.com/azlux/log2ram/archive/master.tar.gz

提取下载的文件:

$tar xf log2ram.tar.gz

此命令将在一个名为"log2r-master"的文件夹中提取log2ram存档文件的内容。
CD进入此文件夹:

$cd log2ram-master

使安装脚本可执行文件:

$chmod +x install.sh

最后,使用命令安装log2ram:

$sudo ./install.sh

删除log2ram-master文件夹:

$cd ..
$rm -r log2ram-master

现在,重新启动系统以激活log2ram。

$sudo reboot

使用LOG2内存在Linux中保存或者写入内存中的日志文件

log2内存脚本在内存中创建A/VAR/LOG安装点。
因此,在/var/log文件夹中写入的所有日志文件实际上都不会在物理磁盘中写入。
相反,所有日志都直接写入内存,例如:TMPFS。
log2ram本身的日志文件将用/var/log/log2ram.log文件写入。

Cron作业(/etc/cron.daily/log2r)每天都会运行,以将TMPFS的内容与SD卡或者HDD和/或者SSD同步。
关闭系统时,脚本还将同步TMPFS的内容。
这样,Log2内存脚本有助于我们防止SD卡过度写入。

我们可以验证文件是否真正用TMPFS编写,使用如下所示的任何磁盘使用情况检查程序:

$sudo df -h

我们将看到如下所示的输出:

[...]
log2ram          40M  532K   40M   2% /var/log
[...]

我们还可以使用"mount"命令验证TMPFS(内存)中存在/var/log挂载点。

$sudo mount

示例输出:

[...]
log2ram on /var/log type tmpfs (rw,nosuid,nodev,noexec,relatime,size=40960k,mode=755)
[...]

配置log2r.

log2内存以默认值开箱即用。
但是,我们可以根据我们自定义其参数。
log2ram的默认配置文件可在/etc/log2ram.conf中获得。
如果我们在任何文本编辑程序上打开它,则我们将在下面列出的耦合参数。

  • size - 此参数定义要在内存中分配多少空间以存储日志文件。默认值为40米。
  • USE_RSYNC - 如果要使用rsync程序同步内存的内容,请刚刚将此参数值设置为TRUE。默认情况下,log2ram使用"cp"命令将tmpfs的内容复制到磁盘。
  • 邮件 - 此参数用于通知错误消息。如果内存上没有足够的位置,我们也可以禁用错误系统邮件。要禁用它,只需将其值设置为false。
  • ZL2R - 此参数在系统中启用ZRAM兼容性。默认情况下禁用它。要启用此选项,请选中此链接。

更新log2r.

要将log2ram更新为新可用版本,只需运行"apt更新"命令。

如果我们手动安装了它,请停止log2ram服务:

$sudo systemctl stop log2ram

然后再次启动安装,如上所示。

卸载log2r.

要删除log2ram程序,请运行:

$sudo apt purge --remove log2ram

如果手动安装,请运行:

$chmod +x /usr/local/bin/uninstall-log2ram.sh
$sudo /usr/local/bin/uninstall-log2ram.sh