Avamar — 由于“/var/log/lastlog”和稀疏文件处理行为,Linux 客户端备份的大小可能会具有误导性。

Summary: 由于“/var/log/lastlog”和稀疏文件处理行为,Avamar Linux 客户端备份的大小可能会具有误导性。

This article applies to This article does not apply to This article is not tied to any specific product. Not all product versions are identified in this article.

Symptoms

本文中描述的行为可能会影响 Avamar 备份大小报告。
因此,我们必须报告 Avamar 备份中保护的数据量。例如,服务提供商向终端用户开具客户端数量的发票。

包含 /var/log/lastlog 的 Linux 客户端备份的报告大小可能大于客户端可用的总磁盘空间。

例子:
Linux 客户端配置为仅备份包含 39 MB 数据的 /var/log 目录。
root@linuxclient:~/#: du -hs /var/log
39M /var/log

/var/log 目录和备份包含“lastlog”,  
root@linuxclient:/var/log/#: ls -ltrhs /var/log/lastlog
48K -rw-rw-r-- 1 root root 272G Apr 30 11:46 /var/log/lastlog

注:lastlog 占用磁盘上的 48 K 空间,而常规报告的大小为 272 GB。这是稀疏文件。备份完成后,avtar 声称已备份 272 GB 数据。
 
2015-04-30 12:08:09 avtar Info <5163>: Backup complete, wrapping-up session with Server
2015-04-30 12:08:10 avtar Info <5156>: Backup #494 timestamp
2015-04-30 12:21:58, 131 files, 16 directories, 272.0 GB (5 files, 6.830 KB, 0.00% new)
2015-04-30 12:08:10 avtar Info <7539>: Label "MOD-1430395268242", scheduled to expire after 06/29/15 (2015-06-29 12:01:07 UTC), none backup
2015-04-30 12:08:10 avtar Info <6083>: Backed-up 272.0 GB in 20.83 minutes: 783 GB/hour (377 files/hour)


所备份数据量的报告值 大于 Linux 文件系统的大小。
root@linuxclient:~/#: df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda2 7.9G 2.4G 5.1G 32% /
/dev/sda1 122M 13M 103M 12% /boot
none 3.0G 0 3.0G 0%
/dev/shm /dev/sda3 1.5G 125M 1.3G 9% /var


Cause

每当用户(人员或其他)登录到系统时,文件 /var/log/lastlog 都会发生更改。由于文章 Avamar 和稀疏文件中所述的稀疏文件处理限制,Avtar 必须处理整个文件。

Resolution

解决方法 1:从备份中排除 /var/log/lastlog。

如果用户必须备份最后一个日志以进行审核,请考虑创建计划的每日 crontab 以将 lastlog 的输出发送到输出文件,
例如,
lastlog > /var/log/lastlog_$(date +%d%m%Y).log

常规文件lastlog_<date> 将被备份,但原始稀疏的最后日志不会备份。


解决方法 2:减少用户 ID 范围并缩减“lastlog”。

考虑是否需要如此高的用户 ID。是否可能使用给定范围内的所有用户 ID?
如果较低用户 ID 的功能相同,则以下操作可能非常有用; 
  • 编辑 /etc/passwd 以确保用户 ID 的范围尽可能小。
  • 重命名 lastlog 文件,然后使用 touch lastlog 重新创建它。将所有权和权限设置为与原始文件相同。
  • 使用用户连接到系统,以更新新创建 的 lastlog 文件。
root@linuxclient:/var/log/#: ls -ltrhs | grep lastlog
36K -rw-r----- 1 root tty 272G Apr 28 09:44 lastlog.old
8.0K -rw-r----- 1 root tty 143K Apr 28 09:50 lastlog

Additional Information

注 1:
从性能的角度来看,大型稀疏文件需要大量时间进行备份。由于“lastlog”的性质,文件可能会被修改,并且必须每天进行完全处理。有关
稀疏文件的详细信息,请参阅 Avamar 和稀疏文件

注 2:
文件 /var/log/lastlog 是一个稀疏文件,其大小取决于 /etc/passwd 文件中存在的用户 ID 范围。

在上面提供的示例中,/etc/passwd 最初具有高达 502 的用户 ID。  

文件稀疏,但中等。报告的文件大小很小。
root@linuxclient:/var/log/#: ls -ltrhs /var/log/lastlog
16K -rw-rw-r-- 1 root root 143K Apr 30 11:26 /var/log/lastlog


添加具有较大 userID 的用户会导致 lastlog 的大小显著增加报告大小。如下所示,用户 ID 越高,lastlog 的稀疏(和报告的大小越大)。

添加具有高用户 ID 的用户。
root@linuxclient:/var/log/#: useradd sparsetest -u 999999 

已创建用户 稀疏
root@linuxclient:/var/log/#: tail -1 /etc/passwd sparsetest:x:999999:999999::/home/sparsetest:/bin/bash

上次日志文件的报告大小增加。
root@linuxclient:/var/log/#: ls -ltrhs /var/log/lastlog
32K -rw-rw-r-- 1 root root 279M Apr 30 11:34 /var/log/lastlog

添加具有更高用户 ID 的用户。
root@linuxclient:/var/log/#: useradd sparsetest2 -u 999999999

最后一个日志文件变得更加稀疏。
root@linuxclient:/var/log/#: ls -ltrhs /var/log/lastlog
48K -rw-rw-r-- 1 root root 272G Apr 30 11:46 /var/log/lastlog 

Affected Products

Avamar

Products

Avamar
Article Properties
Article Number: 000164572
Article Type: Solution
Last Modified: 10 Feb 2025
Version:  5
Find answers to your questions from other Dell users
Support Services
Check if your device is covered by Support Services.