dissect.volume.raid.stream
#
Module Contents#
Classes#
RAID level identifiers. |
|
RAID layout identifiers. |
|
Implements a stream on a linear RAID set. |
|
Implements a stream on a RAID0 set. |
|
Implements a stream on a RAID5 set. |
|
Implements a stream on a RAID10 set. |
- class dissect.volume.raid.stream.Level#
Bases:
enum.IntEnum
RAID level identifiers.
- LINEAR#
- RAID0 = 0#
- RAID1 = 1#
- RAID3 = 3#
- RAID4 = 4#
- RAID5 = 5#
- RAID6 = 6#
- RAID10 = 10#
- class dissect.volume.raid.stream.Layout#
Bases:
enum.IntEnum
RAID layout identifiers.
“Coincidentally” these align with Linux MD.
- LEFT_ASYMMETRIC = 0#
- RIGHT_ASYMMETRIC = 1#
- LEFT_SYMMETRIC = 2#
- RIGHT_SYMMETRIC = 3#
- PARITY_0 = 4#
- PARITY_N = 5#
- ROTATING_ZERO_RESTART = 8#
- ROTATING_N_RESTART = 9#
- ROTATING_N_CONTINUE = 10#
- LEFT_ASYMMETRIC_6 = 16#
- RIGHT_ASYMMETRIC_6 = 17#
- LEFT_SYMMETRIC_6 = 18#
- RIGHT_SYMMETRIC_6 = 19#
- PARITY_0_6 = 20#
- PARITY_N_6#
- class dissect.volume.raid.stream.LinearStream(virtual_disk: dissect.volume.raid.raid.VirtualDisk)#
Bases:
dissect.util.stream.MappingStream
Implements a stream on a linear RAID set.
- class dissect.volume.raid.stream.Zone#
Bases:
NamedTuple
- zone_end: int#
- dev_start: int#
- devices: list[tuple[int, dissect.volume.raid.raid.PhysicalDisk]]#
- class dissect.volume.raid.stream.RAID0Stream(virtual_disk: dissect.volume.raid.raid.VirtualDisk)#
Bases:
dissect.util.stream.AlignedStream
Implements a stream on a RAID0 set.
- class dissect.volume.raid.stream.RAID456Stream(virtual_disk: dissect.volume.raid.raid.VirtualDisk)#
Bases:
dissect.util.stream.AlignedStream
Implements a stream on a RAID5 set.
- class dissect.volume.raid.stream.RAID10Stream(virtual_disk: dissect.volume.raid.raid.VirtualDisk)#
Bases:
dissect.util.stream.AlignedStream
Implements a stream on a RAID10 set.