mstor 特殊文件
用途
提供对虚拟可移动磁盘设备的访问权。
描述
姆斯托尔 特殊文件提供对虚拟可移动磁盘设备的块和字符 (原始) 访问,这些设备由 Virtual I/O Server (VIOS) 上的通用串行总线 (USB) 大容量存储设备 (例如 RDX ,闪存驱动器和存储设备) 提供支持。 将针对 IBM® RDX 验证 AIX® 操作系统读写虚拟可移动磁盘驱动器的能力,并使用行业标准原始设备制造商 (OEM) USB 闪存驱动器样本作为 VIOS 上的支持存储。
每次只能将支持 USB 大容量存储设备导出到一个客户机。 如果用户想要将支持设备导出到另一个客户机,那么必须使用 Rmdev 命令从旧客户机中除去虚拟可移动磁盘设备,然后必须将支持设备重新映射到 VIOS 上的新客户机。
通过使用逻辑名 (例如 mstor0 和 mstor1 ) 来配置虚拟可移动磁盘驱动程序。 该驱动程序同时提供 原始 和 块 特殊文件。 例如, mstor0 文件的原始特殊文件是 /dev/rmstor0 文件,块特殊文件是 /dev/mstor0。 要在虚拟可移动磁盘上安装原始 I/O ,所有数据传输都需要虚拟可移动磁盘设备的块长度 (512 字节) 的倍数。 并且,对虚拟可移动磁盘设备驱动程序执行的所有 寻求 子例程都必须将文件偏移量指针设置为指定逻辑块大小的倍数值。
虚拟可移动磁盘设备不能与 AIX 逻辑卷管理器 (LVM) 或 AIX 日志文件系统 (JFS) 或 JFS2 文件系统配合使用。 虚拟可移动磁盘设备可以与用户定义文件系统 (UDFS) 文件系统配合使用,可以与备份命令 (例如 焦油 和 savevg 命令) 配合使用,也可以与介质访问命令 (例如 德 命令) 配合使用。 用户还可以在设备上创建 Mksysb 映像,并可以从该设备启动和安装。 在 AIX 操作系统上,它可以用作内存转储设备。
虚拟可移动磁盘设备依赖于已连接的设备或介质以及 VIOS 上可用的设备或介质。 当支持 USB 磁盘设备与 VIOS 断开连接,而该设备在 AIX 客户机上仍在使用时,该设备在客户机上变为不可用。 在将 USB 设备重新连接至 VIOS 时,必须通过除去较旧的映射,然后创建新的映射来重新映射设备,并在 AIX 客户机上运行 cfgmgr 命令以使设备在客户机上再次可用。 可以通过运行以下命令来完成此任务:
- 要获取当前映射,请运行以下命令:
lsmap -all - 要除去当前映射,请运行以下命令:
rmvdev -vtd VTD of the device from lsmap - 要创建新映射,请运行以下命令:
mkvdev -vdev usb device -vadapter virtual adapter name
cfgmgr可移动磁盘设备定义了 预防性弹出 属性,该属性的缺省值为 是 ,并且可以使用系统管理界面工具 (SMIT) 界面或 奇德夫 命令进行更改。 如果用户将 预防性弹出 属性的值设置为 是,那么会导致在打开和关闭设备时执行 "媒体弹出阻止" 和 "媒体弹出允许" 操作。 仅当支持设备具有可弹出的介质并且闪存驱动器不支持此操作时,此操作才适用。
如果支持设备具有可弹出的介质,并且 预防性弹出 属性设置为 不,并且该介质是从已导出的 UDFS 文件系统的磁带机中弹出的,那么无法访问盒式磁带上的文件。 要再次访问这些文件,必须将从虚拟可移动磁盘驱动器安装的文件系统卸载。 必须退出在这些文件系统上具有处于打开状态的文件的进程。 必须移动在这些文件系统上具有当前目录的进程。 如果这些操作失败,请执行强制卸装操作。
与设备相关的子例程
| 子例程 | 描述 |
|---|---|
| ioctl 子例程 | 虚拟可移动磁盘设备使用 SCSI 磁盘设备驱动程序进行操作。 它支持 SCSI 磁盘驱动程序所支持的 国际奥克茨尔斯 操作,例如 IOCINFO , DKIOLCMD , DK_PASSTHRU , DKPMR , DKAMR 和 DKEJECT 操作。 |
| openx 子例程 | 支持 奥佩克斯 子例程以向 开 序列提供更多功能。 奥佩克斯 子例程需要适当的权限才能启动。 如果试图在没有访问权限的情况下运行该子程序,可能会导致返回值为 -1 ,同时 Erno 全局变量被设置为 EPERM。 |
错误代码
| 错误代码 | 描述 |
|---|---|
| EACCES | 在诊断方式下尝试了除 ioctl 或 关闭 以外的子例程。 |
| EACCES | 在诊断方式下尝试了正常的读调用。 |
| EFAULT | 用户地址不正确。 |
| EBUSY | 目标设备由另一个发起方保留。 |
| EINVAL | 读 子例程的 nbyte 参数不是块大小的偶倍数。 |
| EINVAL | 已尝试配置仍处于打开状态的设备。 |
| EINVAL | 输入了不正确的配置命令。 |
| 电子文件 | 对于已具有允许的最大开放式设备数的 SCSI 适配器,将尝试进行开放式呼叫。 |
| ENOTREADY | 在连接至 VIOS 的磁带机中没有任何盒带。 |
| ENODEV | 尝试访问一个未定义的设备。 |
| ENODEV | 试图关闭一个未定义的设备。 |
| EMEDIA | 媒体已更改。 |
| EIO | 硬件错误,命令异常终止,请求无效。 |
| EIO | 尝试读取的内容超出介质的末尾。 |
| EPERM | 子例程需要适当的权限。 |
| ESTALE | 介质被弹出 (未被用户首先关闭) ,然后重新插入或替换为第二个磁盘。 |
| ETIMEDOUT | I/O 操作超过指定的计时器值。 |