lvm(8): Skillnad mellan sidversioner
Admin (diskussion | bidrag) (Skapade sidan med '= Sidslut = Orginalhemsidan på Engelska :https://man7.org/linux/man-pages/man8/lvm.8.html Det här är en maskinöversättning av Linux man sidor till svenska. Om du hittar fel är vi tacksamma om du rapporterar dem via formuläret som finns på https://www.linux.se/kontaka-linux-se/ <BR><BR>Tack till [https://datorhjalp.se Datorhjälp] som har sponsrat [https://www.linux.se Linux.se] med webbhotell. Kategori:Linuxmanual grupp 8 Kategori:Linuxmanual') |
Admin (diskussion | bidrag) Ingen redigeringssammanfattning |
||
| Rad 1: | Rad 1: | ||
= lvm(8) = | |||
== NAMN == | |||
'''lvm''' — LVM-verktyg | |||
== SYNOPSIS == | |||
<pre> | |||
lvm [kommando|fil] | |||
</pre> | |||
== BESKRIVNING == | |||
Logical Volume Manager (LVM) tillhandahåller verktyg för att skapa virtuella blockenheter från fysiska enheter. Virtuella enheter kan vara lättare att hantera än fysiska enheter och kan ha funktioner utöver vad de fysiska enheterna själva erbjuder. En volymgrupp (VG) är en samling av en eller flera fysiska enheter, där varje sådan kallas en fysisk volym (PV). En logisk volym (LV) är en virtuell blockenhet som kan användas av systemet eller applikationer. Varje datablock i en LV lagras på en eller flera PV i VG:n, enligt algoritmer som implementeras av Device Mapper (DM) i kärnan. | |||
Kommandot '''lvm''', och andra kommandon som listas nedan, är kommandoradsverktygen för LVM. En separat manualsida beskriver varje kommando i detalj. | |||
Om '''lvm''' anropas utan argument visar det en readline-prompt (förutsatt att det kompilerats med stöd för readline). LVM-kommandon kan då anges interaktivt vid denna prompt med readline-funktioner såsom historik samt komplettering av kommandonamn och alternativ. Se '''readline(3)''' för detaljer. | |||
Om '''lvm''' anropas med argv[0] satt till namnet på ett specifikt LVM-kommando (till exempel genom att använda en hård eller symbolisk länk) fungerar det som det kommandot. | |||
Vid start kräver '''lvm''' att endast standardfilbeskrivarna stdin, stdout och stderr är tillgängliga. Om andra hittas stängs de och varningsmeddelanden skrivs ut om läckaget. Denna varning kan undertryckas genom att sätta miljövariabeln '''LVM_SUPPRESS_FD_WARNINGS'''. | |||
Där kommandon tar VG- eller LV-namn som argument är det fullständiga sökvägsnamnet valfritt. En LV med namnet "lvol0" i en VG med namnet "vg0" kan anges som "vg0/lvol0". Där en lista över VG:er krävs men lämnas tom kommer en lista över alla VG:er att ersätta den. Där en lista över LV:er krävs men en VG anges kommer en lista över alla LV:er i den VG:n att ersätta den. Således kommer '''lvdisplay vg0''' att visa alla LV:er i "vg0". | |||
En fil som innehåller ett enkelt skript med ett kommando per rad kan också anges på kommandoraden. Skriptet kan också köras direkt om första raden är #! följt av den absoluta sökvägen till '''lvm'''. | |||
Ytterligare bindestreck inuti alternativnamn ignoreras. Till exempel accepteras både '''--readonly''' och '''--read-only'''. | |||
== INBYGGDA KOMMANDON == | |||
Följande kommandon är inbyggda i lvm utan att länkar normalt skapas i filsystemet för dem. | |||
; '''config''' | |||
: Samma som '''lvmconfig(8)''' nedan. | |||
; '''devtypes''' | |||
: Visa de igenkända inbyggda blockenhetstyperna. | |||
; '''dumpconfig''' | |||
: Samma som '''lvmconfig(8)''' nedan. | |||
; '''formats''' | |||
: Visa igenkända metadataformat. | |||
; '''fullreport''' | |||
: Rapportera information om PV:er, PV-segment, VG:er, LV:er och LV-segment, allt på en gång. | |||
; '''help''' | |||
: Visa hjälptexten. | |||
; '''lastlog''' | |||
: Visa loggrapport över senast körda kommando i LVM-skalet om kommandologgrapportering är aktiverad. | |||
; '''lvpoll''' | |||
: Slutför lvmpolld-operationer (internt kommando). | |||
; '''segtypes''' | |||
: Visa igenkända segmenttyper för logiska volymer. | |||
; '''systemid''' | |||
: Visa eventuell system-ID som för närvarande är satt på denna värd. | |||
; '''tags''' | |||
: Visa eventuella taggar definierade på denna värd. | |||
; '''version''' | |||
: Visa versionsinformation. | |||
== KOMMANDON == | |||
Följande kommandon implementerar LVM:s kärnfunktionalitet. | |||
; '''pvchange''' | |||
: Ändra attribut för en fysisk volym. | |||
; '''pvck''' | |||
: Kontrollera metadata för fysisk volym. | |||
; '''pvcreate''' | |||
: Initialisera en disk eller partition för användning av LVM. | |||
; '''pvdisplay''' | |||
: Visa attribut för en fysisk volym. | |||
; '''pvmove''' | |||
: Flytta fysiska extents. | |||
; '''pvremove''' | |||
: Ta bort en fysisk volym. | |||
; '''pvresize''' | |||
: Ändra storlek på en disk eller partition som används av LVM. | |||
; '''pvs''' | |||
: Rapportera information om fysiska volymer. | |||
; '''pvscan''' | |||
: Lista fysiska volymer. | |||
; '''vgcfgbackup''' | |||
: Säkerhetskopiera descriptor area för volymgrupp. | |||
; '''vgcfgrestore''' | |||
: Återställ descriptor area för volymgrupp. | |||
; '''vgchange''' | |||
: Ändra attribut för en volymgrupp. | |||
; '''vgck''' | |||
: Kontrollera metadata för volymgrupp. | |||
; '''vgcreate''' | |||
: Skapa en volymgrupp. | |||
; '''vgdisplay''' | |||
: Visa attribut för volymgrupper. | |||
; '''vgexport''' | |||
: Gör volymgrupper okända för systemet. | |||
; '''vgextend''' | |||
: Lägg till fysiska volymer till en volymgrupp. | |||
; '''vgimport''' | |||
: Gör exporterade volymgrupper kända för systemet. | |||
; '''vgimportclone''' | |||
: Importera och byt namn på duplicerad volymgrupp (t.ex. en hårdvaruögonblicksbild). | |||
; '''vgimportdevices''' | |||
: Lägg till PV:er från en VG till enhetsfilen. | |||
; '''vgmerge''' | |||
: Sammanfoga två volymgrupper. | |||
; '''vgmknodes''' | |||
: Återskapa volymgruppskatalog och specialfiler för logiska volymer. | |||
; '''vgreduce''' | |||
: Minska en volymgrupp genom att ta bort en eller flera fysiska volymer. | |||
; '''vgremove''' | |||
: Ta bort en volymgrupp. | |||
; '''vgrename''' | |||
: Byt namn på en volymgrupp. | |||
; '''vgs''' | |||
: Rapportera information om volymgrupper. | |||
; '''vgscan''' | |||
: Lista volymgrupper. | |||
; '''vgsplit''' | |||
: Dela en volymgrupp i två och flytta eventuella logiska volymer från en volymgrupp till en annan genom att flytta hela fysiska volymer. | |||
; '''lvchange''' | |||
: Ändra attribut för en logisk volym. | |||
; '''lvconvert''' | |||
: Konvertera en logisk volym från linjär till spegel eller snapshot. | |||
; '''lvcreate''' | |||
: Skapa en logisk volym i en befintlig volymgrupp. | |||
; '''lvdisplay''' | |||
: Visa attribut för en logisk volym. | |||
; '''lvextend''' | |||
: Utöka storleken på en logisk volym. | |||
; '''lvmconfig''' | |||
: Visa konfigurationsinformationen efter att ha läst in '''lvm.conf(5)''' och andra konfigurationsfiler. | |||
; '''lvmdevices''' | |||
: Hantera enhetsfilen. | |||
; '''lvmdiskscan''' | |||
: Sök efter alla enheter som är synliga för LVM. | |||
; '''lvmdump''' | |||
: Skapa informationsdumpar från LVM för diagnostiska ändamål. | |||
; '''lvreduce''' | |||
: Minska storleken på en logisk volym. | |||
; '''lvremove''' | |||
: Ta bort en logisk volym. | |||
; '''lvrename''' | |||
: Byt namn på en logisk volym. | |||
; '''lvresize''' | |||
: Ändra storlek på en logisk volym. | |||
; '''lvs''' | |||
: Rapportera information om logiska volymer. | |||
; '''lvscan''' | |||
: Lista logiska volymer. | |||
För prestandamått, använd '''dmstats(8)''', eller för att manipulera kärnans device-mapper-drivrutin som används av LVM direkt, använd '''dmsetup(8)'''. | |||
== GILTIGA NAMN == | |||
De giltiga tecknen för VG- och LV-namn är: '''a'''–'''z A'''–'''Z 0'''–'''9 + _ . -''' | |||
VG-namn får inte börja med ett bindestreck. Namnet på en ny LV får inte heller börja med ett bindestreck. Om konfigurationsinställningen '''metadata/record_lvs_history''' är aktiverad indikerar dock ett LV-namn med bindestreck som prefix att även om LV:n har tagits bort så spåras den fortfarande eftersom den utgör en del av historiken för minst en LV som fortfarande finns kvar. Detta hjälper till att registrera härkomsten för tunna snapshots även efter att vissa länkar i kedjan har tagits bort. En referens till den historiska LV:n 'lvol1' i VG:n 'vg00' skulle vara 'vg00/-lvol1' eller bara '-lvol1' om VG:n redan är satt. (Den senare formen måste föregås av '--' för att avsluta tolkningen av kommandoradsalternativ innan detta argument nås.) | |||
Det finns också olika reserverade namn som används internt av lvm och som inte kan användas som LV- eller VG-namn. En VG kan inte ges något namn som redan finns i ''/dev/'' vid skapandet, och den kan inte heller heta '''.''' eller '''..'''. En LV kan inte heta '''.''', '''..''', '''snapshot''' eller '''pvmove'''. LV-namnet får inte heller innehålla någon av följande strängar: '''_cdata''', '''_cmeta''', '''_corig''', '''_iorig''', '''_mimage''', '''_mlog''', '''_pmspare''', '''_rimage''', '''_rmeta''', '''_tdata''', '''_tmeta''', '''_vdata''', '''_vorigin''' eller '''_wcorig'''. En katalog med namnet på varje volymgrupp skapas under ''/dev'' när någon av dess logiska volymer aktiveras. Varje aktiv logisk volym är åtkomlig från denna katalog som en symbolisk länk som pekar på en enhetsnod. Länkar eller noder i ''/dev/mapper'' är endast avsedda för intern användning och det exakta formatet och escapingen kan ändras mellan versioner och distributioner. Annan programvara och skript bör använda formatet ''/dev/Volymgruppsnamn/LogiskVolymsnamn'' för att minska risken för att behöva ändras när programvaran uppdateras. Om du behöver bearbeta nodnamnen i /dev/mapper kan du använda '''dmsetup splitname''' för att separera de ursprungliga namnen för VG, LV och interna lagernamn. | |||
== UNIKA NAMN == | |||
VG-namn bör vara unika. '''vgcreate''' ger ett fel om det angivna VG-namnet matchar ett befintligt VG-namn. Det finns dock fall där olika VG:er med samma namn kan bli synliga för LVM, t.ex. efter att diskar flyttats eller filter ändrats. | |||
När VG:er med samma namn finns kommer kommandon som arbetar på alla VG:er att inkludera alla VG:er med samma namn. Om det tvetydiga VG-namnet anges på kommandoraden ger kommandot ett fel. Felet anger att flera VG:er finns med det angivna namnet. För att bearbeta en av VG:erna specifikt ska alternativet '''--select''' användas tillsammans med UUID för den avsedda VG:n: | |||
<pre> | |||
--select vg_uuid=<uuid> | |||
</pre> | |||
Ett undantag är om alla utom en av VG:erna med det delade namnet är foreign (se '''lvmsystemid(7)'''). I detta fall antas den enda VG som inte är foreign vara den avsedda VG:n och bearbetas. | |||
LV-namn är unika inom en VG. Namnet på en historisk LV kan inte återanvändas förrän den historiska LV:n själv har tagits bort eller bytt namn. | |||
== TAGGAR == | |||
Taggar är användardefinierade strängar som kan knytas till PV:er, VG:er och LV:er. Taggar kan visas med kommandona '''pvs/vgs/lvs -o tags'''. Vissa kommandon accepterar ett taggnamn i stället för ett PV-, VG- eller LV-namn. I dessa fall arbetar kommandot på varje PV/VG/LV med den givna taggen. Taggar bör föregås av @ för att undvika tvetydighet. | |||
Tecken som tillåts i taggar är: | |||
'''A–Z a–z 0–9 _ + . - / = ! : # &''' | |||
== ALLOKERING == | |||
När en operation behöver allokera Physical Extents för en eller flera logiska volymer går verktygen tillväga på följande sätt: | |||
Först genererar de den kompletta mängden oallokerade Physical Extents i volymgruppen. Om några intervall av Physical Extents anges i slutet av kommandoraden kommer endast oallokerade Physical Extents inom dessa intervall på de angivna fysiska volymerna att beaktas. | |||
Sedan provar de varje allokeringspolicy i tur och ordning, med början från den striktaste policyn ('''contiguous''') och avslutande med den allokeringspolicy som angetts med '''--alloc''' eller satts som standard för den berörda logiska volymen eller volymgruppen. För varje policy, med början från den lägst numrerade Logical Extent i det tomma logiska volymutrymme som behöver fyllas, allokerar de så mycket utrymme som möjligt enligt de begränsningar som policyn ställer. Om mer utrymme behövs går de vidare till nästa policy. | |||
Begränsningarna är följande: | |||
; '''Contiguous''' | |||
: Kräver att den fysiska platsen för varje Logical Extent som inte är den första Logical Extent i en logisk volym ligger intill den fysiska platsen för Logical Extent omedelbart före den. | |||
; '''Cling''' | |||
: Kräver att den Physical Volume som används för varje Logical Extent som ska läggas till en befintlig logisk volym redan används av minst en Logical Extent tidigare i den logiska volymen. Om konfigurationsparametern '''allocation/cling_tag_list''' är definierad anses två Physical Volumes matcha om någon av de listade taggarna finns på båda Physical Volumes. Detta gör det möjligt att tagga grupper av Physical Volumes med liknande egenskaper (t.ex. fysisk placering) och behandla dem som likvärdiga för allokeringsändamål. | |||
När en logisk volym är strimlad eller speglad tillämpas ovanstående begränsningar oberoende på varje stripe eller spegelbild (leg) som behöver utrymme. | |||
; '''Normal''' | |||
: Väljer inte en Physical Extent som delar samma Physical Volume som en Logical Extent som redan allokerats till en parallell logisk volym (dvs. en annan stripe eller spegelbild/leg) vid samma offset inom den parallella logiska volymen. | |||
När en spegellogg allokeras samtidigt som logiska volymer för att hålla spegeldata kommer Normal först att försöka välja olika Physical Volumes för loggen och datat. Om det inte är möjligt och konfigurationsparametern '''allocation/mirror_logs_require_separate_pvs''' är satt till 0 tillåts därefter loggen att dela Physical Volume(s) med en del av datat. | |||
När metadata för thin pool allokeras gäller liknande överväganden som för en spegellogg i föregående stycke baserat på värdet av konfigurationsparametern '''allocation/thin_pool_metadata_require_separate_pvs'''. | |||
Om du förlitar dig på något layoutbeteende utöver det som dokumenteras här bör du vara medveten om att det kan ändras i framtida versioner av koden. | |||
Om du till exempel anger två tomma Physical Volumes på kommandoraden som har identiskt antal fria Physical Extents tillgängliga för allokering, så beaktar den nuvarande koden användningen av dem i den ordning de listas, men det finns ingen garanti för att framtida versioner kommer att behålla detta beteende. Om det är viktigt att få en specifik layout för en viss logisk volym bör du bygga upp den genom en sekvens av steg med '''lvcreate(8)''' och '''lvconvert(8)''' så att de begränsningar som beskrivs ovan, tillämpade på varje steg, inte lämnar verktygen något utrymme för egna val beträffande layouten. | |||
För att se hur allokeringsprocessen fungerar i ett specifikt fall för närvarande, läs debug-loggens utdata, till exempel genom att lägga till '''-vvvv''' till ett kommando. | |||
== TYPER AV LOGISKA VOLYMER == | |||
Vissa typer av logiska volymer är enkla att skapa och kan göras med ett enda kommando '''lvcreate(8)'''. De linjära och strimlade typerna av logiska volymer är exempel på detta. Andra typer av logiska volymer kan kräva mer än ett kommando för att skapas. Typerna cache ('''lvmcache(7)''') och thin provisioning ('''lvmthin(7)''') är exempel på detta. | |||
== DIAGNOSTIK == | |||
Alla verktyg returnerar statuskod noll vid framgång och ett värde skilt från noll vid fel. De icke-nollkoder som används skiljer endast mellan de breda kategorierna okända kommandon, problem vid bearbetning av kommandoradsargument och övriga fel. Eftersom LVM fortfarande utvecklas aktivt ändras koden som används i ett specifikt fall ibland mellan versioner. Meddelandetext kan också ändras. | |||
== MILJÖVARIABLER == | |||
; '''HOME''' | |||
: Katalog som innehåller ''.lvm_history'' om det interna readline-skalet anropas. | |||
; '''LVM_OUT_FD''' | |||
: Filbeskrivare att använda för vanlig utmatning från LVM-kommandon. | |||
; '''LVM_ERR_FD''' | |||
: Filbeskrivare att använda för felutmatning från LVM-kommandon. | |||
; '''LVM_REPORT_FD''' | |||
: Filbeskrivare att använda för rapportutmatning från LVM-kommandon. | |||
; '''LVM_COMMAND_PROFILE''' | |||
: Namn på standardkommandoprofil att använda för LVM-kommandon. Denna profil åsidosätts av direkt användning av kommandoradsalternativet '''--commandprofile'''. | |||
; '''LVM_RUN_BY_DMEVENTD''' | |||
: Denna variabel sätts normalt av dmeventd-pluginet för att informera lvm-kommandot om att det körs från ett dmeventd-plugin så att lvm vidtar extra åtgärder för att undvika kommunikation och deadlocks med dmeventd. | |||
; '''LVM_SYSTEM_DIR''' | |||
: Katalog som innehåller '''lvm.conf(5)''' och andra LVM-systemfiler. Standard är ''"/etc/lvm"''. | |||
; '''LVM_SUPPRESS_FD_WARNINGS''' | |||
: Undertryck varningar om oväntade filbeskrivare som skickas in till LVM. | |||
; '''LVM_SUPPRESS_SYSLOG''' | |||
: Undertryck kontakt med syslog. | |||
; '''LVM_VG_NAME''' | |||
: Namnet på volymgruppen som antas för varje referens till en logisk volym som inte anger en sökväg. Inte satt som standard. | |||
; '''LVM_LVMPOLLD_PIDFILE''' | |||
: Sökväg till filen som lagrar process-ID för lvmpolld. | |||
; '''LVM_LVMPOLLD_SOCKET''' | |||
: Sökväg till den socket som används för att kommunicera med lvmpolld. | |||
; '''LVM_LOG_FILE_EPOCH''' | |||
: En sträng på upp till 32 bokstäver som läggs till loggfilens namn och följs av process-ID och en starttidsstämpel med detta format: ''"_%s_%d_%llu"''. När denna är satt loggar varje process till en separat fil. | |||
; '''LVM_LOG_FILE_MAX_LINES''' | |||
: Om fler än detta antal rader skickas till loggfilen avbryts kommandot. Automatiserade tester använder detta för att avsluta kommandon som loopar. | |||
; '''LVM_EXPECTED_EXIT_STATUS''' | |||
: Den status som förväntas när processen avslutas. Använd ''">N"'' för att matcha varje status större än N. Om den faktiska avslutsstatusen matchar och en loggfil producerades tas den bort. '''LVM_LOG_FILE_EPOCH''' och '''LVM_EXPECTED_EXIT_STATUS''' tillsammans gör det möjligt för automatiserade testskript att kassera ointressant loggdata. | |||
; '''LVM_SUPPRESS_LOCKING_FAILURE_MESSAGES''' | |||
: Används för att undertrycka varningsmeddelanden när den konfigurerade låsningen är känd för att vara otillgänglig. | |||
; '''DM_ABORT_ON_INTERNAL_ERRORS''' | |||
: Avbryt bearbetningen om koden upptäcker ett icke-fatalt internt fel. | |||
; '''DM_DISABLE_UDEV''' | |||
: Undvik interaktion med udev. LVM hanterar då relevanta noder i /dev direkt. | |||
; '''DM_DEBUG_WITH_LINE_NUMBERS''' | |||
: Prefixerar källfilnamn och kodradnummer i libdm-debugging. | |||
== FILER == | |||
<pre> | |||
/etc/lvm/lvm.conf | |||
/etc/lvm/lvmlocal.conf | |||
$HOME/.lvm_history | |||
</pre> | |||
== SE ÄVEN == | |||
'''lvm(8)''', '''lvm.conf(5)''', '''lvmconfig(8)''', '''lvmdevices(8)''' | |||
'''pvchange(8)''', '''pvck(8)''', '''pvcreate(8)''', '''pvdisplay(8)''', '''pvmove(8)''', '''pvremove(8)''', '''pvresize(8)''', '''pvs(8)''', '''pvscan(8)''' | |||
'''vgcfgbackup(8)''', '''vgcfgrestore(8)''', '''vgchange(8)''', '''vgck(8)''', '''vgcreate(8)''', '''vgconvert(8)''', '''vgdisplay(8)''', '''vgexport(8)''', '''vgextend(8)''', '''vgimport(8)''', '''vgimportclone(8)''', '''vgimportdevices(8)''', '''vgmerge(8)''', '''vgmknodes(8)''', '''vgreduce(8)''', '''vgremove(8)''', '''vgrename(8)''', '''vgs(8)''', '''vgscan(8)''', '''vgsplit(8)''' | |||
'''lvcreate(8)''', '''lvchange(8)''', '''lvconvert(8)''', '''lvdisplay(8)''', '''lvextend(8)''', '''lvreduce(8)''', '''lvremove(8)''', '''lvrename(8)''', '''lvresize(8)''', '''lvs(8)''', '''lvscan(8)''' | |||
'''lvm-fullreport(8)''', '''lvm-lvpoll(8)''', '''blkdeactivate(8)''', '''lvmdump(8)''' | |||
'''dmeventd(8)''', '''lvmpolld(8)''', '''lvmlockd(8)''', '''lvmlockctl(8)''', '''cmirrord(8)''', '''lvmdbusd(8)''', '''fsadm(8)''' | |||
'''lvmsystemid(7)''', '''lvmreport(7)''', '''lvmcache(7)''', '''lvmraid(7)''', '''lvmthin(7)''', '''lvmvdo(7)''', '''lvmautoactivation(7)''' | |||
'''dmsetup(8)''', '''dmstats(8)''', '''readline(3)''' | |||
== COLOPHON == | |||
Denna sida är en del av projektet ''lvm2'' (Logical Volume Manager 2). Information om projektet finns på ⟨http://www.sourceware.org/lvm2/⟩. Om du har en felrapport för denna manualsida, se ⟨https://github.com/lvmteam/lvm2/issues⟩. Denna sida hämtades från projektets uppströms Git-arkiv ⟨git://sourceware.org/git/lvm2.git⟩ den 2026-01-16. (Vid den tidpunkten var datumet för den senaste commit som hittades i arkivet 2025-12-23.) Om du upptäcker renderingsproblem i denna HTML-version av sidan, eller om du tror att det finns en bättre eller mer uppdaterad källa för sidan, eller om du har rättelser eller förbättringar av informationen i denna COLOPHON-text (som ''inte'' är en del av den ursprungliga manualsidan), skicka e-post till man-pages@man7.org. | |||
= Sidslut = | = Sidslut = | ||
Nuvarande version från 20 april 2026 kl. 06.00
lvm(8)
NAMN
lvm — LVM-verktyg
SYNOPSIS
lvm [kommando|fil]
BESKRIVNING
Logical Volume Manager (LVM) tillhandahåller verktyg för att skapa virtuella blockenheter från fysiska enheter. Virtuella enheter kan vara lättare att hantera än fysiska enheter och kan ha funktioner utöver vad de fysiska enheterna själva erbjuder. En volymgrupp (VG) är en samling av en eller flera fysiska enheter, där varje sådan kallas en fysisk volym (PV). En logisk volym (LV) är en virtuell blockenhet som kan användas av systemet eller applikationer. Varje datablock i en LV lagras på en eller flera PV i VG:n, enligt algoritmer som implementeras av Device Mapper (DM) i kärnan.
Kommandot lvm, och andra kommandon som listas nedan, är kommandoradsverktygen för LVM. En separat manualsida beskriver varje kommando i detalj.
Om lvm anropas utan argument visar det en readline-prompt (förutsatt att det kompilerats med stöd för readline). LVM-kommandon kan då anges interaktivt vid denna prompt med readline-funktioner såsom historik samt komplettering av kommandonamn och alternativ. Se readline(3) för detaljer.
Om lvm anropas med argv[0] satt till namnet på ett specifikt LVM-kommando (till exempel genom att använda en hård eller symbolisk länk) fungerar det som det kommandot.
Vid start kräver lvm att endast standardfilbeskrivarna stdin, stdout och stderr är tillgängliga. Om andra hittas stängs de och varningsmeddelanden skrivs ut om läckaget. Denna varning kan undertryckas genom att sätta miljövariabeln LVM_SUPPRESS_FD_WARNINGS.
Där kommandon tar VG- eller LV-namn som argument är det fullständiga sökvägsnamnet valfritt. En LV med namnet "lvol0" i en VG med namnet "vg0" kan anges som "vg0/lvol0". Där en lista över VG:er krävs men lämnas tom kommer en lista över alla VG:er att ersätta den. Där en lista över LV:er krävs men en VG anges kommer en lista över alla LV:er i den VG:n att ersätta den. Således kommer lvdisplay vg0 att visa alla LV:er i "vg0".
En fil som innehåller ett enkelt skript med ett kommando per rad kan också anges på kommandoraden. Skriptet kan också köras direkt om första raden är #! följt av den absoluta sökvägen till lvm.
Ytterligare bindestreck inuti alternativnamn ignoreras. Till exempel accepteras både --readonly och --read-only.
INBYGGDA KOMMANDON
Följande kommandon är inbyggda i lvm utan att länkar normalt skapas i filsystemet för dem.
- config
- Samma som lvmconfig(8) nedan.
- devtypes
- Visa de igenkända inbyggda blockenhetstyperna.
- dumpconfig
- Samma som lvmconfig(8) nedan.
- formats
- Visa igenkända metadataformat.
- fullreport
- Rapportera information om PV:er, PV-segment, VG:er, LV:er och LV-segment, allt på en gång.
- help
- Visa hjälptexten.
- lastlog
- Visa loggrapport över senast körda kommando i LVM-skalet om kommandologgrapportering är aktiverad.
- lvpoll
- Slutför lvmpolld-operationer (internt kommando).
- segtypes
- Visa igenkända segmenttyper för logiska volymer.
- systemid
- Visa eventuell system-ID som för närvarande är satt på denna värd.
- tags
- Visa eventuella taggar definierade på denna värd.
- version
- Visa versionsinformation.
KOMMANDON
Följande kommandon implementerar LVM:s kärnfunktionalitet.
- pvchange
- Ändra attribut för en fysisk volym.
- pvck
- Kontrollera metadata för fysisk volym.
- pvcreate
- Initialisera en disk eller partition för användning av LVM.
- pvdisplay
- Visa attribut för en fysisk volym.
- pvmove
- Flytta fysiska extents.
- pvremove
- Ta bort en fysisk volym.
- pvresize
- Ändra storlek på en disk eller partition som används av LVM.
- pvs
- Rapportera information om fysiska volymer.
- pvscan
- Lista fysiska volymer.
- vgcfgbackup
- Säkerhetskopiera descriptor area för volymgrupp.
- vgcfgrestore
- Återställ descriptor area för volymgrupp.
- vgchange
- Ändra attribut för en volymgrupp.
- vgck
- Kontrollera metadata för volymgrupp.
- vgcreate
- Skapa en volymgrupp.
- vgdisplay
- Visa attribut för volymgrupper.
- vgexport
- Gör volymgrupper okända för systemet.
- vgextend
- Lägg till fysiska volymer till en volymgrupp.
- vgimport
- Gör exporterade volymgrupper kända för systemet.
- vgimportclone
- Importera och byt namn på duplicerad volymgrupp (t.ex. en hårdvaruögonblicksbild).
- vgimportdevices
- Lägg till PV:er från en VG till enhetsfilen.
- vgmerge
- Sammanfoga två volymgrupper.
- vgmknodes
- Återskapa volymgruppskatalog och specialfiler för logiska volymer.
- vgreduce
- Minska en volymgrupp genom att ta bort en eller flera fysiska volymer.
- vgremove
- Ta bort en volymgrupp.
- vgrename
- Byt namn på en volymgrupp.
- vgs
- Rapportera information om volymgrupper.
- vgscan
- Lista volymgrupper.
- vgsplit
- Dela en volymgrupp i två och flytta eventuella logiska volymer från en volymgrupp till en annan genom att flytta hela fysiska volymer.
- lvchange
- Ändra attribut för en logisk volym.
- lvconvert
- Konvertera en logisk volym från linjär till spegel eller snapshot.
- lvcreate
- Skapa en logisk volym i en befintlig volymgrupp.
- lvdisplay
- Visa attribut för en logisk volym.
- lvextend
- Utöka storleken på en logisk volym.
- lvmconfig
- Visa konfigurationsinformationen efter att ha läst in lvm.conf(5) och andra konfigurationsfiler.
- lvmdevices
- Hantera enhetsfilen.
- lvmdiskscan
- Sök efter alla enheter som är synliga för LVM.
- lvmdump
- Skapa informationsdumpar från LVM för diagnostiska ändamål.
- lvreduce
- Minska storleken på en logisk volym.
- lvremove
- Ta bort en logisk volym.
- lvrename
- Byt namn på en logisk volym.
- lvresize
- Ändra storlek på en logisk volym.
- lvs
- Rapportera information om logiska volymer.
- lvscan
- Lista logiska volymer.
För prestandamått, använd dmstats(8), eller för att manipulera kärnans device-mapper-drivrutin som används av LVM direkt, använd dmsetup(8).
GILTIGA NAMN
De giltiga tecknen för VG- och LV-namn är: a–z A–Z 0–9 + _ . -
VG-namn får inte börja med ett bindestreck. Namnet på en ny LV får inte heller börja med ett bindestreck. Om konfigurationsinställningen metadata/record_lvs_history är aktiverad indikerar dock ett LV-namn med bindestreck som prefix att även om LV:n har tagits bort så spåras den fortfarande eftersom den utgör en del av historiken för minst en LV som fortfarande finns kvar. Detta hjälper till att registrera härkomsten för tunna snapshots även efter att vissa länkar i kedjan har tagits bort. En referens till den historiska LV:n 'lvol1' i VG:n 'vg00' skulle vara 'vg00/-lvol1' eller bara '-lvol1' om VG:n redan är satt. (Den senare formen måste föregås av '--' för att avsluta tolkningen av kommandoradsalternativ innan detta argument nås.)
Det finns också olika reserverade namn som används internt av lvm och som inte kan användas som LV- eller VG-namn. En VG kan inte ges något namn som redan finns i /dev/ vid skapandet, och den kan inte heller heta . eller ... En LV kan inte heta ., .., snapshot eller pvmove. LV-namnet får inte heller innehålla någon av följande strängar: _cdata, _cmeta, _corig, _iorig, _mimage, _mlog, _pmspare, _rimage, _rmeta, _tdata, _tmeta, _vdata, _vorigin eller _wcorig. En katalog med namnet på varje volymgrupp skapas under /dev när någon av dess logiska volymer aktiveras. Varje aktiv logisk volym är åtkomlig från denna katalog som en symbolisk länk som pekar på en enhetsnod. Länkar eller noder i /dev/mapper är endast avsedda för intern användning och det exakta formatet och escapingen kan ändras mellan versioner och distributioner. Annan programvara och skript bör använda formatet /dev/Volymgruppsnamn/LogiskVolymsnamn för att minska risken för att behöva ändras när programvaran uppdateras. Om du behöver bearbeta nodnamnen i /dev/mapper kan du använda dmsetup splitname för att separera de ursprungliga namnen för VG, LV och interna lagernamn.
UNIKA NAMN
VG-namn bör vara unika. vgcreate ger ett fel om det angivna VG-namnet matchar ett befintligt VG-namn. Det finns dock fall där olika VG:er med samma namn kan bli synliga för LVM, t.ex. efter att diskar flyttats eller filter ändrats.
När VG:er med samma namn finns kommer kommandon som arbetar på alla VG:er att inkludera alla VG:er med samma namn. Om det tvetydiga VG-namnet anges på kommandoraden ger kommandot ett fel. Felet anger att flera VG:er finns med det angivna namnet. För att bearbeta en av VG:erna specifikt ska alternativet --select användas tillsammans med UUID för den avsedda VG:n:
--select vg_uuid=<uuid>
Ett undantag är om alla utom en av VG:erna med det delade namnet är foreign (se lvmsystemid(7)). I detta fall antas den enda VG som inte är foreign vara den avsedda VG:n och bearbetas.
LV-namn är unika inom en VG. Namnet på en historisk LV kan inte återanvändas förrän den historiska LV:n själv har tagits bort eller bytt namn.
TAGGAR
Taggar är användardefinierade strängar som kan knytas till PV:er, VG:er och LV:er. Taggar kan visas med kommandona pvs/vgs/lvs -o tags. Vissa kommandon accepterar ett taggnamn i stället för ett PV-, VG- eller LV-namn. I dessa fall arbetar kommandot på varje PV/VG/LV med den givna taggen. Taggar bör föregås av @ för att undvika tvetydighet.
Tecken som tillåts i taggar är: A–Z a–z 0–9 _ + . - / = ! : # &
ALLOKERING
När en operation behöver allokera Physical Extents för en eller flera logiska volymer går verktygen tillväga på följande sätt:
Först genererar de den kompletta mängden oallokerade Physical Extents i volymgruppen. Om några intervall av Physical Extents anges i slutet av kommandoraden kommer endast oallokerade Physical Extents inom dessa intervall på de angivna fysiska volymerna att beaktas.
Sedan provar de varje allokeringspolicy i tur och ordning, med början från den striktaste policyn (contiguous) och avslutande med den allokeringspolicy som angetts med --alloc eller satts som standard för den berörda logiska volymen eller volymgruppen. För varje policy, med början från den lägst numrerade Logical Extent i det tomma logiska volymutrymme som behöver fyllas, allokerar de så mycket utrymme som möjligt enligt de begränsningar som policyn ställer. Om mer utrymme behövs går de vidare till nästa policy.
Begränsningarna är följande:
- Contiguous
- Kräver att den fysiska platsen för varje Logical Extent som inte är den första Logical Extent i en logisk volym ligger intill den fysiska platsen för Logical Extent omedelbart före den.
- Cling
- Kräver att den Physical Volume som används för varje Logical Extent som ska läggas till en befintlig logisk volym redan används av minst en Logical Extent tidigare i den logiska volymen. Om konfigurationsparametern allocation/cling_tag_list är definierad anses två Physical Volumes matcha om någon av de listade taggarna finns på båda Physical Volumes. Detta gör det möjligt att tagga grupper av Physical Volumes med liknande egenskaper (t.ex. fysisk placering) och behandla dem som likvärdiga för allokeringsändamål.
När en logisk volym är strimlad eller speglad tillämpas ovanstående begränsningar oberoende på varje stripe eller spegelbild (leg) som behöver utrymme.
- Normal
- Väljer inte en Physical Extent som delar samma Physical Volume som en Logical Extent som redan allokerats till en parallell logisk volym (dvs. en annan stripe eller spegelbild/leg) vid samma offset inom den parallella logiska volymen.
När en spegellogg allokeras samtidigt som logiska volymer för att hålla spegeldata kommer Normal först att försöka välja olika Physical Volumes för loggen och datat. Om det inte är möjligt och konfigurationsparametern allocation/mirror_logs_require_separate_pvs är satt till 0 tillåts därefter loggen att dela Physical Volume(s) med en del av datat.
När metadata för thin pool allokeras gäller liknande överväganden som för en spegellogg i föregående stycke baserat på värdet av konfigurationsparametern allocation/thin_pool_metadata_require_separate_pvs.
Om du förlitar dig på något layoutbeteende utöver det som dokumenteras här bör du vara medveten om att det kan ändras i framtida versioner av koden.
Om du till exempel anger två tomma Physical Volumes på kommandoraden som har identiskt antal fria Physical Extents tillgängliga för allokering, så beaktar den nuvarande koden användningen av dem i den ordning de listas, men det finns ingen garanti för att framtida versioner kommer att behålla detta beteende. Om det är viktigt att få en specifik layout för en viss logisk volym bör du bygga upp den genom en sekvens av steg med lvcreate(8) och lvconvert(8) så att de begränsningar som beskrivs ovan, tillämpade på varje steg, inte lämnar verktygen något utrymme för egna val beträffande layouten.
För att se hur allokeringsprocessen fungerar i ett specifikt fall för närvarande, läs debug-loggens utdata, till exempel genom att lägga till -vvvv till ett kommando.
TYPER AV LOGISKA VOLYMER
Vissa typer av logiska volymer är enkla att skapa och kan göras med ett enda kommando lvcreate(8). De linjära och strimlade typerna av logiska volymer är exempel på detta. Andra typer av logiska volymer kan kräva mer än ett kommando för att skapas. Typerna cache (lvmcache(7)) och thin provisioning (lvmthin(7)) är exempel på detta.
DIAGNOSTIK
Alla verktyg returnerar statuskod noll vid framgång och ett värde skilt från noll vid fel. De icke-nollkoder som används skiljer endast mellan de breda kategorierna okända kommandon, problem vid bearbetning av kommandoradsargument och övriga fel. Eftersom LVM fortfarande utvecklas aktivt ändras koden som används i ett specifikt fall ibland mellan versioner. Meddelandetext kan också ändras.
MILJÖVARIABLER
- HOME
- Katalog som innehåller .lvm_history om det interna readline-skalet anropas.
- LVM_OUT_FD
- Filbeskrivare att använda för vanlig utmatning från LVM-kommandon.
- LVM_ERR_FD
- Filbeskrivare att använda för felutmatning från LVM-kommandon.
- LVM_REPORT_FD
- Filbeskrivare att använda för rapportutmatning från LVM-kommandon.
- LVM_COMMAND_PROFILE
- Namn på standardkommandoprofil att använda för LVM-kommandon. Denna profil åsidosätts av direkt användning av kommandoradsalternativet --commandprofile.
- LVM_RUN_BY_DMEVENTD
- Denna variabel sätts normalt av dmeventd-pluginet för att informera lvm-kommandot om att det körs från ett dmeventd-plugin så att lvm vidtar extra åtgärder för att undvika kommunikation och deadlocks med dmeventd.
- LVM_SYSTEM_DIR
- Katalog som innehåller lvm.conf(5) och andra LVM-systemfiler. Standard är "/etc/lvm".
- LVM_SUPPRESS_FD_WARNINGS
- Undertryck varningar om oväntade filbeskrivare som skickas in till LVM.
- LVM_SUPPRESS_SYSLOG
- Undertryck kontakt med syslog.
- LVM_VG_NAME
- Namnet på volymgruppen som antas för varje referens till en logisk volym som inte anger en sökväg. Inte satt som standard.
- LVM_LVMPOLLD_PIDFILE
- Sökväg till filen som lagrar process-ID för lvmpolld.
- LVM_LVMPOLLD_SOCKET
- Sökväg till den socket som används för att kommunicera med lvmpolld.
- LVM_LOG_FILE_EPOCH
- En sträng på upp till 32 bokstäver som läggs till loggfilens namn och följs av process-ID och en starttidsstämpel med detta format: "_%s_%d_%llu". När denna är satt loggar varje process till en separat fil.
- LVM_LOG_FILE_MAX_LINES
- Om fler än detta antal rader skickas till loggfilen avbryts kommandot. Automatiserade tester använder detta för att avsluta kommandon som loopar.
- LVM_EXPECTED_EXIT_STATUS
- Den status som förväntas när processen avslutas. Använd ">N" för att matcha varje status större än N. Om den faktiska avslutsstatusen matchar och en loggfil producerades tas den bort. LVM_LOG_FILE_EPOCH och LVM_EXPECTED_EXIT_STATUS tillsammans gör det möjligt för automatiserade testskript att kassera ointressant loggdata.
- LVM_SUPPRESS_LOCKING_FAILURE_MESSAGES
- Används för att undertrycka varningsmeddelanden när den konfigurerade låsningen är känd för att vara otillgänglig.
- DM_ABORT_ON_INTERNAL_ERRORS
- Avbryt bearbetningen om koden upptäcker ett icke-fatalt internt fel.
- DM_DISABLE_UDEV
- Undvik interaktion med udev. LVM hanterar då relevanta noder i /dev direkt.
- DM_DEBUG_WITH_LINE_NUMBERS
- Prefixerar källfilnamn och kodradnummer i libdm-debugging.
FILER
/etc/lvm/lvm.conf /etc/lvm/lvmlocal.conf $HOME/.lvm_history
SE ÄVEN
lvm(8), lvm.conf(5), lvmconfig(8), lvmdevices(8)
pvchange(8), pvck(8), pvcreate(8), pvdisplay(8), pvmove(8), pvremove(8), pvresize(8), pvs(8), pvscan(8)
vgcfgbackup(8), vgcfgrestore(8), vgchange(8), vgck(8), vgcreate(8), vgconvert(8), vgdisplay(8), vgexport(8), vgextend(8), vgimport(8), vgimportclone(8), vgimportdevices(8), vgmerge(8), vgmknodes(8), vgreduce(8), vgremove(8), vgrename(8), vgs(8), vgscan(8), vgsplit(8)
lvcreate(8), lvchange(8), lvconvert(8), lvdisplay(8), lvextend(8), lvreduce(8), lvremove(8), lvrename(8), lvresize(8), lvs(8), lvscan(8)
lvm-fullreport(8), lvm-lvpoll(8), blkdeactivate(8), lvmdump(8)
dmeventd(8), lvmpolld(8), lvmlockd(8), lvmlockctl(8), cmirrord(8), lvmdbusd(8), fsadm(8)
lvmsystemid(7), lvmreport(7), lvmcache(7), lvmraid(7), lvmthin(7), lvmvdo(7), lvmautoactivation(7)
dmsetup(8), dmstats(8), readline(3)
COLOPHON
Denna sida är en del av projektet lvm2 (Logical Volume Manager 2). Information om projektet finns på ⟨http://www.sourceware.org/lvm2/⟩. Om du har en felrapport för denna manualsida, se ⟨https://github.com/lvmteam/lvm2/issues⟩. Denna sida hämtades från projektets uppströms Git-arkiv ⟨git://sourceware.org/git/lvm2.git⟩ den 2026-01-16. (Vid den tidpunkten var datumet för den senaste commit som hittades i arkivet 2025-12-23.) Om du upptäcker renderingsproblem i denna HTML-version av sidan, eller om du tror att det finns en bättre eller mer uppdaterad källa för sidan, eller om du har rättelser eller förbättringar av informationen i denna COLOPHON-text (som inte är en del av den ursprungliga manualsidan), skicka e-post till man-pages@man7.org.
Sidslut
Orginalhemsidan på Engelska :https://man7.org/linux/man-pages/man8/lvm.8.html
Det här är en maskinöversättning av Linux man sidor till svenska. Om du hittar fel är vi tacksamma om du rapporterar dem via formuläret som finns på
https://www.linux.se/kontaka-linux-se/
Tack till Datorhjälp som har sponsrat Linux.se med webbhotell.