Diski in diskovni sistemi

Naloge

  • Izračunaj, kakšna je največja kapaciteta diska, ki ga naslavljamo s C/H/S, če je glav v disku 5?
  • Ali lahko na disku sobivata BSD disk label in GPT?
  • Ali imamo na istem disku ali razdelku naenkrat veljavne podatke za LVM in Linux Raid?
  • Kateri podatki, če sploh, se pokvarijo, če na Linuxu sestavimo polje, ki je v RAID0?

Kako so bili diski narejeni nekdaj

MFM

Prvi diski na IBM kompatibilnih osebnih računalnikih so bili na računalnik priključeni tako, da je računalnik povsem nadziral disk. Računalnik je torej povedal, kam naj se premakne glava, preštel sektorje in prebral podatke.

Naslavljanje C/S/H

Ker so bili diski tako preprosti, je bilo za branje potrebno podati sled (Cyllinder), sektor (Sector), in glavo na disku (Head), s katere bi podatek radi, ne pa na primer samo zaporedne številke sektorja, kot to počnemo danes.

IDE / ATA

Ker dolg kabel med bralno / pisalno glavo in računalnikom povzroča preglavice, so proizvajalci diskov kmalu premaknili večino elektronike z razširitvene kartice na sam disk. Tako so nastali Integrated Drive Electronics - IDE diski. Vmesnik je skoraj enak kot razširitveno vodilo na prvih IBM PC-ih.

Z leti so standard razširili, nastal je (IBM PC) AT Attachment - ATA. Tega so nato razširili tako, da so dodali podporo za različne naprave.

SATA

Ker je hitrosti prenosa na kablih, ki imajo veliko žic, težko višati, so proizvajalci diskov ustvarili standard, ki je, kar se tiče programske opreme, enak ATA, dejanski vmesnik pa je serijski.

SCSI

Vzporedno z ATA so razvili tudi vmesnik, namenjen prav napravam za shranjevanje podatkov - Small Computer Storage Interface. Kasneje diski s tem vmesnikom niso bili nič bolj zapleteni, so pa ostali dražji od ATA diskov, saj so ciljali drugačno tržišče (strežnike).

Flash (SSD)

Zadnjih nekaj let večina naprav vsebuje pomnilnik flash. Pri tem pomnilniku je podatke, ko so enkrat zapisani, težko popravljati. Posamezne celice (bita), ki je nastavljena na 0, ne moremo zlahka nastaviti nazaj na 1. Edini način, da to storimo, je, da na 1 nastavimo cel blok celic.

Velikost bloka je tipično nekaj MiB. To pomeni, da bi pri naivni rešitvi ob vsaki spremembi sektorja (512B) skopirati celoten blok brez popravljenega sektorja, torej nekaj tisočkrat več podatkov, drugam, nato pa zapisati nov blok.

Ker je takšen pristop neučinkovit, so razvijalci jedra Linux že pred več kot desetletjem razvili nekaj datotečnih sistemov, ki so učinkovitejši. Namesto, da bi podatke popravljali na istem mestu, jih vedno samo zapisujejo, datotečni sistem pa vsebuje preslikovalno tabelo, tako da je vedno mogoče hitro najti zadnjo različico vsakega sektorja. Pri takšnih datotečnih sistemih je pomembna tudi operacija brisanja, saj lahko bloke, ki vsebujejo samo sektorje izbrisanih datotek, ponovno uporabimo. Takšne datotečne sisteme so v tistem času uporabljali na vgrajenih napravah, kjer so prednosti pomnilnikov flash, kot sta majhna masa ter odpornost na udarce, odtehtali njihovo visoko ceno glede na kapaciteto.

S padanjem cene so pomnilniki flash postali zanimivi tudi za ostale uporabnike, predvsem v obliki prenosnih naprav za izmenjavo podatkov. Tako so USB ključki začeli nadomeščati diskete in zapisljive optične diske (CD-RW, DVD-RW). Seveda proizvajalci niso mogli pričakovati, da bi uporabniki zamenjali operacijski sistem samo zato, da bi lahko uporabili njihove naprave. Ker Windows ne podpirajo datotečnih sistemov, namenjenih pomnilnikom flash, se morajo tudi USB flash "ključki" obnašati, kot bi bili stari, vrteči se diski. To pomeni, da vsak ključek USB poleg pomnilnika flash vsebuje še mikroprocesor, ki skrbi za sledenje polnim in praznim blokom in skrbi za večino tega, za kar je prej skrbel gonilnik za datotečni sistem - torej za vzdrževanje preslikovalnih tabel, brisanje ne več zasedenih blokov in podobno.

Ko je cena pomnilnikov flash padla dovolj nizko, so postali konkurenčni tudi vrtljivim diskom v računalnikih. Na trgu so se pojavile SATA SSD naprave, ki se prav tako obnašajo kot navadni trdi diski, le da računalnik poleg ukazov za branje in pisanje sektorja "disku" lahko pošlje še ukaz za brisanje. Takšne pomnilniške naprave, tako kot ključke USB, lahko uporabljamo tudi z operacijskimi sistemi, ki ne podpirajo datotečnih sistemov, namenjenih pomnilnikom flash.

S stališča forenzike so tovrstni diski zanimivi, saj podatki, ki so bili "popravljeni" ali izbrisani, ostanejo na samih flash čipih, dokler se mikroprocesor ne odloči, da bo bloke, na katerih se nahajajo, ponovno uporabil. To se lahko zgodi kadar koli, na primer ob priklopu "diska" na napajanje, ko hočemo ustvariti forenzično kopijo. Za razliko od trdih diskov torej s priklopom naprave, na kateri bomo izvajali zajem, lahko že uničimo del dokazov.

Ker proizvajalci ne objavljajo, kako točno njihove naprave vzdržujejo sezname prostih blokov in preslikovalne tabele, je sestavljanje datotek iz podatkov, ki bi jih lahko pridobili iz čipov, težavno. Sami čipi tudi običajno niso zlahka dostopni, procesor pa lahko podatke ne samo razmeče po pomnilniku, temveč jih še šifrira. To pomeni, da se običajno zajem vseh podatkov ne izplača, zajamemo le tiste podatke, ki jih lahko dobimo, če se pretvarjamo, da imamo opravka z navadnim, vrtečim se diskom.

Zagon računalnika

Prvi IBMovi osebni računalniki so imeli več možnosti za zagon: - v ROM vgrajen BASIC. - z diskete. - s trdega diska, ki ni bil del standardne opreme.

Količini ROM in RAM sta bili omejeni - 40KiB za ROM, 128KiB za RAM. Na takšnem sistemu je jasno, da bo zagon čim bolj preprost. Princip je: 1. Izvedi program v ROM (začni na naslovu 0xffff0; PC=0, CS=0xffff). 1.1 Če na računalnik ni priklopljen noben disk ali disketa, zaženi BASIC. 1.2 Če ja na voljo disk, naloži 1. sektor z diska v RAM na naslov 0x7c00 - to je zagonski program. 2. Preveri, ali je program veljaven (ima na koncu posebno vrednost). 4. Izvedi program.

Master Boot Record

Ker se računalnik lahko zažene s prvega sektorja na disku, temu sektorju pravimo tudi Master Boot Record. Poleg programa, ki naj se izvede ob zagonu, je v tem sektorju spravljena tudi tabela z razdelki - partition table.

UEFI

Razdelki

To, kako zapišemo podatek o razdelitvi diskov, je stvar izbire. Pogosti formati so DOS/MBR tabela razdelkov, BSD oznaka diska - BSD disklabel, Tabela razdelkov Apple - Apple Partition Map.

MBR/DOS disk label

Struktura

V MBR je na koncu rezerviran prostor za opis 4 razdelkov. Tem štirim razdelkom rečemo tudi primarni razdelki (primary partition).

Vsak 16 bytni vnos v tabeli razdelkov vsebuje začetek, konec, tip razdelka ter zastavice. Začetek in konec sta bila nekdaj zapisana v formatu C/H/S.

Ker se je že precej zgodaj izkazalo, da 4 razdelki niso vedno dovolj, so razvijalci dodali možnost, da se na začetek razdelka doda še ena kopija MBR in v njej opiše dodatne 4 razdelke, kar nam da skupaj 16 možnih razdelkov.

Poleg tega se je izkazalo, da je 2^24 sektorjev prav tako premalo. V prostor, ki je bil v vsakem razdelku rezerviran, so dodali 32-bitni začetek razdelka ter 32-bitno dolžino.

Popravljanje

Za popravljanje tabele razdelkov imamo na voljo več programov: - fdisk - najpogosteje uporabljan, najstarejši - gdisk - novejši, že od nekdaj podpira tudi GPT - sfdisk - omogoča nalaganje in ustvarjanje skript

GPT

Ker je 16 razdelkov premalo in ker imajo sodobni diski lahko tudi več kot 2^32 sektorjev, so se proizvajalci računalniške opreme malo po letu 2000 dogovorili za nov standard, ki bo omogočal več večjih razdelkov in za vsakega od njih več podatkov.

Struktura

GPT se nahaja takoj za 1. sektorjem. V 1. sektorju še vedno ostaja nekaj podobnega MBR, ki vsebuje en ogromen, ne povsem veljaven razdelek, ki je tam le zato, da stari programi ne bi prepisali nove tabele razdelkov.

Poleg tega je na koncu diska z GPT kopija tabele razdelkov. Tako poskrbimo, da v primeru odpovedi enega sektorja na disku ne izgubimo vseh podatkov.

Vsak vnos v tabeli je dolžine 128B in med drugim vsebuje 16B številko, ki je za vsak razdelek na svetu verjetno enolična - od tod tudi ime nove sheme. Tej številki rečemo Globally Unique IDentifier ali GUID. Od tod tudi ime tabele - GUID partition table.

Začetki in konci razdelkov so zapisani kot 64-bitna števila.

Popravljanje

Za popravljanje tabele razdelkov lahko uporabimo iste programe kot za popravljanje tabele razdelkov v MBR.

RAID

Linux RAID

RAID podpora pod Linuxom.

Struktura

https://raid.wiki.kernel.org/index.php/RAID_superblock_formats

Metapodatki se lahko nahajajo na koncu diska, na začetku diska ali 4KiB od začetka diska.

Priklop

https://raid.wiki.kernel.org/index.php/DDF_Fake_RAID

fakeraid

Standardni format zapisa metapodatkov, ki ga uporabljajo različne matične plošče, če v BIOS ali EFI vklopimo "RAID support". Metapodatki se shranijo na koncu diska. Med drugim vsebujejo časovne značke.

Struktura

https://www.snia.org/sites/default/files/SNIA-DDFv1.2.pdf, stran 70 https://www.snia.org/sites/default/files/SNIA_DDF_Technical_Position_v2.0.pdf

Priklop

Logični diski

LVM

Če hočemo iz več različnih diskov sestaviti enega samega, lahko to storimo na več načinov. Pod Linuxom za to skrbi LVM - Logical Volume Manager.

Pri LVM je več dejanskih diskov (physical volume) združenih v skupino (volume group). Diski so razdeljeni na bloke iz več sektorjev. Ti bloki so potem dodeljeni logičnim diskom (logical volume).

Logični disk je seveda lahko večji od katerega koli dejanskega diska, ki je v skupini.

LVM omogoča tudi ustvarjanje posnetkov (snapshot) logičnih diskov, kar omogoča izdelavo konsistentnih varnostnih kopij (backup) diskov med delovanjem sistema. Poleg tega lahko podatke selimo iz enega diska na drugega med delovanjem sistema.

Struktura

Metapodatki se nahajajo na začetku vsakega diska, ki je pridružen v skupino diskov.

Priklop

Ukazi za delo s skupinami nosilcev (volume group)

  • /sbin/vgcfgbackup (Backup volume group configuration(s))
  • /sbin/vgcfgrestore (Restore volume group configuration)
  • /sbin/vgchange (Change volume group attributes)
  • /sbin/vgck (Check the consistency of volume group(s))
  • /sbin/vgconvert (Change volume group metadata format)
  • /sbin/vgcreate (Create a volume group)
  • /sbin/vgdisplay (Display volume group information)
  • /sbin/vgexport (Unregister volume group(s) from the system)
  • /sbin/vgextend (Add physical volumes to a volume group)
  • /sbin/vgimport (Register exported volume group with system)
  • /sbin/vgimportclone (Import a VG from cloned PVs)
  • /sbin/vgmerge (Merge volume groups)
  • /sbin/vgmknodes (Create the special files for volume group devices in /dev)
  • /sbin/vgreduce (Remove physical volume(s) from a volume group)
  • /sbin/vgremove (Remove volume group(s))
  • /sbin/vgrename (Rename a volume group)
  • /sbin/vgs (Display information about volume groups)
  • /sbin/vgscan (Search for all volume groups)
  • /sbin/vgsplit (Move physical volumes into a new or existing volume group)

Ukazi za delo z nosilci podatkov (physical volume)

  • /sbin/pvchange (Change attributes of physical volume(s))
  • /sbin/pvck (Check metadata on physical volumes)
  • /sbin/pvcreate (Initialize physical volume(s) for use by LVM)
  • /sbin/pvdisplay (Display various attributes of physical volume(s))
  • /sbin/pvmove (Move extents from one physical volume to another)
  • /sbin/pvremove (Remove LVM label(s) from physical volume(s))
  • /sbin/pvresize (Resize physical volume(s))
  • /sbin/pvs (Display information about physical volumes)
  • /sbin/pvscan (List all physical volumes)

Ukazi za delo z prostori

  • /sbin/lvchange (Change the attributes of logical volume(s))
  • /sbin/lvconvert (Change logical volume layout)
  • /sbin/lvcreate (Create a logical volume)
  • /sbin/lvdisplay (Display information about a logical volume)
  • /sbin/lvextend (Add space to a logical volume)
  • /sbin/lvm (LVM2 tools)
  • /sbin/lvmconfig (Display and manipulate configuration information)
  • /sbin/lvmdiskscan (List devices that may be used as physical volumes)
  • /sbin/lvmdump (Create lvm2 information dumps for diagnostic purposes)
  • /sbin/lvmpolld (LVM poll daemon)
  • /sbin/lvmsadc (LVM system activity data collector)
  • /sbin/lvmsar (LVM system activity reporter)
  • /sbin/lvreduce (Reduce the size of a logical volume)
  • /sbin/lvremove (Remove logical volume(s) from the system)
  • /sbin/lvrename (Rename a logical volume)
  • /sbin/lvresize (Resize a logical volume)
  • /sbin/lvs (Display information about logical volumes)
  • /sbin/lvscan (List all logical volumes in all volume groups)

Windows Dynamic Disks

Z Windows 2000 so pri Microsoftu v svoje operacijske sisteme dodali podporo za logične diske, podobno LVM.

Struktura

Metapodatki se nahajajo tako na koncu kot na začetku diska in uradno niso dokumentirani.

Priklop

Pod Linuxom lahko za priklop tovrstnih diskov uporabimo ukaz ldmtool.


Disks in disk systems

Tasks

  • Calculate the maximum possible disk capacity addressed with C/H/S if the number of heads in disk is 5?
  • Can BDS disklabel and GPT coexist on a disk?
  • Can we have valid LVM and Linux Raid data on the same disk or partition at the same time?
  • What data, if any, is corrupted if we rebuild RAID0 array on Linux?

How disks were made in the past

MFM

The first disks on IBM compatible PCs were connected to the computer so that the computer fully controlled the disk. So, the computer decided where to move the head, counted the sectors and read the data.

Addressing C/S/H

Because the discs were so simple, it was necessary to provide the cylinder, sector and head for reading the desired data and not just the sequential sector number, as we do today.

IDE / ATA

Because a long cable between read/write head and computer causes issues, the disk manufacturers soon moved most of the electronics from the expansion bus to the disk itself.

This is how the Integrated Drive Electronics - IDE disks were created. The interface is almost the same as the extension bus on the first IBM PCs.

Over the years, the standard has been expanded and (IBM PC) AT Attachment - ATA was created. Then they expanded it by adding the support for various devices.

SATA

Because transmission speeds on cables that have a lot of wires are difficult to increase, the disk manufacturers have created a standard that, in terms of software is equal to ATA, but the actual interface is serial.

SCSI

Along with ATA, also an interface specifically designed for storage devices was developed - Small Computer Storage Interface. Later, disks with this interface were no more complicated, but remained more expensive than ATA disks because they targeted a different market (servers).

Flash (SSD)

For the past few years, most devices have contained flash memory. In Flash, once data is written, it is difficult to modify. Individual cells (bits) set to 0 cannot be easily set back to 1. The only way to do this is to set the whole cell block to 1.

The block size is typically a few MiB. This means that with a naive solution, every sector change (512B) would be to copy the entire block without the sector being modified, i.e. several thousand times more data elsewhere, and then write a new block.

Because this approach is inefficient, Linux kernel developers have developed a few file systems that are more efficient already more than a decade ago. Instead of modifying the data in the same place, they always just write data, and the file system contains a mapping table so that the latest version of each sector can always be found quickly. With such file systems, the delete operation is also important, as blocks containing only sectors of deleted files can then be reused. Such file systems were at that time used in embedded devices, where the advantages of flash memory, such as low mass and impact resistance, outweighed their high cost in terms of capacity.

With the fall in price, flash memory has become more attractive to other users, especially in the form of portable data exchange devices. Thus, USB sticks began to replace floppy disks and writable optical disks (CD-RW, DVD-RW). Of course, manufacturers could not expect users to change their operating system just to use their devices. Because Windows does not support file systems designed for flash memory, USB flash drives also need to behave as if they were old, spinning disks. This means that each USB stick has a microprocessor in addition to the flash memory, which keeps track of full and empty blocks and takes care of most of what the file system driver used to do - that is, maintaining mapping tables, deleting no more occupied blocks, and the like.

When the price of flash memory become low enough, they also started competing with spinning disks on computers. SATA SSDs have emerged on the market, which also behave like ordinary hard drives, except that the computer can send a delete command in addition to the sector read and write commands. Such storage devices, like USB flash drives, can also be used with operating systems that do not support file systems designed for flash memory.

From a forensic point of view, such drives are interesting because the data that has been "modified" or deleted remains on the flash chips themselves until the microprocessor decides to reuse the blocks on which they are located. This can happen at any time, such as when plugging a "disk" into the power supply when we want to create a forensic copy. Unlike hard drives, therefore, by plugging in the device from which we are going to capture data, we can already destroy part of the evidence.

Because manufacturers do not announce exactly how their devices maintain free block lists and mapping tables, it is difficult to assemble files from data that could be obtained from chips. The chips themselves are also usually not easily accessible, and the processor can not only spread the data over the memory but also encrypt it. This means that capturing of all the data is normally not practical, so we only capture the data that can be obtained if we pretend to be dealing with a regular, spinning disk.

Computer booting

The first IBM PCs had multiple booting options: - from BASIC built into ROM. - from a floppy disk. - from a hard drive that was not part of the standard equipment.

The amount of ROM and RAM was limited - 40KiB for ROM, 128KiB for RAM. On such a system, it is clear that booting will be as easy as possible. The principle is: 1. Run the program in ROM (start at the address 0xffff0; PC=0, CS=0xffff). 1.1 If no disk or floppy disk is attached to the computer, run BASIC. 1.2 If a disk is available, load the first sector from the disk into RAM to the address 0x7c00 – this is a bootloader. 2. Check that the program is valid (has a special value at the end). 4. Run the program.

Master Boot Record

Since a computer can boot from the first sector on disk, this sector is also called Master Boot Record. In addition to bootloader is in this sector also a partition table.

UEFI

Partitions

How we write down the information about disks partitions is a matter of choice. Common formats are DOS/MBR partition table, BSD disklabel, Apple Partition Map.

MBR/DOS disklabel

Structure

At the end of MBR, there is a reserved space for describing 4 partitions. These four partitions are also called primary partitions.

Each 16 byte entry in the partition table contains start, end, partition type and flags. The start and the end were once written in the format C/H/S.

Since it turned out quite early that 4 sections were not always enough, the developers added the option to add at the start of the partition [another copy of MBR] (https://en.wikipedia.org/wiki/Extended_Boot_Record) and describes additional 4 partitions, giving us a total of 16 possible partitions. In addition, 2 ^ 24 sectors also proved to be too low. In space, that was reserved in each partition, a 32-bit partition start and 32-bit length was added.

Modification

There are several programs available to modify the partition table: - fdisk - most used, oldest, - gdisk - newer, supports GPT. - sfdisk - lets you load and create scripts.

GPT

Because 16 partitions are not enough and modern disks can also have more than 2 ^ 32 sectors, computer manufacturers have agreed to a new standard shortly after 2000, which will allow for more large partitions and more data for each of them.

Structure

GPT is located just behind the first sector. First sector still has something similar to MBR, which contains one huge, not entirely valid partition, which is only there to prevent old programs from overwriting the new partition table.

In addition, there is a copy of the partition table at the end of the GPT disk. This way, we do not lose all the data in case of failure of one sector on the disk.

Each entrie in the partition table is 128B long and contains, among other things a 16B number, which is probably unique to every partition in the world - hence the name of the new scheme. This number is called the Globally Unique IDentifier or GUID. Hence the name of the table - GUID partition table.

The starts and ends of partitions are written as 64-bit numbers.

Modification

We can use the same programs to modify the partition table as for modifying the partition table in MBR.

RAID

Linux RAID

RAID support under Linux.

Structure

https://raid.wiki.kernel.org/index.php/RAID_superblock_formats

The metadata can be located at the end of the disk, at the start of the disk, or 4KiB from the start of the disk.

Attachment

https://raid.wiki.kernel.org/index.php/DDF_Fake_RAID

fakeraid

The standard metadata format used by different motherboards when "RAID support" is turned on in BIOS or EFI. The metadata is stored at the end of the disk. They include, among other things, timestamps.

Structure

https://www.snia.org/sites/default/files/SNIA-DDFv1.2.pdf, stran 70 https://www.snia.org/sites/default/files/SNIA_DDF_Technical_Position_v2.0.pdf

Attachment

Logical disks

LVM

If we want to assemble a single disk from several different disks, there are several ways to do this. Under Linux, LVM - Logical Volume Manager takes care of this.

With LVM, multiple physical disks (physical volumes) are grouped together (volume group). Disks are divided into blocks from several sectors. These blocks are then assigned to logical disks (logical volume).

The logical disk can, of course, be larger than any actual disk in the group.

LVM also enables snapshots of logical disks, which allows consistent backup of disks while the system is running. In addition, data can be moved from one disk to another during system operation.

Structure

The metadata is located at the start of each disk that is associated with the disk group.

Attachment

Commands for working with groups (volume group)

  • /sbin/vgcfgbackup (Backup volume group configuration(s))
  • /sbin/vgcfgrestore (Restore volume group configuration)
  • /sbin/vgchange (Change volume group attributes)
  • /sbin/vgck (Check the consistency of volume group(s))
  • /sbin/vgconvert (Change volume group metadata format)
  • /sbin/vgcreate (Create a volume group)
  • /sbin/vgdisplay (Display volume group information)
  • /sbin/vgexport (Unregister volume group(s) from the system)
  • /sbin/vgextend (Add physical volumes to a volume group)
  • /sbin/vgimport (Register exported volume group with system)
  • /sbin/vgimportclone (Import a VG from cloned PVs)
  • /sbin/vgmerge (Merge volume groups)
  • /sbin/vgmknodes (Create the special files for volume group devices in /dev)
  • /sbin/vgreduce (Remove physical volume(s) from a volume group)
  • /sbin/vgremove (Remove volume group(s))
  • /sbin/vgrename (Rename a volume group)
  • /sbin/vgs (Display information about volume groups)
  • /sbin/vgscan (Search for all volume groups)
  • /sbin/vgsplit (Move physical volumes into a new or existing volume group)

Commands for working with disks (physical volume)

  • /sbin/pvchange (Change attributes of physical volume(s))
  • /sbin/pvck (Check metadata on physical volumes)
  • /sbin/pvcreate (Initialize physical volume(s) for use by LVM)
  • /sbin/pvdisplay (Display various attributes of physical volume(s))
  • /sbin/pvmove (Move extents from one physical volume to another)
  • /sbin/pvremove (Remove LVM label(s) from physical volume(s))
  • /sbin/pvresize (Resize physical volume(s))
  • /sbin/pvs (Display information about physical volumes)
  • /sbin/pvscan (List all physical volumes)

Commands for working with storage space

  • /sbin/lvchange (Change the attributes of logical volume(s))
  • /sbin/lvconvert (Change logical volume layout)
  • /sbin/lvcreate (Create a logical volume)
  • /sbin/lvdisplay (Display information about a logical volume)
  • /sbin/lvextend (Add space to a logical volume)
  • /sbin/lvm (LVM2 tools)
  • /sbin/lvmconfig (Display and manipulate configuration information)
  • /sbin/lvmdiskscan (List devices that may be used as physical volumes)
  • /sbin/lvmdump (Create lvm2 information dumps for diagnostic purposes)
  • /sbin/lvmpolld (LVM poll daemon)
  • /sbin/lvmsadc (LVM system activity data collector)
  • /sbin/lvmsar (LVM system activity reporter)
  • /sbin/lvreduce (Reduce the size of a logical volume)
  • /sbin/lvremove (Remove logical volume(s) from the system)
  • /sbin/lvrename (Rename a logical volume)
  • /sbin/lvresize (Resize a logical volume)
  • /sbin/lvs (Display information about logical volumes)
  • /sbin/lvscan (List all logical volumes in all volume groups)

Windows Dynamic Disks

With Windows 2000, Microsoft has added support for LVM-like logical disks to their operating systems.

Structure

The metadata is located both at the end and the start of the disk and they are not officially documented.

Attachment

Under Linux, we can use the command ldmtool to attach such disks.

Last modified: Friday, 3 April 2020, 9:44 AM