DEFINE VOLUME(定义存储池中的卷)

使用此命令可将随机或顺序存取卷分配到存储池。

定义与 FILE 设备类相关联的随机存取 (DISK) 存储池卷或顺序存取存储池卷时,可以让服务器先创建卷再进行分配。 或者可以使用空间触发器在超出了预先确定的空间利用率阈值时创建预先分配的卷。 空间触发器的相关详细信息,请参阅DEFINE SPACETRIGGER(定义空间触发器)。 对于与非 DISK 的设备类或非 FILE 的设备类型关联的卷,可以使用 DEFINE VOLUME 命令将已经创建的卷分配到存储池。

Oracle Solaris operating systems切记: 原始分区通常提供最佳性能,但是在 Solaris 10 上运行的 IBM® Tivoli® Storage Manager 服务器不支持 ZFS 原始分区。

AIX operating systemsLinux operating systems使用由 z/OS® 媒体服务器 管理的存储器的 FILE 设备类时,不必对卷进行格式化或定义。 如果通过使用 DEFINE VOLUME 命令来定义 FILE 设备类的卷,那么在卷第一次打开使用之前,z/OS 媒体服务器 不会为卷分配空间。

注意:Tivoli Storage Manager 清空卷(例如在到期或收回后)之后,使用 DEFINE VOLUME 命令创建的 z/OS 媒体服务器 的卷在物理上保持完整或已分配。 对于 FILE 卷,当清空该卷时,系统不会放弃 DASD 空间。 如果存储池需要空卷或填充卷,那么可以使用 FILE 卷。 相反,逻辑上的空磁带卷与物理上的空磁带卷相同。 FILE 和磁带卷在 Tivoli Storage Manager 中保持为已定义。 相反,SCRATCH 卷(包括为 SCRATCH FILE 卷分配的物理存储)将在清空时返回到系统。

为了在顺序存取存储池中创建空间,可以定义卷,或者允许服务器根据需要请求临时卷,这可以通过存储池的 MAXSCRATCH 参数指定。 对于与 FILE 设备类相关联的存储池,服务器可以根据需要,使用存储池空间触发器创建专用卷。 对于 DISK 存储池,不适用临时机制。 但是,可以用先创建卷再将它们定义到服务器的方法来创建空间。 或者,您可以让服务器创建使用存储池空间触发器的卷。

在定义存储池中与库关联的卷时,Tivoli Storage Manager 不会验证卷名是否存在。 在数据写入卷之前,定义的卷有“0”EST 容量。

注意:Tivoli Storage Manager 服务器定义存储池卷之后,卷大小就不可更改。
AIX operating systemsHP-UX operating systemsOracle Solaris operating systemsWindows operating systems
  • AIX operating systems如果通过 SMIT 扩展原始逻辑卷或通过使用操作系统命令或实用程序改变卷文件大小的方式来更改 Tivoli Storage Manager 卷的大小,那么服务器可能无法正确初始化并且可能丢失数据。
  • HP-UX operating systems如果通过扩展原始逻辑卷或通过使用操作系统命令或实用程序改变卷文件大小的方式来更改 Tivoli Storage Manager 卷的大小,那么服务器可能无法正确初始化并可能丢失数据。
  • Oracle Solaris operating systemsWindows operating systems如果通过使用操作系统命令或实用程序改变卷文件大小的方式来更改 Tivoli Storage Manager 卷的大小,那么服务器可能无法正确初始化并可能丢失数据。
限制:
  • 不能使用此命令(参数设置为 RECLAMATIONTYPE=SNAPLOCK)定义存储池中的卷。 这种类型的存储池中的卷将使用存储池定义中的 MAXSCRATCH 参数进行分配。
  • 无法在使用 CENTERA 设备类定义的存储池中定义卷。
  • Linux operating systems不能将原始逻辑卷用于存储池卷。

如果发出 DELETE VOLUME 命令,那么不会从文件空间中除去使用 DEFINE VOLUME 命令分配的物理文件。

特权级别

要发出此命令,必须具有系统权限、不受限制的存储权限或该卷定义到的存储池的受限制的存储权限。

语法

阅读语法图跳过直观语法图
>>-DEFine Volume--pool_name--volume_name------------------------>

   .-ACCess--=--READWrite-------.   
>--+----------------------------+------------------------------->
   '-ACCess--=--+-READWrite---+-'   
                +-READOnly----+     
                +-UNAVailable-+     
                |         (1) |     
                '-OFfsite-----'     

>--+------------------------------------------------+----------->
   |                           .-Wait--=--No------. |   
   '-Formatsize--=--megabytes--+------------------+-'   
                               '-Wait--=--+-No--+-'     
                                          '-Yes-'       

   .-Numberofvolumes--=--1----------.   
>--+--------------------------------+--------------------------->
   |                 (2)            |   
   '-Numberofvolumes------=--number-'   

>--+---------------------------+-------------------------------><
   |          (3)              |   
   '-LOcation------=--location-'   

注:
  1. 此值仅对分配到副本存储池的卷有效。
  2. 此参数仅对 DISK 或 FILE 卷有效。
  3. 此参数仅对顺序存取卷有效。

参数

pool_name(必填)
指定分配到卷的存储池的名称。
volume_name(必需)
指定要定义的存储池卷的名称。 如果为 NUMBEROFVOLUMES 参数指定的数字大于 1,那么将卷名用作前缀来生成多个卷名。 指定的卷名取决于存储池使用的设备的类型。

服务器出于任何目的而使用的每个卷都必须具有唯一的名称。 这一需求适用于所有卷,无论卷是用于存储池,还是用于诸如数据库备份或导出之类的操作。 这一需求还适用于驻留在不同库中但由同一服务器使用的那些卷。

AIX operating systemsHP-UX operating systemsLinux operating systemsOracle Solaris operating systems切记: 卷名不能包含嵌入的空格或等号。
Windows operating systems切记: 除 DISK 或 FILE 卷外,卷名不能包含嵌入的空格或等号。
请参阅下表以了解卷名称需求:
表 1. 针对磁盘的卷名需求
卷名需求 示例
AIX operating systemsLinux operating systemsWindows operating systems包含卷数据的文件的名称,带有标准路径名或相对于当前工作目录的路径名。 Oracle Solaris operating systems常规文件名;或者如果使用的是原始分区(非 ZFS), 那么为指向字符特殊文件的符号链接。 常规文件名可以是标准路径名或相对于当前工作目录的路径名。 HP-UX operating systems常规文件名;或者如果使用的是原始逻辑卷,那么为字符特殊文件。 常规文件名可以是一个全限定路径名,也可以是与当前的工作目录相对的路径名。

Windows operating systems如果名称中包含嵌入的空格、等号或其他特殊字符,那么将其用引号括起来。

Oracle Solaris operating systems注意: 如果数据存在于原始分区上,那么服务器无法总是检测到。 如果将卷定义到该分区,现有数据可能被破坏。
HP-UX operating systems注意: 如果数据存在于原始逻辑卷中,那么服务器不能总是进行检测。 如果将卷定义为这种逻辑卷,那么现有数据可能会毁坏。
AIX operating systemsLinux operating systems
/usr/storage/sbkup01.dsm
AIX operating systems如果在使用 AIX® 逻辑卷,那么输入路径名为:
/dev/rxxx
其中 xxx 是逻辑卷名
Windows operating systems
"c:\program files\tivoli\tsm\server\data3.dsm"
Oracle Solaris operating systems具有全限定名的常规文件名:
/opt/tivoli/tsm/server/bin/sbkup01.dsm
Oracle Solaris operating systems以下列格式输入一个到字符特殊文件的符号联接:
/dev/.../rdsk/.../fn
其中 /... 是零个或多个目录,而 fn 是文件名。 例如:
/dev/rdsk/c1t3d0s6
HP-UX operating systems具有全限定名的常规文件名:
/storage/sbkup01.dsm
HP-UX operating systems以下列格式输入字符方式特殊文件:
/dev/vg/rxxx
其中 vg 是卷组名,而 xxx 是逻辑卷名。 例如:
/dev/groupa/rdsa
表 2. 针对 FILE 的卷名需求
卷名需求 示例
包含卷数据的文件的名称,可以带有全限定路径名或相对于该设备类的 DIRECTORY 参数中标识的目录的路径名。

Windows operating systems如果名称中包含嵌入的空格、等号或其他特殊字符,那么将其用引号括起来。

请将 FILE 卷放入 DEFINE DEVCLASS 命令的 DIRECTORY 参数指定的某个目录。 否则,存储代理程序可能无权访问这些卷。 有关详细信息,请参阅 DEFINE PATH(定义路径)

AIX operating systemsHP-UX operating systemsLinux operating systems
/data/fpool01.dsm
Windows operating systems
"f:\data storage\fpool01.dsm"
Oracle Solaris operating systems
/opt/tivoli/tsm/server/bin/fpool01.dsm
AIX operating systemsLinux operating systems
表 3. z/OS 媒体服务器:FILE 的卷名需求
卷名需求 示例

对于用于 z/OS 媒体服务器 服务器的 FILE 卷,指定数据集名称。 数据集合名可以包括一个或多个限定符,限定符用句点分开。 限定字符可以包含多达 8 个字符。 数据集名的最大长度为 44 个字符。 每个限定字符的第一个字母必须是阿拉伯数字或货币符号(@,#,$),其后面是阿拉伯数字、货币符号、连字符或数字字符。

要在 z/OS 系统上提交该卷时分配关联的 VSAM 线性数据集,高级别限定符 (HLQ) 一般由其中运行 z/OS 媒体服务器 的系统上 SMS 策略约束内的特定 ACS 例程过滤。

HLQ 的行为类似于临时请求上 PREFIX 名称的行为。 HLQ 一般由 DFSMS 用于影响分配属性,例如在已经分配到文件卷的空间已用尽时预期扩展的数据集的“扩展可寻址性”。

如果数据集不存在,那么在该卷用于特定 Tivoli Storage Manager 存储操作时,服务器将创建该数据集。 定义卷时,未创建数据集。 因为 z/OS 媒体服务器 复用卷或 VSAM LDS(如果它存在于分配时间),那么定义卷时会造成数据丢失。
要点: 要允许 Tivoli Storage Manager 生成卷名称,请考虑使用 SCRATCH 卷。
AIX operating systemsLinux operating systems
SERVER1.BFS.POOL3.VOLA
表 4. 针对磁带的卷名需求
卷名需求 示例

使用 1 - 32 个字母数字字符。

卷名不能包含任何嵌入的空格或等号。

DSMT01
AIX operating systemsLinux operating systems
表 5. z/OS 媒体服务器:磁带的卷名需求
卷名需求 示例

对于盒式磁带,指定 1 到 6 个字母数字字符的磁带卷名。 服务器将磁带卷名转换为大写。

卷名不能包含任何嵌入的空格或等号。

服务器出于任何目的而使用的每个卷都必须具有唯一的名称。 这一需求适用于所有卷,无论卷是用于存储池,还是用于诸如数据库备份或导出之类的操作。 该需求也适用于位于不同 z/OS 介质库中,但是由同一服务器使用的那些卷。

DSMT01
表 6. 针对 REMOVABLEFILE 的卷名需求
卷名需求 示例
1–6 个字母数字字符

服务器将卷名转换为大写。

DSM01
ACCess
指定客户机节点和服务器进程(如迁移)如何访问副本存储时卷中的文件。 此参数是可选参数。 缺省值为 READWRITE。 可能的值包括:
READWrite
指定客户机节点和服务器进程可读或写存储在卷中的文件。
READOnly
指定客户机节点和服务器进程仅可读取存储在此卷上的文件。
UNAVailable
指定客户机节点或服务器进程无法访问存储在此卷上的文件。

如果将某随机存取卷定义为 UNAVAILABLE,那么不能将此卷联机。

如果将某个顺序存取卷定义为 UNAVAILABLE,那么服务器不会尝试访问此卷。

OFfsite
指定卷位于不能安装的非现场位置。 只可对副本存储池或活动数据存储池中的卷指定此值。
使用此值有助于跟踪位于非现场位置的卷。 服务器对指定为非现场的卷进行不同处理:
  • 服务器不能对指定为非现场的卷生成安装请求。
  • 服务器通过从其他存储池检索文件回收或移动非现场卷中的数据。
  • 服务器不会自动从副本存储池或活动数据存储池中删除空的非现场临时卷。
LOcation
指定卷的位置。 此参数是可选参数。 只能对顺序存取存储池中的卷指定该参数。 位置信息的最大长度可以是 255 字符。 如果在位置中包含空格,那么必须用引号将该位置括起来。
Formatsize
指定在一个步骤中创建并格式化的随机存取卷或 FILE 卷的大小。 此值是以兆字节为单位指定的。 最大大小为 8 000 000 MB(8 千兆字节)。 如果符合以下任一条件,那么此参数是必需的:
  • 指定了单个 FILE 或 DISK 卷,将在一个步骤中创建并格式化该卷。
  • NUMBEROFVOLUMES 参数的值大于 1,并且正在创建 DISK 卷。
  • NUMBEROFVOLUMES 参数的值大于 1,并且 FORMATSIZE 参数的值小于或等于 DEFINE DEVCLASS 命令的 MAXCAPACITY 参数的值。

如果是在 z/OS 媒体服务器 上分配卷,那么此参数无效。

对于 FILE 卷,必须指定小于或等于与存储池相关联的设备类的 MAXCAPACITY 参数值的值。

不能对多个预定义的卷使用此参数。 除非指定了 WAIT=YES,否则该操作将作为后台进程完成。

Numberofvolumes
指定在一个步骤中创建并格式化的卷数。 此参数仅适用于带 DISK 或 FILE 设备类的存储池。 此参数是可选参数。 缺省值为 1。 如果指定的值大于 1,那么还必须指定 FORMATSIZE 参数的值。 指定 1 到 256 之间的一个数。

如果是在 z/OS 媒体服务器 上分配卷,那么此参数支持的唯一值是缺省值 1。

如果 NUMBEROFVOLUMES 参数值大于 1,那么指定的卷名称将带有数字后缀,以生成各个名称(例如 tivolivol001 和 tivolivol002 )。 务必选择一个卷名,这样在追加后缀之后,则创建目标文件系统的有效文件名。

要点: 必须确保存储代理程序可以访问新近创建的 FILE 卷。 有关更多信息,请参阅 DEFINE PATH(定义路径)
Wait
指定卷的创建和格式化操作是在前台还是在后台完成。 此参数是可选参数。 除非还指定了 FORMATSIZE 参数,否则将其忽略。
No
指定卷的创建和格式化操作在后台完成。 还指定了格式大小时,NO 值是缺省值。
Yes
指定卷的创建和格式化操作在前台完成。
切记: 不能从服务器控制台指定 WAIT=YES

示例:使用后台进程为磁盘存储池定义 100 MB 的新卷

在名为 BACKUPPOOL 的磁盘存储池中创建 100 MB 的卷。 AIX operating systemsHP-UX operating systemsLinux operating systemsOracle Solaris operating systems卷名称为 /var/storage/bf.dsm. Windows operating systems卷名称为 j:\storage\bf.dsm 将卷作为后台进程而创建。AIX operating systemsHP-UX operating systemsLinux operating systemsOracle Solaris operating systems
define volume backuppool 
/var/storage/bf.dsm formatsize=100
Windows operating systems
define volume backuppool j:\storage\bf.dsm formatsize=100

示例:将卷定义到磁盘存储池,访问方式为读写

将名为 POOL1 的存储池分配给磁带设备类。 定义名为 TAPE01 的卷到此存储池,存取方式为 READWRITE。
define volume pool1 tape01 access=readwrite

示例:将卷定义到文件存储池

将名为 FILEPOOL 的存储池分配到设备类型为 FILE 的设备类。 AIX operating systemsHP-UX operating systemsLinux operating systemsOracle Solaris operating systems将名为 filepool_vol01 的卷定义至该存储池。Windows operating systems将名为 fp_vol01.dsm 的卷定义至该存储池。 AIX operating systemsHP-UX operating systemsLinux operating systemsOracle Solaris operating systems
define volume filepool /usr/storage/filepool_vol01
Windows operating systems
define volume filepool j:\storage\fp_vol01.dsm

示例:使用后台进程为带有最大容量为 5 GB 的设备类的文件存储池定义 10 个卷

在使用 FILE 设备类的顺序存储池中定义 10 个卷。 存储池名为 FILEPOOL。 与此存储池关联的设备类的参数值 MAXCAPACITY 为 5GB。 创建必须发生在后台。
define volume filepool filevol numberofvolumes=10 formatsize=5000

Tivoli Storage Manager Server 创建从 filevol001 到 filevol010 的卷名称。

这些卷是在与存储池 filepool 关联的设备类的 DIRECTORY 参数所指定的目录中创建的。 如果为设备类指定了多个目录,那么可在列表内的任何目录中创建各个卷。

相关命令

表 7. 与 DEFINE VOLUME 相关的命令
命令 描述
DEFINE STGPOOL 将存储池定义为指定的服务器存储介质集合。
DELETE VOLUME 从存储池中删除卷。
QUERY VOLUME 显示有关存储池卷的信息。
UPDATE DEVCLASS 更改设备类的属性。
UPDATE LIBVOLUME 更改存储卷的状态。
UPDATE VOLUME 更新存储池卷的属性。