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

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

Tento článok sa vzťahuje na Tento článok sa nevzťahuje na Tento článok nie je viazaný na žiadny konkrétny produkt. V tomto článku nie sú uvedené všetky verzie produktov.

Symptómy

本文中描述的行为可能会影响 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


Príčina

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

Riešenie

解决方法 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

Ďalšie informácie

注 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 

Dotknuté produkty

Avamar

Produkty

Avamar
Vlastnosti článku
Číslo článku: 000164572
Typ článku: Solution
Dátum poslednej úpravy: 10 feb 2025
Verzia:  5
Nájdite odpovede na svoje otázky od ostatných používateľov spoločnosti Dell
Služby podpory
Skontrolujte, či sa na vaše zariadenie vzťahujú služby podpory.