package com.iailab.netsdk.lib.structure;
|
|
import com.iailab.netsdk.lib.NetSDKLib;
|
/**
|
* @author 251823
|
* @description 存储设备信息
|
* @date 2022/05/30
|
*/
|
public class NET_STORAGE_DEVICE extends NetSDKLib.SdkStructure {
|
|
public NET_STORAGE_DEVICE() {
|
this.dwSize = this.size();
|
for (int i = 0; i < stuPartitions.length; i ++) {
|
stuPartitions[i] = new NET_STORAGE_PARTITION();
|
}
|
}
|
|
public int dwSize;
|
public byte[] szName = new byte[128]; // 名称
|
public long nTotalSpace; // 总空间, byte
|
public long nFreeSpace; // 剩余空间, byte
|
public byte byMedia; // 介质, 0-DISK, 1-CDROM, 2-FLASH
|
public byte byBUS; // 总线, 0-ATA, 1-SATA, 2-USB, 3-SDIO, 4-SCSI
|
public byte byVolume; // 卷类型, 0-物理卷, 1-Raid卷, 2-VG虚拟卷, 3-ISCSI, 4-独立物理卷, 5-全局热备卷, 6-NAS卷(包括FTP, SAMBA, NFS)
|
public byte byState; // 物理硬盘状态, 参考NET_STORAGE_DEV_OFFLINE,取值为 NET_STORAGE_DEV_OFFLINE 和 NET_STORAGE_DEV_RUNNING 等
|
public int nPhysicNo; // 同类设备存储接口的物理编号
|
public int nLogicNo; // 同类设备存储接口的逻辑编号
|
public byte[] szParent = new byte[128]; // 上级存储组名称
|
public byte[] szModule = new byte[128]; // 设备模块
|
public byte[] szSerial = new byte[48]; // 设备序列号
|
public byte[] szFirmware = new byte[64]; // 固件版本
|
public int nPartitionNum; // 分区数
|
public NET_STORAGE_PARTITION[] stuPartitions = (NET_STORAGE_PARTITION[])new NET_STORAGE_PARTITION().toArray(32); // 分区信息
|
public NET_STORAGE_RAID stuRaid; // RAID信息, 只对RAID有效(byVolume == 1)
|
public NET_ISCSI_TARGET stuISCSI; // ISCSI信息, 只对ISCSI盘有效(byVolume == 3)
|
public int abTank; // 扩展柜使能
|
public NET_STORAGE_TANK stuTank; // 硬盘所在扩展柜信息, abTank为TRUE时有效
|
|
/**
|
* 硬盘电源状态
|
* {@link EM_STORAGE_DISK_POWERMODE}
|
*/
|
public int emPowerMode; // 硬盘电源状态
|
|
/**
|
* 硬盘预检状态(EVS字段,配合磁盘预检功能使用)
|
* {@link EM_STORAGE_DISK_PREDISKCHECK}
|
*/
|
public int emPreDiskCheck; // 硬盘预检状态(EVS字段,配合磁盘预检功能使用)
|
|
public int nOpState; // 设备操作状态: 0: 正常工作状态, 1: 休眠中, 2: 等待格式化, 3: 格式化进行中,
|
// 4: 等待碎片整理, 5: 碎片整理中, 6: 等待创建RAID 7: 创建RAID中, 8: 等待删除RAID, 9: 删除RAID中,
|
// 10: 等待文件系统修复, 11: 文件系统修复中, 12: 等待预检, 13: 正在预检
|
}
|