acs_renumber.sh允许您更改复合磁带库中给定 ACS 的标识符,而不必重新配置连接的磁带库。
acsss 宏可启动和停止 ACSLS,并控制和监视 ACSLS 以便进行维护和故障排除。
bdb.acsss可备份 ACSLS 数据库和 ACSLS 控制文件。
动态配置 (config) 实用程序可在 ACSLS 仍保持联机状态和运行时动态实现对 ACSLS 磁带库(和组件)所做的配置变动。这些配置实用程序包括:
config acs可动态添加 ACS 或重新配置现有 ACS 及其组件。
config drives
-在现有磁带机面板上动态添加磁带机、更改磁带机类型和删除磁带机。
config lsm可动态地重新配置现有 LSM 及其所有组件。这些组件包括 CAP、面板和磁带机。
config ports可动态地重新配置与 ACS 的端口连接。
db_export.sh
可导出 ACSLS 数据库信息和 ACSLS 控制文件,以便为 ACSLS 的升级安装或重新安装做好准备。
db_import.sh
可导入您在使用 db_export.sh 实用程序时导出的 ACSLS 数据库信息和 ACSLS 控制文件。
del_vol
可将卷从脱机的 LSM 中删除。
drives_media.sh可显示当前 ACSLS 发行版支持的所有磁带机类型、介质类型和磁带机-介质兼容性。
ejecting.sh可快速高效地执行批量弹出操作。
free_cells.sh允许您监视和管理由 ACSLS 控制的磁带库中的可用单元。
getHba.sh可管理光纤通道 HBA 端口。
从 ACSLS 7.3.1 和 8.0.1 发行版开始已删除 get_license_info,因为 ACSLS 中不再强制实施软件使用权限许可证。要显示和管理 ACSLS 控制的磁带库中的可用单元数,请使用free_cells.sh。
greplog可过滤 acsss_event
日志,以包括或排除含特定关键字的消息。
install_scsi_Linux.sh可创建能够在将磁带库配置到 ACSLS 时使用的 /dev/mchanger
链接。
lib_type.sh可将已连接 LSM 的 LSM 类型返回给指定的 ACS ID。
从 ACSLS 7.3.1 和 8.0.1 发行版开始已删除licensekey.sh,因为不再采用许可证密钥验证。
moving.sh将多个磁带移至一个或多个 LSM。
probeFibre.sh显示连接到 Emulex (LP10000) 或 QLogic (QLA2300) 光纤通道 HBA 后的所有设备型号、修订版级别和目标 LUN 地址。
rdb.acsss
可恢复 ACSLS 数据库和 ACSLS 控制文件。
showDevs.sh
显示在 Solaris 上配置的每个 mchanger 设备的详细信息。
showDrives.sh列出连接到 ACSLS 的所有已配置设备。
stats_report
收集磁带库卷统计信息。
userAdmin.sh管理 ACSLS GUI 用户密码。您可以添加用户、删除用户、列出用户以及更改用户密码。
volrpt
可创建卷报告。
watch_vols
在通过 CAP 装入卷后自动为其分配所有权和池关联。
遵循以下使用 ACSLS 实用程序的一般准则:
通常,本章中介绍的这些实用程序专供 acsss
用户执行操作。要继承运行这些实用程序所需的特权和环境依赖项,您应以 acsss
用户身份登录。
如果希望使用 su
,请务必使用 su - acsss
。
建议您在执行以下操作之后使用 bdb.acsss
手动将数据库备份到磁带:
配置磁带库硬件。
导入数据库。升级到新版本的 ACSLS 之后,不要使用通过早期版本创建的数据库备份。升级之后立即创建新备份。
任何数据库恢复。
要确保恢复准确且一致的数据库,请始终使用最新的数据库备份。
如果实用程序发生故障,请保留所有事件日志。这些日志有助于解决一切问题。
下一节将介绍 ACSLS 实用程序。
这是一个简单的工具,允许您更改复合磁带库中给定 ACS 的标识符,而不必重新配置连接的磁带库。由于磁带库中的每个 LSM、CAP、磁带机和卷标识为与 ACS 相关,因此该实用程序将更新所有不同的数据库表,使每个磁带库资源与您分配的新 ACS ID 保持一致。
新逻辑磁带库应使用当前处于活动状态的模式。例如,如果将 ACS 0 重新编号为 1,则 1001 和 1002 将保持不变,但 ACS 1 中的新逻辑磁带库应为 2001。稍后,如果将 ACS 6 重新编号为 ACS 0,则 7001 将保持不变,但 ACS 0 中的新逻辑磁带库应为 1003。尽管新添加的逻辑磁带库可根据 ACS 预测,但实际上不再一致。
注:
此实用程序进行的更改仅适用于 ACSLS 服务器,而不适用于使用这些资源的客户机应用程序。因此,更改服务器上的 ACS ID 之后,可能有必要重新配置所有客户机数据库。注:
运行此脚本之前,必须先禁用 ACSLS。要更改已分配的 ACS 编号,请运行 acs_renumber.sh
。在交互式会话中,系统将先警告您所做的更改将影响任何客户机应用程序,然后提示您是否继续。
$ acs_renumber.sh N O T I C E Changes made by this script will impact client applications that use ACSLS. Specifically, drive i.d. mappings and LSM id's will change. Continue...? (y or n):
如果回答 y
,则该例程将在进行任何更改之前自动备份现有数据库。这样一来,如果需要取消更改,则可恢复到先前的配置。(还可以通过重复 acs_renumber.sh
例程将更改反向。)
该例程显示当前配置的 ACS 的列表,对于每个 ACS,它将询问是否对该 ACS 重新编号。如果要重新编号,它将询问要分配的新值。
Current ACS list: ACS-0 (SL8500) Do you wish to renumber ACS-0? (y or n): What is the new value for ACS-0? 5
接受您的输入(在此示例中,您的响应是 5)之后,该例程将要求您确认暂挂更改。
Change ACS-0 to ACS-5. Correct? (y or n):
如果回答 y,则该例程将开始更新所有相关的数据库表,然后自动备份数据库以便为所做的更改设置检查点。
Updating tables: Changing ACS-0 to ACS-5 acstable: 1 records captable: 4 records celltable: 13424 records drivetable: 128 records handtable: 16 records lmutable: 0 records lsmtable: 8 records paneltable: 280 records porttable: 1 records ptptable: 16 records scr_distr_table: 0 records volumetable: 0 records Complete! Current ACS list: ACS-5 (SL8500) Now backing up the database changes...
acsss
宏是主要的启动、停止和状态命令,用于启动和关闭与 ACSLS 关联的各种服务。根据具体安装,ACSLS 应用程序最多可由 Solaris 或 Linux 系统上安装的七种服务组成。
acsdb
-管理 ACSLS 磁带库数据库。
acsls
-用于执行磁带库操作的磁带库控制软件。
weblogic
-ACSLS GUI 的 Web 服务器。
surrogate
-Java 服务与 acsls 之间的通信链路。
rmi-registry
-指定的 Java 对象和方法的查找服务。
smce
-逻辑磁带库的 SCSI 介质转换器仿真。
stmf
-逻辑磁带库的目标模式框架。
acsls
和 acsdb
服务是所有安装共同具备的。weblogic
、surrogate
和 rmi-registry
服务在配置 ACSLS GUI 支持时出现。smce
和 stmf
服务仅当已(在 Solaris 上)配置逻辑磁带库时才适用。
所有这些服务均由 ACSLS 用户通过单个宏 acsss
进行处理。此宏按不同组件之间的依赖关系所需的既定顺序启动和停止这些服务。此宏向 Solaris 上的服务管理工具 (SMF) 和 Linux 上的 init.d
服务实用程序发出命令以开展实际工作。
命令 | 功能 |
---|---|
enable |
这是用于启动与 ACSLS 关联的所有服务的默认方法。启用后,各种服务将保持启用状态,并在系统重新引导后自动重新启用。 |
temp-enable |
与 acsss enable 相同,但是在系统重新引导后不会重新启动服务。 |
maint-enable |
旨在用于不涉及 ACSLS 数据库的常规维护操作。此操作可使 GUI 基础结构允许 GUI 用户在禁用 ACSLS 时保持登录状态。此方法用于次要软件修补程序安装上下文中。不会启用 acsls 或 smce 服务。 |
db |
这是用于数据库维护操作(包括 db_export 、db_import 和 acsss_config )的首选控制模式。它将启用 ACSLS 数据库引擎并禁用其他所有 ACSLS 服务,包括 ACSLS GUI。 |
disable |
这是用于停止 ACSLS 运行的默认方法。这不是彻底关闭,而是在禁用 acsls 和 smce 服务之后还允许数据库和任何 GUI 登录会话保持活动状态以进行维护。其所产生的状态与 acsss maint-enable 相同。这是关闭服务器的最安全方法,因为在禁用服务之前将 ACSLS 和磁带库置于空闲状态。 |
force-disable |
与 acsss disable 相同,但该操作在禁用 acsls 和 smce 之前不会等待空闲状态。 |
shutdown |
这将彻底关闭所有 ACSLS 服务。旨在用于需要关闭数据库 (acsdb) 或 GUI 基础结构(rmi-registry 和 surrogate)的软件安装和卸载及其他维护上下文中。 |
status |
提供各种 ACSLS 服务的快速状态报告。 |
a-status |
返回 acsdb 服务的运行状态。 |
d-status |
返回 acsls 服务的运行状态。 |
g-status |
显示 ACSLS GUI 的状态。 |
l-status |
提供各种 ACSLS 服务的详细状态摘要,并包含指向供故障排除上下文中进行进一步分析的日志数据的指针。当服务无法启动或关闭时,它所指向的日志可提供帮助。 |
p-status |
与 acsss status 类似,此报告包括一个各个服务合同所监视的各种进程 ID 的列表。 |
w-status |
显示 weblogic 服务的状态。 |
timeout |
针对 Solaris 上的 acsls 服务报告 SMF 启动 timeout 。 |
legal |
使用英语或法语显示 ACSLS 法律声明。 |
在大多数情况下,您仅使用前三个命令:enable
、disable
和 status
。其余命令只是为了便于维修软件。
bdb.acsss
实用程序备份重建 ACSLS 环境所需的 ACSLS 数据库内容和 ACSLS 控制文件。该备份放在已命名的 tar 文件或磁带设备中,或者放在定义为默认设置的目录中。
此实用程序无需关闭 ACSLS 即可执行 ACSLS 数据库备份(热备份)。
如果不指定 -f
选项,则将创建 /export/backup/<
time_stamp
>.tar
文件。time_stamp
是执行 bdb.acsss
命令的时间。要在运行 bdb.acsss
之后验证磁带的内容,请针对特定磁带设备修改以下示例。
对于 Solaris:
tar tvbf 2048 /dev/rmt/0mn
运行 tar tvbf
命令之后,磁带转到下一个块。如果打算在运行 tar tvbf
命令之后运行 rdb.acsss
,请确保已重绕或重新定位磁带。
-f
backup_file
指定要包含 ACSLS 数据库备份的 UNIX 文件。必须对该文件和目录具有写权限。
-f
tape_device
指定连接和配置到 ACSLS 服务器的任何磁带设备。
使用 bdb.acsss
实用程序可将 ACSLS 数据库备份到磁带或外部网络文件,以便根据需要创建可用于恢复数据库的备份。
建议您在执行以下操作之后使用 bdb.acsss 手动备份数据库:
运行 acsss_config
。
导入数据库。升级到新版本的 ACSLS 之后,不要使用通过早期版本创建的数据库备份。
审计整个磁带库。
任何数据库恢复。
示例 1:
$ bdb.acsss -f /export/backup/my_backup
在此示例中,在
/export/backup
目录中创建了名为 my_backup
的文件。现在,您可以选择是否保留该文件、该文件所在的位置,以及是将其移动到另一个文件系统、另一个服务器还是可写 CD 设备。
然后,可使用该文件将数据库恢复到执行备份时所处的状态。例如,如果备份是在星期五下午 1:00 执行的,恢复将在星期一早上 6:00 执行,则数据库将恢复到截至星期五下午 1:00 时所处的状态。
同样在这个 -f
选项内,您还可以提供磁带设备名称而不是文件名,将备份转到指定的磁带设备。
示例 2:
$bdb.acsss -f /dev/rmt/0mn
在此示例中,已在磁带设备 /dev/rmt/0mn
上创建磁带归档。这可以存储供往后在非现场位置使用。
另请参见:
使用动态配置 (config
) 实用程序可完成 ACSLS 磁带库(和组件)的配置更改,同时使 ACSLS 保持联机和运行状态。这些配置更改记录在 acsss_config.log
文件中。
支持以下动态配置实用程序:
config acs
config drives
config lsm
config ports
使用 config
实用程序具有以下优势:
ACSLS 可以继续运行,允许您对不受影响的磁带库组件执行挂载请求。
允许您重新配置指定的磁带库组件,而所有其他配置信息将保持不变。例如,如果指定:
一个 ACS,其他 ACS 的配置不受影响。
一个 LSM,其他 LSM 的配置不受影响。
一个磁带机面板(面板上的磁带机),所有现有磁带机的挂载和卸载不受影响。
必须认识到以下几点:
必须运行 ACSLS 才能使用动态 config
实用程序。
必须使用 acsss_config
才能创建初始 ACSLS 配置。请参阅设置控制 ACSLS 行为的变量。
事件通知将报告所有动态配置变动。
运行动态配置之前,请确保所有正在添加或重新配置的组件均已准备就绪。
acsss_config.log
文件提供所显示消息的详细信息。
如果尚未确认配置变动,则可以结合使用 cancel
与 [[CTRL]]+C
取消该操作。
动态配置在配置变动前后执行自动备份。
配置变动一经确认,便无法取消。如果要将配置变动反向,请关闭 ACSLS 并恢复配置变动前一刻执行的备份。
在超时之前,您有 10 分钟的时间确认配置变动。
无法删除唯一的(或最后一个)ACS。
不要删除 ACS 中的最后一个 CAP 以及为 ACSLS 定义的最后一个磁带机。
config acs
实用程序允许您执行以下操作:
添加 ACS 或重新配置现有的 ACS 及其组件
您可以配置或重新配置磁带库,而不必按顺序分配所有 ACS 编号。
示例:您需要从 9310 磁带库迁移到 SL8500,然后删除 9310。9310 的编号为 ACS 0,SL8500 为 ACS 1。通过使用 config acs
,您现在可以将所有磁带和磁带机迁移到 SL8500,然后删除 9310,而不必对 SL8500 重新编号。
使用 config acs
acs_id new 可在不关闭 ACSLS 的情况下添加 SL8500 磁带库。
将磁带机从 9310 移动到 SL8500,然后使用 config acs
acs_id 更新这两个 ACS 中的磁带机配置。
从 9310 中移除磁带,然后将其装入 SL8500。
最后,安排停机以关闭 ACSLS,然后使用 acsss_config
从配置中删除 9310。不要配置 9310。记住指定 SL8500 是 ACS 1(而非默认值零)。
配置已分区的 ACS。
添加或移除 LSM,因为 config lsm
实用程序仅允许您重新配置现有的 LSM。
每个 ACS 必须至少有一个 CAP。这可以是与其他分区共享的 CAP。必须至少将一个磁带机配置到整个 ACSLS 系统中。
例如,如果 ACSLS 支持四个磁带库;其中三个磁带库可以包含零 (0) 个磁带机。但是,第四个磁带库必须至少包含一个磁带机。
要添加新 ACS,请执行以下操作:
输入以下命令:
config acs new
为新 ACS 指定 ACS 编号。
ACSLS 使您能够配置或重新配置磁带库,而不必按顺序分配所有 ACS 编号。
将显示已使用的 ACS 编号和前五个可用的 ACS 编号。
为新 ACS 输入 ACS 编号。
选择 ACS 位于分区的 SL8500 还是 SL3000 中。
如果输入 y,则系统将要求您提供 ACS 的分区 ID。
此分区 ID 必须与 SL Console 上的分区 ID 相符。
如果这不是分区磁带库而是通过 SCSI/光纤连接,请输入 n。
ACSLS 不支持通过 SCSI/光纤连接的分区磁带库,例如 SL500。此外,通过 SCSI/光纤连接的分区磁带库没有分区 ID。
输入与 ACS 的连接数,后跟设备或主机 ID。
最多只能有 15 个连接。
注:
确保所有端口均连接到同一个 ACS。将显示新 ACS 配置。
确认添加新 ACS。
确认之后,系统将显示配置信息并更新数据库。
config drives
实用程序允许您重新配置现有磁带机面板上的所有磁带机。这包括添加磁带机、更新现有磁带机的磁带机类型和序列号以及从数据库中删除磁带机。
使用 config drives
实用程序以便动态更改磁带机配置,其中包括安装、更换或移除现有磁带机面板上的磁带机。必须使用 config lsm 或 config acs
实用程序才能对磁带库硬件配置进行其他更改(例如,更改存储单元的数量和/或位置、更改 CAP 的数量或大小或者将存储单元面板替换为磁带机面板)。
注:
包含磁带机配置已更改的面板的 LSM 必须处于联机或诊断模式。
在要重新配置的磁带机面板上,所有磁带机必须已准备就绪。
必须对通过 SCSI 连接的磁带库执行 IPL,才能识别添加、移除或更改的磁带机。对磁带库执行 IPL 时,所有磁带机必须已准备就绪。
用新磁带机替换现有磁带机之后,如果将 LSM、磁带机类型变为联机或者运行 config drives
,则会自动更新磁带机类型和磁带机序列号。
此实用程序允许您重新配置现有的 LSM 及其所有组件。这些组件包括 CAP、面板和磁带机。
如果要在 ACS 中添加或删除 LSM,必须使用 config acs
实用程序。
面板发生更改时的过程:
如果正在删除或更改面板且已清空其中的磁带,则 LSM 可以保持联机状态。
如果正在删除或更改面板但其中包含磁带,建议将受影响的 LSM 变为
诊断模式,直到重新配置该 LSM 并审计受影响的面板为止。否则,挂载和卸载可能会失败。
如果已添加面板并手动将磁带放在这些面板中,则运行审计以便与数据库保持一致。
要重新配置 LSM,请执行以下操作:
输入以下命令:
config lsm
lsm_id
将显示新旧配置。
面板旁边的 "y
" 将通知您面板类型已更改。在 acsss_config.log
文件中查找详细信息。
确认新配置。
确认之后,系统将更新数据库。
如果配置未更改,则会显示配置而不要求进行确认,然后实用程序将退出。
次要更改均会自动进行,而无需确认。例如:
仅磁带机类型和/或序列号更改
LSM 序列号更改
仅 LSM 类型在 4410 和 9310 之间更改
机械手的数量(例如,SL8500 机械手)更改。
但是,如果这些更改与其他需要确认的更改同时发生,请确认新配置。系统将稍后更新数据库。
config ports
实用程序允许您动态添加与 ACS 的端口连接。
注:
所有新端口均必须连接到与现有端口相同的 ACS。运行 config acs
acs_id,然后运行 config ports
acs_id。
要将一个 ACS 替换为另一个 ACS 或者更改端口连接地址,请关闭 ACSLS 并使用 acsss_config
。
db_export.sh
实用程序可导出 ACSLS 数据库表数据和 ACSLS 控制文件,以便为 ACSLS 的升级安装或重新安装做好准备。
注:
如果 ACSLS 正在运行,则不能运行db_export.sh
实用程序。请先运行 acsss
disable
,然后再运行 db_export.sh
。-f
db_file
指定要包含 ACSLS 数据库备份的 UNIX 文件。对该文件和目录有写权限。
注:
如果将数据库导出到某个文件,则该文件必须位于非易失性目录中。如果您的目的是重新安装 ACSLS,则重新安装操作将销毁 $ACS_HOME or $ACSDB_BKUP (such as /export/backup)
目录。将导出的文件放在文件系统中的其他位置。
如果指定不带路径的文件名,则 db_export
会将数据库文件保存在当前工作目录中的该文件名下。它将 ACSLS 控制文件保存在同一目录下名为 <filename>.misc
的文件中。
如果要将数据库导出到不支持某些磁带库、磁带机或磁带介质类型的早期 ACSLS 发行版中,请在导出数据库之前从配置中删除不支持的磁带库,并从磁带库中移除不支持的磁带机和磁带。
-f
tape_device
指定连接和配置到 ACSLS 服务器的任何磁带设备。
如果未指定选项,则系统默认为磁带设备。
db_import.sh
实用程序可导入您使用 db_export.sh
实用程序时所导出的 ACSLS 数据库表数据和 ACSLS 控制文件。ACSLS 控制文件位于 $ACS_HOME/data/external
中,并包含 ACSLS 的用户可定义变量和配置。它们可指定访问控制设置、暂存首选项、扩展存储 LSM、定制 volrpt
设置、卷属性(对于 watch_vols 实用程序)等。移动到其他操作系统或从早期发行版中移动时,db_import.sh
实用程序还提供灾难恢复功能并可保留定制动态变量。
-f
db_file
指定由 db_export.sh
创建的 UNIX 文件。
-f
tape_device
指定连接和配置到 ACSLS 服务器的任何磁带设备。
如果未指定选项,则系统默认为磁带设备。
del_vol
实用程序可查找磁带库中的卷。如果找不到该卷,del_vol
会将其标记为缺少或缺失或者从数据库中删除,具体取决于您的请求。
如果无法验证该卷的所有引用位置(例如,LSM 处于脱机状态或磁带机未准备就绪),除非 -n
(no_confirm_flag
) 已启用,否则系统会提示您确认将该卷标记为缺失或将其删除。如果删除了该卷,则与其关联的卷和信息(例如,暂存池成员关系以及当前锁定和暂挂锁定)均会从数据库中删除。
除非输入了 -q
(quiet_flag
),否则将显示卷相关信息。如果使用多个选项,则可将其格式化为单独的选项或连续的字符串。
将卷标记为缺失或将其删除之前,除非已指定 -n
选项,否则 del_vol
将要求您确认。
如果该卷位于磁带库中,则它在数据库中仍是活动卷。
如果无法在磁带库中找到该卷,除非指定应删除该卷,否则将标记为缺失。
如果该卷所在的单元或磁带机不可访问(因为磁带库或磁带机处于脱机状态或者无法运行),除非指定应该删除该卷,否则将标记为缺少。
注:
此实用程序不会删除在磁带库中找到的卷。
可以使用 del_vol
实用程序删除卷记录,而不必等待缺失或已弹出状态失效。
必须运行(启用)ACSLS 才能支持 del_vol
实用程序。
-n
非确认模式;将找不到的卷标记为缺失或删除,而不提示用户进行确认。
-q
静默模式;不输出从数据库中提取的所有信息。
-d
删除指定的卷,而不必等待缺失或已弹出状态失效。
-f
允许您重新装入卡在磁带机中的磁带。使用 -f
选项,您可在不验证某个卷是否确实位于磁带库中的情况下删除该卷或将其标记为缺失。这允许您从数据库删除位于故障磁带机中的卷。使用该选项,可以在修复磁带机时,从磁带机中移除卷,将其从数据库中删除,然后重新装入该卷以供磁带库正常使用。
vol_id
要删除的卷序列号。
注:
如果该卷序列号包含美元符号 ($),则用单引号括起。示例:del_vol ’AB$001’该例程显示当前的 ACSLS 发行版支持的所有磁带机类型、介质类型和磁带机-介质兼容性。这些信息通常作为标准输出显示。
有关支持的磁带库、磁带机类型、介质类型和磁带机-介质兼容性的当前列表,请参阅《ACSLS Product Information Guide》。
ejecting.sh
实用程序有助于执行批量弹出保管操作。此实用程序从指定的 CAP 和卷列表开始工作,并行执行多个弹出操作,直到整个作业完成为止。除非用户请求按排序顺序弹出卷,否则此实用程序会将每个卷弹出到距离最近的指定 CAP。
如果可能,将使用具有可用空间的邻近 CAP 替代距离最近的 CAP,前提是该操作能够减少操作员对 CAP 进行不必要的处理。常规方法可减少磁带移动,消除不必要的 LSM 直通迁移并减轻操作员的整体工作负荷。
所有弹出作业在启动该操作的单个 shell 窗口中进行监视和汇总。请参见下文中的 -x
选项,以便与多个 XTERM 窗口结合使用。每当特定 CAP 已满且操作员可通过 Remove cartridges from CAP
从 CAP 中移除磁带时,系统均会通知用户。整个操作完成之后,系统将通知操作员。
一组显示过去 10 天内所有弹出操作结果的日志保存在 $ACS_HOME/log/ejectingLogs
目录中。每个单独的日志由完成操作时创建的时间戳标识。
标准:ejecting.sh [-dmox] -c <CAP list> -v <volume list file>
策略规范:ejecting.sh [dmox] -p <policy file>
传统格式:ejecting.sh <CAP ID> <volume list file>
-c <
CAP list>
命令行中用空格分隔的 CAP ID 列表。CAP 列表中的所有 CAP 必须位于同一 ACS 中。
示例:-c 0,1,0 0,1,1 0,5,0 0,5,1 0,9,0
使用星号 (*) 的通配符表达式有效,可以指定所有 LSM 和/或 LSM 中的所有 CAP。
示例:
-c 0,1,*
(LSM-1 中的所有 CAP)
-c 0,*,0
(每个 LSM 中的 CAP-0)
-c 0,*,*
(每个 LSM 中的所有 CAP)
只选择联机且可用的 CAP 执行操作。指定通配符表达式后,仅选择非零优先级 CAP。
ACS 必须是数字表达式,且不能由通配符引用。
在较大的磁带库上下文中,CAP 的选择可能会对保管操作的速度和效率产生很大的影响。指定太多的 CAP 可能会在操作员维修多个部分填充的 CAP 时增加不必要的工作。为给定工作负荷指定的 CAP 太少时,则可能会引发瓶颈,从而增加机械手等待时间。一般来说,对于大型卷列表,所选的 CAP 应分散在复合磁带库中不同滑轨和不同磁带库模块上。为大量卷选择少数 CAP 时,将磁带库分为若干区域,然后选择位于每个区域中心的 CAP。
-v <volume file>
这是使用简单文本文件的完整或相对路径名进行文件指定。该文件应包含表示待弹出卷的 VOL-ID(卷序列号)的列表。只有与指定的 CAP 位于同一 ACS 中的卷才会受影响。已挂载的卷不会弹出。
-p <
policy file>
该策略文件使用完整或相对路径名进行指定。此文本文件包含为 CAP 和卷定义的策略。该文件的格式包括单词 "caps:",后跟用于执行操作的 CAP 的列表;以及单词 "vols:",后跟卷列表文件的全路径名。
示例:
caps: 0,1,0 0,1,1 0,5,0 0,5,1 0,9,0 0,9,1
vols: /export/backup/volumes_to_eject.txt
-d
display
选项可指示 ejecting.sh
在执行 eject
操作之前显示卷-CAP 分配。您可以选择显示卷及其移动到的 CAP 的完整列表,或者仅显示指出将多少卷从每个 LSM 迁移到每个 CAP 的摘要。
查看显示之后,可以选择继续或中止操作。
-m
使用介于 "04" 和 "99" 之间的操作消息代码为作业设置标签。在支持的磁带库上,此数字代码将显示在操作控制台中。
-o
有时,保管操作要求按排序顺序堆叠卷。如果使用此选项,则例程会按照在卷列表中找到指定卷的顺序以及指定的 CAP 顺序将指定卷移动到列出的 CAP。CAP 顺序将从第一个 CAP 到最后一个 CAP 不断重复,直到所有卷已弹出为止。
注:
由于卷-CAP 顺序优先,因此该选项不会尝试通过限制 LSM 直通路由来优化卷移动。-x
每个离散的 CAP eject
有效负荷使用一个专用 XTERM 窗口。在整个批量弹出操作期间跟踪各个弹出作业时,您可能会发现此选项非常有用。XTERM 会话将在启动每个 CAP eject
后弹出,并在完成相应的 eject
后消失。
从 Windows 终端操作时,请确保已安装支持 X11 的软件。X11 是 Solaris 或 Linux 上的标配。必须从本地计算机打开对 ACSLS 服务器的显示访问控制。
示例:xhost + <
acsls_server_hostname
>
此实用程序将查看登录身份 (who am i
) 以确定用来发送 DISPLAY 的位置。必须直接从本地控制台或桌面计算机登录到 ACSLS 服务器才能查看显示。
传统格式
ejecting.sh <
CAP ID
> <
volume file
>
保留了此实用程序的传统格式。它采用单个 CAP ID 以及包含简单卷列表的文件的路径名。稍后,它将编写一系列已针对 CAP 的大小进行优化的 eject
命令,并将生成的命令显示给标准输出。显示包括通过指定 CAP 弹出完整卷列表所需数量的 eject
命令。
操作员可以将传统 ejecting.sh
的输出直接发送到 cmd_proc
来执行操作。
示例 :
ejecting.sh 0,1,0 /export/backup/myVolumeList | cmd_proc -lq
或者,可以将该输出重定向到稍后能够重定向到 cmd_proc
的文件。
示例 :
ejecting.sh 0,1,0 /export/backup/myVolList > /tmp/eject.dat cmd_proc -lq < /tmp/eject.dat
ejecting.sh 的每个实例均记录在 $ACS_HOME/log/ejectingLogs/
目录中。每个日志文件均以日期-时间戳命名。例如:
ejecting.log.14-Oct_13:13:10
每个 ejecting.log
汇总了从操作员 shell 中看到的整个弹出操作。在此处可以查看遇到的任何错误。
ejecting.log
可能包含实用程序由于以下原因而忽略的卷的列表:
卷 ID 无效。
卷未包含在指定的 ACS 中。
卷正在使用中。
ejectingLogs/
目录中累积的文件将在 10 天后清除。每次调用新的 ejecting.sh
时,系统均会删除超过 10 天的日志。
free_cells.sh
实用程序允许您监视和管理磁带库中由 ACSLS 进行管理的可用单元。此实用程序将报告 LSM、ACS 和 ACSLS 服务器的可用单元计数。
此实用程序位于 $ACS_HOME/utils
目录中
LSM 不是 L5500(仅列出可用的单元总数)
未选择选项
LSM 1,3
可用的单元总数 = 2,345
-a
选项(还列出已分配的单元数和单元总数)
LSM 1,3
可用的单元总数 = 3,345
已分配的单元数 = 3,155
单元总数 = 6,500
LSM 是 L5500(分别列出 LTO 可用单元数和非 LTO 可用单元数)
未选择选项
LSM 0,2
LTO 可用单元数 = 573
非 LTO 可用单元数 = 467
可用的单元总数 = 1,040
-a
选项(还列出已分配的单元数和单元总数)
LSM 0,2
LTO 可用单元数 = 573
非 LTO 可用单元数 = 467
可用的单元总数 = 1,040
已分配的单元数 = 4,460
单元总数 = 5,500
如果 ACS 中只有一个 LSM,将按下例中所示列出该 ACS。
ACS 不包括任何 L5500
未选择选项(仅显示可用单元总数)
ACS 1
可用的单元总数 = 5,342
-a
选项(还显示已分配的单元数和单元总数)
ACS 1
可用的单元总数 = 5,342
已分配的单元数 = 5,658
单元总数 = 11,000
ACS 包括 L5500(分别显示 LTO 可用单元数和非 LTO 可用单元数)
未选择选项
ACS 0
LTO 可用单元数 = 1,573
非 LTO 可用单元数 = 968
可用的单元总数 = 2,541
-a
选项(还显示已分配的单元数和单元总数)
ACS 0
LTO 可用单元数 = 1,573
非 LTO 可用单元数 = 968
可用的单元总数 = 2,541
已分配的单元数 = 2,959
单元总数 = 5,500
ACS 不包括任何 L5500
在这种情况下,仅显示可用的单元总数
未选择选项
ACSLS 服务器
可用的单元总数 = 7,883
-a
选项
ACSLS 服务器
可用的单元总数 = 7,883
已分配的单元数 =14,117
单元总数 =22,000
ACS 包括 L5500
在 L5500 磁带库受管理的情况下,仅显示 LTO 可用单元数和可用单元总数。由于 L5500 磁带库是将 LTO 单元与非 LTO 单元分隔开的唯一磁带库,因此不显示非 LTO 可用单元数。
未选择选项
ACSLS 服务器
LTO 可用单元数 = 1,573
可用的单元总数 = 7,883
-a
选项
ACSLS 服务器
LTO 可用单元数 = 1,573
可用的单元总数 = 7,883
已分配的单元数 =14,117
单元总数 =22,000
getHba.sh
实用程序管理光纤通道 HBA 端口。
getHba.sh
getHba.sh
实用程序在安装时运行并由 install_acsss.sh
调用,后者由 install.sh
调用。只要已将新 HBA 添加到系统中或者重新排列 HBA 端口,就可以随时直接运行该实用程序。此实用程序将标识要从启动器模式更改为目标模式的相应 HBA 端口,以便向 ACSLS 逻辑磁带库显示客户机接入点。
使用此实用程序的最佳方法是在运行 getHba.sh
之前设置 FC 连接。这样 getHba.sh
便可向您显示现有连接的有用信息。
该实用程序先评估是否已配置目标模式适配器。如果不存在目标端口,则该实用程序的流程将如下所示继续运行。如果该实用程序感知到任何现有的目标端口,则显示以下选项菜单。
选择所需操作:
保留现有的 HBA 端口配置。
配置其他目标模式端口。
将现有目标端口恢复到启动器模式。
选项 | 说明 |
---|---|
1 | 退出此实用程序。 |
2 | 该实用程序列出了当前在启动器模式中运行的端口。当某个端口显示 "Connected to a remote HBA" 时,这意味着另一端存在启动器,使该端口成为 ACSLS 目标端口的潜在候选端口。当某个端口显示 "Connected to a target device" 时,有可能已连接磁带库或磁盘,因此该端口并非执行目标模式操作的理想选择。 |
3 | 标识为目标模式操作配置的每个端口,并提示您确认是否将该端口恢复到启动器模式。 |
选项 2 示例
选择要更改为目标模式的本地 HBA 端口。从以下列表中选择:
未连接的 HBA 端口 WWN 2100001b32055d85。
已连接到远程 HBA 的 HBA 端口 WWN 2101001b32255d85。
已连接到目标设备的 HBA 端口 WWN 2102001b32055d85。
都不是。
注:
如果不打算使用逻辑磁带库功能,请选择“以上都不是”。做出选择之后,系统将要求您进行确认。
2 HBA Port WWN 2101001b32055d85 /pci@0,0/pci10de,377@f/pci1077,143@0 Is this correct? (y or n):
您有机会改变自己的想法。如果您回应 "n",则会再次显示可用端口的列表,并提示您进行选择。如果您回应 "y",则系统会询问您是否要重新配置其他端口。
该实用程序将继续添加目标组和目标组成员,且系统会指示您重新引导服务器,以使目标模式更改生效。
创建目标组:2101001b32255d85
选项 3 示例
此选项允许您取消配置现有目标并将 HBA 作为启动器恢复到本机模式。
# cd $ACS_HOME/install # ./getHba.sh A Target-mode port has already been configured: Target: wwn.2100001B32050A28 Connected to ... Initiator: wwn.210100E08BA61A29 Please select a desired action: 1) Keep the HBA port configuration as it is. 2) Configure an additional target-mode port. 3) Restore a target port to initiator mode. 3 Target: wwn.2100001b32050a28 Do you wish to restore this port to initiator mode? (y or n): y Removing 'qlt' binding in /etc/driver_aliases Are there additional ports you wish to reconfigure? (y or n): n A reboot will be necessary for these changes to take effect.
此实用程序从 ACSLS 7.3.1 和 8.0.1 发行版开始已删除,因为 ACSLS 中不再强制实施软件使用权限许可证。要显示和管理 ACSLS 控制的磁带库中的可用单元数,请使用free_cells.sh。
使用 greplog
实用程序过滤 acsss_event
日志以包括或排除包含特定关键字的消息。此例程的语法类似于 UNIX 'grep
' 函数。greplog
是专为与 acsss_event
.log
结合使用而设计,但它可能会对任何类型的用空行分隔记录的消息文件起作用。
install_scsi_Linux.sh
实用程序可创建能够在将磁带库配置到 ACSLS 中时使用的 /dev/mchanger*
链接。这些 mchanger 名称目前使用由磁带库报告的序列号构造而成,为 ACSLS 提供了一个更改 SAN 结构或服务器重新引导(这两种情况均可更改磁带库的基础设备路径)之后仍有效的可靠标识符。
生成的 /dev/mchanger
链接和关联磁带库的信息是通过 showDevs.sh
实用程序作为脚本输出的一部分显示的。该实用程序还可以作为独立的操作运行(在创建 mchanger 链接之后)以显示磁带库信息。
install_scsi_Linux.sh
输出样例:
========================================================================== # install/install_scsi_Linux.sh [root@acslsdevx1 install]# ./install_scsi_Linux.sh Installing SCSI device(s) for Oracle StorageTek ACSLS. Adding ACSLS rules for udev ... Starting udev: [ OK ] Successfully built the following... /dev/mchanger-3500104f00079f9d2: STK SL500 V-1485 336-cells 10-drives /dev/mchanger-3500104f0007a8532: STK SL500 V-1485 205-cells 6-drives /dev/mchanger-3500104f000cc6a67: STK SL150 V-0182 59-cells 4-drives Installation of SCSI device(s) successfully completed. # =========================================================================== # utils/showDevs.sh /dev/mchanger-3500104f00079f9d2: STK SL500 V-1485 336-cells 10-drives /dev/mchanger-3500104f0007a8532: STK SL500 V-1485 205-cells 6-drives /dev/mchanger-3500104f000cc6a67: STK SL150 V-0182 59-cells 4-drive # ============================================================================
moving.sh
实用程序将多个磁带移至一个或多个 LSM。此实用程序将读取列出了待移动磁带的文件。这些磁带可以是:
一个或多个 LSM 中的磁带
某个面板上正在移动到同一 LSM 或其他 LSM 中的其他面板上的磁带
所选的任何一组磁带
moving.sh
的限制如下:
vol_list_file
中的所有目标 LSM 和磁带必须位于同一 ACS 中
如果任何目标 LSM 处于脱机状态或者不包含任何可用单元,则任何磁带均不会移至该 LSM
注:
仅当 ACSLS 正在运行时,moving.sh
实用程序才会运行
在内部,为了避免影响磁带库性能(挂载和卸载),moving.sh
每次只移动一个磁带
创建单独的卷列表之后,可以并行运行多个移动实用程序。请确保:
目标 LSM 相同。请确保 LSM 中具有足以容纳所有磁带的可用单元
您在一个 SL8500 磁带库内移动。由于只存在两个升降装置,因此每次运行两个以上移动实用程序不会提高性能
moving.sh -f
vol
_list_file -t
lsm_id or list of lsm_ids
其中:
-f
vol_list_file
包含待移动卷的列表的文件名。
注:
卷 ID 必须遵循以下规则:每行一个磁带 ID;vol_id 必须是有效的 ACSLS 卷 ID;如果 vol_id 包含尾随或前导空格,则必须用单引号或双引号括起来。-t
lsm_id
指定一个或多个要将磁带移动到的 LSM ID。每个 LSM ID 应当用空格分隔并且属于同一 ACS。
使用 moving.sh
实用程序可将一系列磁带移动到其他 LSM,或者从一个面板移动到同一 LSM 中的其他面板。
您可以使用定制卷报告或 display volume
命令创建一个文件,其中包含要从 LSM 移动的卷列表。
以下情况需要使用 moving.sh
实用程序:
当 SL8500 初次分区或重新区分时,如果从现有分区 (ACS) 中删除一个或多个滑轨 (LSM),则 moving.sh
可以将正从该分区删除的 LSM 中的磁带移至保留在该分区中的 LSM。
从 ACS 中删除任何 LSM 时,moving.sh
可以将磁带移至保留在 ACS 中的 LSM。
例如,如果从复合磁带库 (ACS) 中删除 SL8500,则 moving.sh
会将正在删除的 SL8500 中的磁带移至仍会保留在该磁带库中的 LSM。从 9310 的 ACS 中删除 9310 LSM 时,这一点也适用。
从 SL8500 中删除存储扩展模块时,可以将磁带从正在删除的面板中移至保留在磁带库中的面板。
要优化磁带库性能,请将非活动磁带移至其磁带机几乎没有用于磁带归档的 LSM。这将为包含磁带机的 LSM 释放空间以容纳新的活动磁带。
在开始之前,必须创建包含要从 LSM 移动的卷的列表文件。您可以使用 volrpt(定制卷报告)或 display volume
命令。
创建 vol_list_file
volrpt -d -f custom_volrpt_input -l
lsm_id
> vol_list_file
其中,custom_volrpt_input
文件是:
VOLUME_ID 6
输出样例:
$ volrpt -d -f my_custom -l 0,2 > my_file_list $ cat my_file_list ABC744 ABC748 ABC756 ACS151 EN0823 O00373
使用 display volume
命令创建 vol_list_file
显示卷列表。
示例:
display volume * -home acs,lsm,panel,*,* -f
vol_id
本例中选择 -home
参数标识的面板上的所有卷。行和列均带通配符。只有 vol_id 是输出。
输出样例:
ACSSA> display volume * -home 0,3,5,*,* -f vol_id 2007-02-12 15:31:45 Display Volume Vol_id PG0350 PG0353 PG0356 PG0358 PQ0616
创建并命名 vol_list_file
。
剪切卷(从显示命令创建的卷)列表并将其粘贴到此文件中。
编辑输出。
vol_list_file
不能包含任何空白行和前导空格。使用以下 vi 命令可将其消除。
:%s/ˆ[ ]*//g
否则,将显示如以下示例中所示的错误消息。
$ moving.sh -f my_file_list -t 0,2 Error in file my_file_list. Invalid entry ABC748 ABC756 ACS151 EN0823
生成此错误消息的原因在于:卷 ABC748 和 756 前面存在多余的空格。
以下过程介绍如何:
从 ACS 中删除 LSM 之前移动磁带
更改或删除面板之前移动磁带
磁带库重新配置或重新分区之后,如果从 ACS 中删除 LSM,则 LSM 中的所有磁带会变得不可访问。因此,删除 LSM 之前,应该将其所有磁带移至仍会保留在 ACS 中的 LSM。使用以下过程:
从已分区 SL8500 中的传统分区删除滑轨 (LSM) 时。
从 ACS 中删除 LSM 时。ACS 可以包括 9310 或 SL8500 磁带库。
规划新配置。
组织磁带和磁带机以提高性能。
清空 LSM 后立即更改磁带库配置。
确定要清空的 LSM 中有多少磁带,以及磁带要移动到的 LSM 中有多少可用单元。
使用 free_cells.sh -a
可找出这些 LSM 中的磁带数(已分配的单元数)和可用单元数。
计划移动并重新配置。
计划移动以最大程度降低对系统的影响。
移动磁带需要时间,重新配置磁带库或对 SL8500 重新分区时会出现中断。
请确保目标 LSM 中具有足够的可用单元供移动的磁带使用。如果需要,请弹出磁带以释放空间。
将正在移除的 LSM 中的所有磁带机变为
脱机。
这可防止出现以下情况:
将正在清空的 LSM 变为
诊断模式,以便通过以下命令将访问权仅限于 cmd_proc
:
vary lsm
lsm_id
diagnostic
示例:vary lsm 0,1 diagnostic
运行定制 volrpt
,使用以下命令将正在清空的 LSM 中的所有磁带输出到文件:
volrpt -f
custom_volrpt_input
-l
from_lsm_id
>
move_vols_list
其中,custom-volrpt_input
是:
VOLUME_ID 6
示例:volrpt -f volrpt_input -l 0,1 > move_vols_list
有关更多信息,请参阅创建卷统计信息报告日志记录。
使用以下命令将磁带从正在清空的 LSM 中移出:
moving.sh -f
move_vols_list
-t
dest_lsm_id(s)
使用 volrpt
检查 LSM 是否为空,因为磁带可能已装入 LSM 中或“浮动”到其中。
volrpt -l from_lsm_id
如果不为空,请再次运行定制 volrpt
,选择目前位于 LSM 中的卷。然后,再次运行 moving.sh
(步骤 3 和 4)。
注:
请勿再次针对原始卷列表运行moving.sh
。将正在清空的 LSM 变为
脱机,防止卷移至其中。
vary lsm
lsm_id offline
注:
从分区和/或 ACS 中删除 LSM。使用 config acs
acs_id 或 acsss_config 重新配置 ACS。
注:
SL3000 可将分区细分到磁带机和单元级别,而 SL8500 则可以通过增强型分区功能在磁带机和单元阵列级别进行分区。如果将单元从一个分区重新分配到另一个分区,这些单元中的磁带将成为孤立磁带,不能再由以前所在的分区访问。管理其他分区的主机可以覆盖磁带上的数据。为防止磁带在分区边界发生变化时成为孤立磁带,请在对磁带库重新分区之前,将磁带移至仍会保留在分区中的单元。由于 SL3000 是单个 LSM,因此现有的 ACSLS 移动命令不起作用。您只要将其移动到磁带库中的其他位置即可。也可以将其移动到也会从分区中删除的其他单元。
可使用以下方法之一移动磁带:
使用 StorageTek Library Console (SL Console)。
审计磁带库,以便对卷的位置进行审计。
有关详细信息和过程,请参阅 SL8500 用户指南或 SL3000 用户指南。
使用以下 ACSLS 过程:
使用volrpt或使用 display 命令选项显示卷位置。
使用以下显示命令显示特定面板中的可用(空)单元列表:
display cell a,l,p,*,* -status empty -f status
有关更多信息,请参阅使用 display 命令选项。
通过指定可用单元(而不是 LSM ID)将磁带移至特定单元。要移动单元,请使用移动命令:
move
AAAAAA a,l,p,r,c
您必须先移动磁带,然后才能在 9310 中将单元面板更改为磁带机面板或删除 SL8500 中的存储扩展模块。
步骤 1-4 的过程与从 ACS 中删除 LSM 之前移动磁带相同。
步骤 5:选择正在清空的空面板中的磁带,然后将其输出到文件。
运行定制 volrpt
,将正在清空的 LSM 中的所有磁带输出到文件。包括面板编号(在起始单元 ID 中)。
volrpt -f
custom_volrpt_input -l from_lsm_id > move_vols_list_1
其中,custom-volrpt_input
是:
VOLUME_ID 6 CELL_ID 14
选择正在清空的面板中的卷,然后将这些 vol_id 输出到 move_vols_list_2
。
使用 display volume
命令选择正在清空的面板中的磁带。
display volume * -home acs,lsm,panel,*,* -f volume >
move_vols_list_2
此操作选择面板上用 -home 参数标识的所有卷。行和列均带通配符。只有 vol_id 是输出,且该输出将写入文件。
编辑输出,删除所有前导空格和尾随空行。
注:
如果目标 LSM 与源 LSM 相同且多个面板正在清空,则某些卷将移回正在清空的面板。您必须从这些面板中选出卷并重复移动它们以清空面板。步骤 6-9 的过程与从 ACS 中删除 LSM 之前移动磁带相同。
步骤 10。使用 config lsm
lsm_id 或 acsss_config 重新配置 LSM。
将磁带从 LSM 0,4 移至 LSM 0,0 和 0,1
要将磁带从 LSM 0,4 移至 LSM 0,0 和 0,1,请使用 volrpt 创建一个包含 LSM 0,4 中磁带的列表文件,然后如下所示运行 moving.sh
实用程序:
输出样例:
$ moving.sh -f vol_list.txt -t 0,0 0,1 Number of free cells in LSM 0,0 : 308 Number of free cells in LSM 0,1 : 362 ----------------------------------------- Total number of free cells : 670 Total number of volumes to move : 7 Cartridge CAB001 moved to 0,0,3,0,0 Cartridge CAB002 moved to 0,0,4,0,0 Cartridge CAB003 moved to 0,0,5,0,0 Cartridge CAB004 moved to 0,0,6,0,0 Cartridge CAB005 moved to 0,0,7,0,0 Cartridge CAB006 moved to 0,0,8,0,0 Cartridge CAB007 moved to 0,0,9,0,0 Summary ======= Number of free cells remaining in LSM 0,0 : 301 Number of free cells remaining in LSM 0,1 : 362 ------------------------------------------------ Total number of free cells remaining : 663 Number of cartridges moved : 7 Number of cartridges not moved : 0
将磁带从 LSM 0,4、0,5、0,6 和 0,7 移至 LSM 0,0、0,1、0,2 和 0,3,
要通过将每个 LSM 移至相邻的 LSM 来优化性能,请执行以下操作:
使用 volrpt
准备包含 LSM 0,4、0,5、0,6 和 0,7 中磁带的列表文件。
同时在单独的 UNIX 命令终端中运行四个 moving.sh
实用程序。
单独的 moving.sh
实例之间不存在争用,因为源和目标 LSM 以及使用的直通端口各不相同:
输出样例:
moving.sh -f vol_list_0-4.txt -t 0,0 moving.sh -f vol_list_0-5.txt -t 0,1 moving.sh -f vol_list_0-6.txt -t 0,2 moving.sh -f vol_list_0-7.txt -t 0,3
moving.sh
实用程序可用于将非活动磁带移至归档 LSM。归档 LSM 是几乎没有磁带机、存储挂载磁带概率较低的磁带的 LSM。SL8500 中的顶部滑轨无法直接访问 CAP,因此是归档 LSM 的理想之选。
不必位于磁带库中的非活动磁带可以弹出,而仍需用于自动挂载的非活动磁带应移至归档 LSM。
要将非活动磁带移至归档 LSM,请完成以下过程:
标识非活动磁带。例如,要选择过去三个月内未访问过的磁带,请执行以下操作:
运行定制 volrpt,输出正在检查的 LSM 中的所有磁带并将结果输出到文件。
volrpt -f
custom_volrpt_input -l
from_lsm_id >
move_vols_list_1
其中,custom-volrpt_input 是:
VOLUME_ID 6
ACCESS_DATE 15
选择 access_date
早在三个月以前的磁带,并将这些 vol_id 输出到包含待移动卷的列表文件。
将非活动磁带移至归档 LSM。
moving.sh
move_vols_list_2 archival_lsm_id
此实用程序显示同期光纤通道 HBA 后面所有直接连接或通过 SAN 连接的磁带库。
probeFibre.sh
实用程序为每个通过光纤连接的磁带库显示型号、LUN ID 和全局端口名称 (World Wide Port Name, WWPN)。您甚至可以在每个磁带库创建 mchanger 设备之前先运行 probeFibre.sh
实用程序。
此实用程序需要 root
用户访问权限。
rdb.acsss
实用程序使用自动备份功能或 bdb.acsss
实用程序创建的备份来还原 ACSLS 数据库和 ACSLS 控制文件。ACSLS 控制文件位于 $ACS_HOME/data
中,并为 ACSLS 定义一些不同的环境变量。它们指定访问控制设置、暂存首选项、扩展存储 LSM、定制 volrpt
设置和卷属性(适用于 watch_vols
实用程序)等等。
如果要从磁带备份恢复,请务必在从磁带恢复 ACSLS 数据库和控制文件之前重绕或定位磁带设备。可以先使用以下命令之一重绕或将磁带定位到备份文件所在的准确位置,然后再运行 rdb.acsss
。
mt -f /dev/rmt/0mn rewind mt -f /dev/rmt/0mn nbsf 1
运行 rdb.acsss
时,会出现一个菜单,其中显示四个选项,如以下示例中所示。
Please enter the number followed by Return for your choice from the following menu. Press? followed by the Return key for help. 1: Restore from a list of current local disk backup files 2: Restore from a previous tape or file backup 3: Restore database only (do not include ACSLS control files) 4: Restore only ACSLS non-database control files E: Exit
从当前的本地磁盘备份恢复
本地磁盘上所有当前的 ACSLS 备份文件均会列出。
解释:数据库将恢复为备份。ACSLS 控制文件仅从备份恢复。备份保存在默认备份目录 ($ACSDB_BKUP
) 中。数据库将恢复到已列出并选择的任何数据库备份。通常会列出 8 个不同的日期,但具体取决于 acsss_config
中设置的数据库保留期。
用法:使用此项可恢复已损坏的数据库。如果使用此选项,所有备份均会显示,您可以恢复到显示的所有数据库备份。
示例:
Menu choice: 1 rcvr_previous.sh 2642: ACSLS database recovery started. You have taken backups on the following days. Please enter the corresponding date and time to the backup that you wish to recover from. ACSLS database and control files will be restored to that time. 2011-10-02 04:38:48 2011-10-03 00:00:01 2011-10-04 00:00:01 2011-10-05 00:00:01 2011-10-05 11:49:06 Please enter the recovery date and time (YYYY-MM-DD HH:MM:SS): HINT: You may copy and paste to enter the date and time.
必须在相关备份中输入所需的日期和时间,数据库将恢复到该时间点。
Restore from previous tape or file backup
解释:选择此选项可恢复已复制到其他文件系统(例如,NFS)或备份设备(例如,磁带)的数据库。将恢复 ACSLS 控制文件。
用法:用于硬件故障等灾害性事件,此时数据库必须恢复到该服务器甚至是完全不同的服务器。平台(操作系统版本/更新和 ACSLS 发行版/PUT 级别)必须相同。
Option 2: Menu choice: 2. rcvr_manual.sh 2635: ACSLS recovery started To recover the ACSLS environment either: - Mount a ACSLS backup tape in a tape device and specify this tape device with '-f tape_device', or - Specify a file name containing a ACSLS backup with '-f backup_file'.
ACSLS 数据库将从指定的文件中恢复。
请输入 -f [ backup_file | tape_device ]:
示例 1:使用 -f
backup_file 指定文件
Please mount tape (if used) and enter backup source: -f /export/backup/
my_backup.bak
这将恢复名为 my_backup.bak
的备份。数据库和 ACSLS 控制文件将会恢复,且 ACSLS 将置于运行备份时所处的状态中。
示例 2:恢复磁带设备上创建的备份
恢复磁带设备上创建的备份时使用相同的选项,但略有差异。针对磁带设备创建备份时,系统将在磁带上创建 tar 归档,但没有为其命名。从磁带恢复备份时,只提供磁带设备。
提示:应该使用未重绕磁带设备。
Please mount tape (if used) and enter backup source: -f /dev/rmt/0mn
这将转到设备 /dev/rmt/0mn
并验证是否存在有效的数据库备份。如果存在且有效,则将其恢复。
重绕磁带的过程:
尝试 rdb.acsss
之前,必须在备份文件所在的正确位置重绕或定位磁带。
注:
运行tar tvbf
命令之后,磁带将转到下一个块。如果打算在运行 tar tvbf
命令之后运行 rdb.acsss
,请确保已重绕/重新定位磁带。可以使用以下命令重绕/定位磁带:
mt -f /dev/rmt/0mn rewind or mt -f /dev/rmt/0mn nbsf 1 ---> SOLARIS
要在 bdb.acsss
之后验证磁带的内容,请使用以下命令:
tar tvbf 2048 /dev/rmt/0mn ---> SOLARIS
Restore database only (do not include ACSLS control files)
解释:该选项只能恢复数据。在某些环境中,您可能需要恢复 ACSLS 数据库(包括其数据),但无需恢复 ACSLS 非数据库控制文件。
Option 3: Menu choice: 3 To recover the ACSLS database data only, either: - Mount an ACSLS backup tape in a tape device and specify this tape device with '-f tape_device', or - Specify a file name containing an ACSLS backup with '-f backup_file'. The ACSLS database data will be recovered from the file specified. ****This option does not include the ACSLS control files**** Please enter -f [ backup_file | tape_device ]:
Restore only ACSLS non-database control files
解释:仅恢复 ACSLS 控制文件。恢复位于 $ACS_HOME/data/internal
目录中的任何文件之前,将对现有文件进行备份,并在结尾处附加 ".bak
" 扩展名。
$ACS_HOME/data/internal/dynamic_variables/dv_config.dat.bak $ACS_HOME/data/internal/dynamic_variables/dv_trace.dat $ACS_HOME/data/internal/release.vars.bak
位于 $ACS_HOME/data/external
中的文件情况并非如此。不会在恢复之前对 ACSLS 控制文件执行备份。
Option 4: Menu choice: 4 To recover the ACSLS non-database control files either: - Mount an ACSLS backup tape in a tape device and specify this tape device with '-f tape_device', or - Specify a file name containing an ACSLS backup with '-f backup_file'. ACSLS non-database control files will be recovered from the file specified. Please enter -f [ backup_file | tape_device ]:
示例:
Please enter -f [ backup_file | tape_device ]: -f $ACSDB_BKUP/my_file.bak
-f $ACSDB_BKUP/my_file.bak
从指定的文件中恢复 ACSLS 控制文件
-f /dev/rmt/0mn
从指定的磁带设备中恢复 ACSLS 控制文件
Exit
退出 rdb.acsss
实用程序时,会针对默认目录 $ACSDB_BKUP
启动备份。
showDevs.sh
实用程序显示与 /dev
目录中的每个 mchanger 实例关联的重要设备属性。重要属性包括磁带库型号和修订版级别、单元容量以及连接的磁带机数。可以使用以下选项显示附加属性。
此实用程序列出了连接到 ACSLS 的所有已配置磁带机。磁带机位置的简单列表按磁带机类型排序。如果使用详细 (-v
) 选项,则该实用程序将显示一份摘要,列出每个磁带机的磁带机状况、磁带机状态以及分配的逻辑状态。
stats_report
实用程序将生成磁带库卷统计信息报告。要运行此实用程序,必须以 acsss
用户身份登录。
stats_report [
vol_statsX.log ...]
其中:
vol_statsX.log -
通过使用此可选参数,可以指定一个或多个已归档卷统计信息日志文件名称。
(已归档文件的格式为 vol_statsX.log
(其中,0 <= X <= 8)。)
使用一个已归档文件作为输入:
$stats_report vol_stats0.log
将生成以时间为中心的报告和以磁带机为中心的报告,并将用户输入文件的名称附加到(如前文所示)报告文件名。
例如,如果指定 vol_stats0.log
,则 $ACS_HOME/log
目录中生成如下所示的报告:
vol_stats0_drive_centric.txt and vol_stats0_time_centric.txt
要一次性为所有已归档的卷统计信息文件生成报告,请遵循以下过程:
从单个文件生成完整日志
$cd $ACS_HOME/log $cat vol_stats8.log .... vol_stats0.log acsss_stats.log > vol_statsXXXX.log where vol_statsXXXX.log
(字符串 vol_stats
必不可少,但 XXXX 可以是任何内容,如 FULL 等)是所有 vol_statsX.log(其中 0 <= X <= 8)和 acsss_stats.log 采用逆序的串联文件。
运行 stats_report
$stats_report vol_statsXXXX.log
报告生成为 vol_statsXXXX_drive_centric.txt
和 vol_statsXXXX_time_centric.txt
。
如果未提供文件名作为参数,则将从 $ACS_HOME/log/acsss_stats.log
生成以时间为中心的报告和以磁带机为中心的报告。
stats_report
使用当前的 acsss_stats.log
准备两个卷统计信息报告。通过设置变量 LIB_VOL_STATS
启用磁带库卷统计信息收集。此操作可以通过 acsss_config
(选项 3)进程或命令行命令 dv_config -p LIB_VOL_STATS
完成。然后,当日志达到默认大小 500 KB 时,ACSLS
将自动滚动并维护 9 个 acsss_stats.log
文件。
日志文件的大小和要保留的文件数通过变量 LIB_STATS_FILE_NUM
和 VOL_STATS_FILE_SIZE
进行控制。设置这些变量使用的方法与上述的 LIB_VOL_STATS
相同。
两种报告类型是:
drive_centric.txt
此报告包含磁带机的排序列表。每条磁带机记录均包含挂载到该磁带机的所有磁带、请求者、请求时间以及挂载持续时间。
time_centric.txt
注:
此报告包含每隔一小时列出的磁带机资源使用情况。某个时间段内的每条记录均包含请求者、特定的磁带机、该时间段内针对该磁带机的挂载次数以及磁带机在这一小时之内的持续使用时间。如果磁带机在某个时间段内的使用时间超过 60 分钟,则表示挂载跨越两个时间段,因此不会在第二个时间段中列出。由 stats_report
创建的第一个报告是磁带机视图。
注:
如果日志中存在 DISMOUNT
记录,但没有相应的 MOUNT
记录,原因可能如下:
日志已更新,或者
操作因某个未知的日志记录问题已记录。
在这种情况下,生成的报告中将忽略该记录。
如果日志中存在 MOUNT
记录,但没有相应的 DISMOUNT
记录,原因可能如下:
DISMOUNT
尚未发生,或者
操作因某个未知的日志记录问题未记录。
在这种情况下,挂载持续时间设置为 -1,这指示上面提到的情况。在以时间为中心的报告中计算总挂载持续时间时,将忽略这些记录。
如果从夏令时转到标准时间,可能会出现算出的挂载持续时间为负的情况。为避免出现此类情况,将采用挂载持续时间的绝对值。
userAdmin.sh
菜单驱动的实用程序管理 ACSLS GUI 用户密码。它位于 $ACS_HOME
/install
目录中。您可以添加用户、删除用户、列出用户以及更改用户密码。必须运行 WebLogic 才能使用该实用程序。如果 WebLogic 尚未运行,该实用程序会启动 WebLogic 并确认联机后才显示菜单。
此实用程序由 root
运行,并需要 acsls_admin
验证。ACSLS 8.4 安装期间将配置 acsls_admin
用户帐户。
添加用户或更改任何用户的密码时,系统会提示您输入用户名并指定密码。该密码根据 WebLogic 的大小和合法字符标准进行验证。
当用户删除之后,该帐户仍可具有活动 GUI 会话。注销或终止会话后,用户将无法重新登录。重新启动 GUI 是强制立即终止会话的唯一方法。提供了用于重新启动 ACSLS GUI 的选项(这将终止所有会话)。
不能使用此实用程序更改 acsls_admin
用户的密码。如果需要更改或重置 acsls_admin
的密码,则应执行以下操作:
运行 wlinstall.sh
实用程序。
$installDir/wlinstall/wlinstall.sh
运行 userAdmin
.sh
以重新建立剩余的用户帐户。
userAdmin.sh
# ./userAdmin.sh ACSLS GUI User Administration Weblogic is online. Please enter the acsls_admin password: Authenticating.........Connected! Menu: 1) Add a user account. 2) Remove a user account. 3) Change a user password. 4) List users. 5) Restart ACSLS GUI. 6) Exit. Please select by number: 1 --- Add a User --- Please enter the id of the user you wish to add: acsss Do you wish to add a GUI account for user 'acsss'? (y/n) y Please assign a password for 'acsss'. Passwd: Please confirm password: Passwd: Connecting.......... User accounts has been added. Please select by number: 2 --- Remove a User --- Please enter the name of the user you wish to remove: accounts Do you wish to remove the ACSLS GUI account for user 'accounts'? (y/n) y Connecting.......... The account for accounts has been removed for future logins.> To disable any current login session for accounts, you must restart the ACSLS GUI. Please select by number: 3 --- Change Password --- Enter the user name: acsss Passwd: Please confirm password: Passwd: Connecting.......... Password changed for acsss! Please select by number: 4 --- List Users --- Connecting.......... Configured WebLogic users: OracleSystemUser acsls_admin acsss Please select by number: 5 Do you wish to restart the ACSLS GUI (affects all users)? (y/n) y Restarting: Disabling WebLogic ........................... Enabling WebLogic ................................ Please select by number: e #
volrpt
实用程序可创建卷报告。
-s
指定排序顺序。如果不指定此选项,则默认值为按卷 ID 排序。如果指定此选项,则必须指定以下值之一:
vol
按卷 ID 排序。
loc
按卷起始位置排序。
use
按卷使用情况(挂载次数)排序。
-d
指定输出不包含分页符或标头信息。输出可用作 pr
等其他程序的输入。
-f
filename
filename 指定定制的 volrpt 模板。
-Z
零填充标识符字段。
-a
将报告限定于指定的 ACS。可以指定多个 ACS(使用空格分隔 acs_id)。
-l
将报告限定于指定的 LSM。可以指定多个 LSM(使用空格分隔 lsm_id)。
-v
将报告限定于指定的卷(或卷范围)。可以指定单个 vol_id
、用空格分隔的 vol_id 列表或由 vol_id-vol_id
指示的卷范围。
identifier_list
如 -v、-a 和 -l 选项所述。这是 ACS、LSM 和卷(或卷范围)的列表。
-i
报告所有卷,包括缺失的和已弹出的磁带。
如果未指定此选项,则不报告缺失的和已弹出的磁带。
使用 volrpt
实用程序可创建磁带库磁带的报告,其中包括物理位置、历史记录、属性和使用情况。还可以在恢复数据库之后使用 volrpt 验证数据库。可以使用 -a、-l
或 -v
选项为报告指定 ACS、LSM 或磁带。如果不指定其中任何一个选项,volrpt
将仅报告 ACS 0。
注:
前导和尾随空格的特殊注意事项。为包含前导或尾随空格的卷指定参数时,您应将这些参数括在单引号内。要确保单引号将从一个 shell 组件传递到另一个 shell 组件,必须使用转义符标记该引号。在 UNIX 中,标准的转义符是反斜杠 (\
)。
示例:
要在需要引用含前导空格的卷 ID 的本地计算机上制定 volrpt
命令,请按如下方式提交该命令:
volrpt -v \'0000\'-\'9999\’
To submit the same command through a remote shell (rsh) you would enclose the entire argument inside double quotes:
rsh
<acsls_hostname>
-l acsss bin/volrpt -v "\' 0000\'-\' 9999\'"
以下示例显示了标准卷报告,其中包含卷 ID、位置、标签类型、介质类型和使用情况历史记录对应的字段。
VOLUME REPORT UTILITY 2002-06-30 14:01:21 TOTAL VOLUMES: 400 SEQUENCE: sort by volume identifier Volume Home LabelVolume Times|---Entered---||--Last Used--| Label Location AttrType/Media MountedDateTime DateTime CLN000 0,0,1,0,3 ExtC/STK1U 108/22/0109:30 10/04/01 14:26 RB0000 0,1,2,1,10Ext.D/STK1R 310/01/0108:16 10/01/01 08:18 RB1400 0,0,10,1,3Ext.S/STK1R 24310/01/0109:30 10/06/01 11:04 RB1401 0,0,10,3,5Virt.D/STK1R 1210/01/0103:29 10/05/01 23:11 ” " " " " "" " " " " " "" " " " " " "" TB1440 0,1,3,1,9 Ext.D/STK2P 4308/12/0109:1109/28/0117:52 " " " " " "" " " " " " "" " " " " " ""
在 Volume Type/Media
列中:C 表示清洗磁带;D 表示数据磁带;P 表示磁带机报告为已耗尽的清洗磁带;S 表示暂存磁带。
使用 -f
filename
选项可创建定制报告;有关更多信息,请参见创建卷统计信息报告日志记录。
$ACS_HOME/data/external/volrpt/owner_id.volrpt
是一个样例输入文件,可运行它并将其用作创建定制卷报告的模板。还可以将定制的卷报告保存在 $ACS_HOME/data/external/volrpt
目录中。
可以使用标准 UNIX 重定向方法将卷报告重定向到文件:
volrpt > file
默认情况下,volrpt 仅报告列表中的第一个 ACS。要报告 ACS 0 和 ACS 1 中的磁带,请输入以下命令:
volrpt -a 0 1
要报告 LSM 0,1 和 2,1 中按起始单元位置排序的磁带,请输入以下命令:
volrpt -s loc -l 0,1 2,1
注:
如果成功完成,volrpt
将显示指定的卷报告。如果指定 -f
选项且 volrpt
找不到指定文件,则 volrpt
会将消息输出到 stderr
并退出。或者,您应指定多个输入文件。对于输入文件中的字段错误,volrpt
会将消息输出到 stderr
并忽略错误中的行,但不退出。
如果在指定的卷 ID 列表、范围或磁带库组件中未找到磁带,则 volrpt
将返回 no volumes found
消息。
如果未指定参数,则使用 ACS 0 的默认值。
如果通过 -a、-l
或 -v
选项指定了磁带库组件,但未找到卷,则将显示如下所示的消息:
-a
选项 (ACS)
消息:
如果提供了单个 acs_id
、但不存在卷,则将显示以下错误:No Volumes found for ACS: (<
acsid>)
示例:
$ volrpt -a 2 No Volumes found for ACS: (2)
如果提供了多个 acs_id
、但它们均没有任何卷,则将显示以下错误:
No Volumes found for ACS: (<
acsid1>)(<
acsid2>)
示例:
$ volrpt -a 0 1 No Volumes found for LSM: (0) (1)
-l
选项 (LSM)
消息:
如果提供了单个 lsm_id
、但不存在卷,则将显示以下错误:No Volumes found for LSM: (<
lsmid>)
示例:
$ volrpt -l 1,1 No Volumes found for LSM: (1,1)
如果提供了多个 lsm_id、但它们均没有任何卷,则将显示以下错误:No Volumes found for LSM: (<
lsmid1>)(<
lsmid2>)
示例:
$ volrpt -l 1,1 1,2 No Volumes found for LSM: (1,1) (1,2)
-v
选项 (VOLUME)
消息:
如果提供了单个 volid
、但不存在卷,则将显示以下错误:Volume(s) not: (<
volid>)
示例 :
$ volrpt -v BBB112 No Volumes found: (BBB112)
如果提供了多个 volid、但它们均没有任何卷,则将显示以下错误:Volume(s) not found: (<
volid1>)(<
volid2>)
示例:
$ volrpt -v BBB112 BBB114 No Volumes found: (BBB112) (BBB114)
-v
选项还可用于卷范围,并在不存在卷时生成类似的消息。
如果提供了单个卷范围、但不存在卷,则将显示以下错误:Volume(s) not: (<
volrange>)。
示例:
$ volrpt -v BBB112-BBB116 No Volumes found: (BBB112-BBB116)
如果提供了多个卷范围、但不存在卷,则将显示以下错误:Volume(s) not: (<
volrange1>) (<
volrange2>)
示例:
$ volrpt -v BBB112-BBB116 BBB220-BBB224 No Volumes found: (BBB112-BBB116) (BBB220-BBB224)
尚未配置 ACS 或 LSM 时
volrpt
与不存在的 acs_id 或 lsm_id 一起使用时,将根据标识符显示一条消息。
-a
(ACS)
未配置 ACS 标识符 (<acsid>)
-l
(LSM)
未配置 LSM 标识符 (<lsmid>)
请参见创建卷统计信息报告日志记录。
此实用程序对以下卷应用预定义策略:
新装入的卷
通过审计或磁带恢复所搜索到的卷
通过审计、磁带恢复或装入
重新激活的卷
以下文件中定义了这些策略:
$ACS_HOME/data/external/vol_attr.dat
此文件包含每个记录卷的用户定义卷 ID 或卷范围和用户指定策略的列表。对于该文件中列出的每个卷或卷范围,您可以在装入卷之后定义卷所有权、池关联、首选 LSM 位置和/或逻辑磁带库分配。vol_attr.dat
文件中详细说明了定义策略的具体说明。
watch_vols
实用程序使用 acsss_stats.log
标识是否存在新装入的卷,或者是否存在审计期间或通过磁带恢复所搜索到或重新激活的卷。要启用此功能,必须通过 acsss_config
(选项 3)启用卷统计信息。启用卷统计信息之后,watch_vols
将监视 acsss_stats.log
的轨迹,查找与在 vol_attr.dat
中定义的项匹配的卷。只要找到匹配项,就会自动应用为该卷定义的策略。
卷 ID 必须遵循以下规则:
每行一个 vol_id
或卷范围。
vol_id 必须是有效的 ACSLS 卷 ID。
如果 vol_id 包含尾随或前导空格,则必须用下划线 (_) 表示。例如:_V234_。
可以通过调用不带参数的 watch_vols
来检查该实用程序的运行状态。如果您不确定 watch_vols
的状态(正在运行或已停止),则不带参数的 watch_vols
命令将显示当前的状态。
watch_vols
有两个选项 start
和 stop
。
watch_vols start
调用 start 参数时,watch_vols
将查看 vol_attr.dat
中定义的策略。如果格式或语法中存在错误,则 watch_vols
将显示该错误并提示您对 vol_attr.dat
进行必要的更正。一旦 watch_vols 接受定义的策略,该实用程序将调用要在后台运行的守护进程。如果 ACSLS 正在运行,该守护进程将继续运行。只要重新启动 ACSLS,它就会自动启动。
您可以随时更新 vol_attr.dat
中的策略表。无需停止 watch_vols
即可更新该策略。只需运行 watch_vols
start
,便可将更新提交给正在运行的程序。
watch_vols stop
此命令用于停止对指定的卷进一步强制执行策略。
所有 watch_vols
活动的日志保留在以下日志文件中:
$ACS_HOME/log/watch_vols_event.log
对卷所有权、pool_id
或 LSM 起始位置所做的每个更改均记录在此文件中。