适用于 Solaris 2.6 (SPARC 平台版) 的 Solaris Resource Manager 1.0 系统管理指南

保存和恢复限制数据库

因为限制数据库可能是一个稀疏文件,所以在复制该文件时应当谨慎。如果进行写入的是一个并不支持稀疏文件的实用程序,则该文件很有可能消耗大量的磁盘空间,原因在于文件的空白区域会读作连续的零,且写回时是作为真正的块,而不是空白区域。如果文件是通过诸如 tar(1)cpio(1)或者 cp(1)这样的实用程序进行复制、备份或者恢复的,则有可能发生此类情形。但诸如 ufsdump(1M)ufsrestore(1M)的程序可以保持空洞。

进行限制数据库备份和恢复,也可以借助 limreport(1SRM),生成文件的一个 ASCII 版本,然后借助 limadm(1MSRM),从所保存的 ASCII 版本,重新创建原来的文件。例如,命令:

limreport 'flag.real' - lname preserve > /var/tmp/savelnodes 

将创建 /var/tmp/savelnodes,用作口令映射中每个用户的 lnode 的 ASCII 代表。注意,这并不保存没有相对应的口令映射条目的 lnode。建议至多只为口令映射中的全部 UID 创建 lnode。

命令

# limadm set -f - < /var/tmp/savelnodes

将重新创其建数据以前得到过保存的 lnode。该命令不会删除未经保存的 lnode,所以这些技巧也可以用于保存和恢复所选的 lnode,而不是整个限制数据库。

"limreportlimadm 命令" 更加详细地描述 limreport(1SRM)limadm(1MSRM)的使用方法。用于让管理员熟悉用这些命令来保存和恢复 lnode 的方法,因为在对 lnode 结构的解释进行改变时有可能用到这些命令(其定义见于配置文件)。

注意,随着限制数据库在正常的系统启动过程中经常发生变化,建议在系统静止或者正处于单用户模式时进行备份操作。同理,对整个限制数据库进行恢复,只应在 Solaris Resource Manager 未在使用时进行,诸如系统正处于单用户模式时。