本章概述了在 Oracle Hierarchical Storage Manager and StorageTek QFS Software 和文件系统配置发生部分或整体丢失或损坏的情况下,恢复该配置的过程。如果服务器主机发生故障,则 Oracle HSM 软件和文件系统配置可能会丢失,而文件系统数据和元数据未受影响,但是在恢复配置信息之前无法访问。这种情况下,成功与否取决于您是否能够从任何保留的文件和目录中挽回信息,也取决于您的灾难准备工作的全面性:
如果您按照《Oracle Hierarchical Storage Manager and StorageTek QFS Software 安装和配置指南》中建议的过程执行操作,则可以采用以下步骤恢复 Oracle HSM 软件和文件系统配置。
如果要在服务器主机故障后恢复配置,请解决硬件问题,根据需要重新安装操作系统和软件。
如果根文件系统存在最新的备份副本,请恢复根文件系统并在此处停止。
否则,请以 root
用户身份登录文件系统服务器主机。
root@solaris:~#
挂载所有必需的文件系统。挂载存储备份 Oracle HSM 配置文件的文件系统以及存储数据文件的磁盘归档副本的所有文件系统。
在示例中,已在独立文件系统 zfs1
上的子目录 sam_config
中维护了 Oracle HSM 服务器的 Solaris 配置文件的副本。因此我们创建一个挂载点。我们挂载 zfs1
。我们从 zfs1
文件系统中的最近副本恢复 vfstab
文件。创建所需的挂载点。然后我们挂载文件系统:
root@solaris:~# cp /etc/vfstab /etc/vfstab.back root@solaris:~# mkdir /zfs1 root@solaris:~# mount -F zfs /net/remote.example.com/zfs1/ /zfs1 root@solaris:~# cp /zfs1/sam_config/20140127/etc/vfstab /etc/vfstab root@solaris:~# mkdir /diskvols root@solaris:~# mkdir /diskvols/DISKVOL1 root@solaris:~# mkdir /diskvols/DISKVOL2 ... root@solaris:~# mount /diskvols/DISKVOL1 root@solaris:~# mount /diskvols/DISKVOL2 ... root@solaris:~#
如果 Oracle HSM 配置文件的备份副本可用,请找到早于配置丢失日期的最新副本。
在示例中,已在独立文件系统 /zfs1
上的子目录 sam_config
中维护了 Oracle HSM 配置文件的副本。因此可轻松找到最新文件:
root@solaris:~# ls /zfs1/sam_config/20140127/etc/opt/SUNWsamfs/ archiver.cmd defaults.conf mcf recycler.cmd stager.cmd cfg_backups diskvols.conf mgmt_sched.conf releaser.cmd startup csn inquiry.conf notify.cmd scripts verifyd.cmd root@solaris:~# ls /zfs1/sam_config/20140127/etc/opt/SUNWsamfs/scripts archiver.sh log_rotate.sh nrecycler.sh recycler.sh save_core.sh sendtrap ssi.sh root@solaris:~# ls /zfs1/sam_config/explorer/ server1.20140430.1659MST.tar.gz server1.20140114.0905MST.tar.gz server1.20110714.1000MST.tar.gz
如果 SAMreport 的生成时间在 Oracle HSM 配置丢失之前,请找到最新的文件。
如果当前已挂载任何 QFS 文件系统,请将其卸载。
对于每个丢失的配置文件,请将可用备份文件复制到您要恢复的服务器上的所需位置。
在本示例中,我们从备份副本恢复所有 Oracle HSM 配置文件和脚本(请注意,下面的命令是作为单行输入的-使用反斜杠字符对换行符进行转义):
root@solaris:~# cp /zfs1/sam_config/20140127/etc/opt/SUNWsamfs/* \ /etc/opt/SUNWsamfs/ root@solaris:~# cp /zfs1/sam_config/20140127/etc/opt/SUNWsamfs/scripts/* \ /etc/opt/SUNWsamfs/scripts/ root@solaris:~# cp /zfs1/sam_config/20140127/etc/opt/SUNWsamfs/startup/* \ /etc/opt/SUNWsamfs/startup/ root@solaris:~# cp /zfs1/sam_config/20140127/etc/opt/SUNWsamfs/cfg_backups/* \ /etc/opt/SUNWsamfs/cfg_backups/ root@solaris:~# cp /zfs1/sam_config/20140127/etc/opt/SUNWsamfs/csn/* \ /etc/opt/SUNWsamfs/csn/
如果配置文件的备份副本不可用,请使用最新可用 SAMreport 中包含的信息重新创建备份副本。复制该报告中的内容,将其粘贴到文本编辑器,然后将其保存到报告中指明的文件和路径中。
SAMreport 文件包含在创建报告时 Oracle HSM 配置文件的全部文本。它们还列出了文件所处的目录。
在本示例中,我们在文件 server1
.20140127.SAMreport
中搜索 Oracle HSM 主配置文件 (mcf
) 信息。我们将 cat
命令的输出通过管道传输至 grep
命令和正则表达式模式 \/etc\/opt\/SUNWsamfs\/mcf
(请注意,下面的命令是作为单行输入的-使用反斜杠字符对换行符进行转义):
root@solaris:~# cat /zfs1/sam_config/explorer/server1.20140127.SAMreport | \ grep \/etc\/opt\/SUNWsamfs\/mcf ... ------------------ /etc/opt/SUNWsamfs/mcf ------------------- server1# /bin/ls -l /etc/opt/SUNWsamfs/mcf -rw-r--r-- 1 root root 1789 Feb 4 09:22 /etc/opt/SUNWsamfs/mcf # Equipment Equipment Equipment Family Device Additional # Identifier Ordinal Type Set State Parameters #------------------- --------- --------- --------- ------ ----------- hsmfs1 100 ms hsmfs1 on /dev/dsk/c1t3d0s3 101 md hsmfs1 on /dev/dsk/c1t4d0s5 102 md hsmfs1 on root@solaris:~#
我们复制 grep
命令的输出,将输出粘贴到 vi 编辑器中,并将文件保存到正确的名称和位置:
root@solaris:~# vi /etc/opt/SUNWsamfs/mcf # Equipment Equipment Equipment Family Device Additional # Identifier Ordinal Type Set State Parameters #------------------- --------- --------- --------- ------ ----------- hsmfs1 100 ms hsmfs1 on /dev/dsk/c1t3d0s3 101 md hsmfs1 on /dev/dsk/c1t4d0s5 102 md hsmfs1 on :wq root@solaris:~#
基于在执行保存 Oracle HSM 配置过程期间保存的转储文件数据恢复磁带库目录。对于每个目录,使用命令 build_cat
catalog-dump-file
catalog-file
,其中:
catalog-dump-file
是您使用 dump_cat
命令创建的文件的路径和名称。
catalog-file
是恢复的目录文件的路径和名称。
在示例中,我们使用文件 /zfs1/sam_config/20140513/catalogs/
library1cat.dump
中的数据重建了 library1
的目录:
root@solaris:~# build_cat /zfs1/sam_config/20140513/catalogs/library1cat.dump \ /var/opt/SUNWsamfs/catalog/library1cat
如果您要在硬件故障之后恢复系统,请转至第 4 章 恢复文件系统。
如果您要更换无意中删除或错误编辑的一个或多个配置文件,且未发生任何硬件或文件系统更改,请通过运行 sam-fsd
命令来检查配置文件中是否存在错误。
sam-fsd
是一个读取 Oracle HSM 配置文件的初始化命令。该命令会在遇到以下错误时停止:
root@solaris:~# sam-fsd
如果 sam-fsd
命令在 mcf
文件中找到错误,请编辑该文件以更正错误,并按照前一步骤中的描述重新检查。
在下面的示例中,sam-fsd
报告设备中出现的未指定问题:
root@solaris:~# sam-fsd Problem in mcf file /etc/opt/SUNWsamfs/mcf for filesystem hsmfs1 sam-fsd: Problem with file system devices. root@solaris:~#
如果 sam-fsd
命令运行无误,则配置文件是正确的。继续执行下一步。
以下示例是无误输出的部分列表:
root@solaris:~# sam-fsd Trace file controls: sam-amld /var/opt/SUNWsamfs/trace/sam-amld cust err fatal ipc misc proc date size 10M age 0 sam-archiverd /var/opt/SUNWsamfs/trace/sam-archiverd cust err fatal ipc misc proc date module size 10M age 0 sam-catserverd /var/opt/SUNWsamfs/trace/sam-catserverd cust err fatal ipc misc proc date module size 10M age 0 ... Would start sam-archiverd() Would start sam-stagealld() Would start sam-stagerd() Would start sam-amld() root@solaris:~#
告知 Oracle HSM 软件读取 mcf
文件,并相应重新配置自身。使用命令 samd
config
。
root@solaris:~# samd config Configuring SAM-FS root@solaris:~#
如果 samd
config
命令报告 mcf
文件中有错误,请更正错误。然后重复上述步骤。
重新挂载受影响的文件系统。
监视文件系统操作。
如果您缺乏备份文件或 SAMreport,请使用任何可用信息来重构配置。然后继续进行新的配置。有关说明,请参见《Oracle Hierarchical Storage Manager and StorageTek QFS Software 安装和配置指南》。