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