lvmdevices(8)

Från Wiki.linux.se -Linux wikipedia på Svenska.
Hoppa till navigering Hoppa till sök

lvmdevices(8)

NAMN

lvmdevices — Hantera enhetsfilen

SYNOPSIS

lvmdevices alternativargument
    [ alternativargument ]

    --adddev PV
    --addpvid Sträng
    --check
    --commandprofile Sträng
    --config Sträng
 -d|--debug
    --deldev PV
    --delpvid Sträng
    --deviceidtype Sträng
    --devices PV
    --devicesfile Sträng
    --driverloaded y|n
 -h|--help
    --journal Sträng
    --lockopt Sträng
    --longhelp
    --nohints
    --nolocking
    --profile Sträng
 -q|--quiet
 -t|--test
    --update
 -v|--verbose
    --version
 -y|--yes

BESKRIVNING

LVM:s enhetsfil är listan över enheter som lvm-kommandon kommer att använda. Den finns på /etc/lvm/devices/system.devices. Kommandot lvmdevices(8) hanterar filen och används för att lägga till, ta bort och lista enheter.

Lista enheter

Kör kommandot lvmdevices utan alternativ eller argument för att visa posterna i system.devices: lvmdevices

Varje rad börjar med ett aktuellt enhetsnamn från systemet, följt av dess enhets-ID från enhetsfilen, följt av andra enhetsdetaljer som används av lvm. En rad börjar med "Device none" om ingen enhet i systemet matchar enhets-ID:t. (Om man tittar direkt på filen system.devices ser man inte om enheten faktiskt finns i systemet.)

Lägga till enheter

För att använda en enhet med lvm, lägg till den i enhetsfilen med ett av följande kommandon.

Lägg till en enhet genom att referera till dess enhetssökväg: lvmdevices --adddev enhet

Lägg till en enhet genom att referera till dess PVID: lvmdevices --addpvid PVID

Lägg till en enhet genom att referera till dess enhets-ID: lvmdevices --addid IDNAMN --deviceidtype IDTYP

Lägg till alla PV:er i en VG: vgimportdevices VG

Lägg till alla PV:er i alla synliga VG:er: vgimportdevices -a

pvcreate, vgcreate och vgextend tittar också utanför den befintliga enhetsfilen för att hitta målenheten och lägger automatiskt till den i enhetsfilen.

Ta bort enheter

Att ta bort en enhet från enhetsfilen gör att lvm inte längre kan se eller använda den enheten. Ta bort en enhet med ett av följande kommandon.

Ta bort en enhet genom att referera till dess enhetssökväg: lvmdevices --deldev enhet

Ta bort en enhet genom att referera till dess PVID: lvmdevices --delpvid PVID

Ta bort en enhet genom att referera till dess enhets-ID: lvmdevices --delid IDNAMN --deviceidtype IDTYP

enhets-ID:n

LVM identifierar enheter i enhetsfilen med hårdvaruspecifika ID:n, såsom WWID eller serienummer. Delsystemsspecifika ID:n används för virtuella enhetstyper, vilka också syftar till att vara unika och stabila. När inget hårdvaru- eller delsystems-ID finns tillgängligt, faller lvm tillbaka till att använda enhetsnamnet som enhets-ID. Att använda enhetsnamn som ID:n är inte optimalt eftersom de inte är stabila och ofta ändras efter omstart. När enhetsnamn används som ID:n måste lvm utföra extra enhetsskanning för att hitta enheter om enhetsnamnet ändras.

När stabila enhets-ID:n används kommer lvm inte att komma åt enheter utanför dem som listas i enhetsfilen. När enhetsnamn används som ID:n kommer lvm att skanna enheter utanför enhetsfilen för att hitta PV:er på enheter som har bytt namn. Konfigurationsinställningen search_for_devnames kan användas för att styra lvm:s beteende när det gäller att hitta poster med omdöpta enhetsnamn.

Ett enhets-ID har två delar: en IDTYP och ett IDNAMN.

IDTYP anger ursprunget för ID:t, och IDNAMN är själva identifieraren. Det finns en fördefinierad uppsättning IDTYPER som listas i nästa avsnitt. En post i enhetsfilen måste ha en av dessa ID-typer. När en enhet läggs till i enhetsfilen väljer lvm automatiskt den bästa IDTYPEN, vilket kan åsidosättas med alternativet --deviceidtype (detta rekommenderas normalt inte.)

För att visa alla möjliga enhets-ID:n för en enhet, eller värdet för en specifik typ, använd kommandona:

lvmdevices --listids enhet lvmdevices --listids enhet --deviceidtype IDTYP

typer av enhets-ID

De tillgängliga typerna av enhets-ID är:

• sys_wwid använder det wwid som rapporteras av sysfs-filen wwid.

 Detta är förstahandsvalet.

• wwid_naa använder det naa-wwid som avkodas från sysfs-filen

 vpd_pg83.

• wwid_eui använder det eui-wwid som avkodas från sysfs-filen

 vpd_pg83.

• wwid_t10 använder det t10-wwid som avkodas från sysfs-filen

 vpd_pg83.

• sys_serial använder serienumret som rapporteras av sysfs-filen

 serial eller filen vpd_pg80. Ett serienummer används om inget wwid
 finns tillgängligt.

• mpath_uuid används för dm multipath-enheter och rapporteras av

 sysfs.

• crypt_uuid används för dm crypt-enheter och rapporteras av sysfs.

• md_uuid används för md-enheter och rapporteras av sysfs.

• lvmlv_uuid används om en PV ligger ovanpå en lvm LV, rapporterad av

 sysfs.

• loop_file används för loop-enheter, filnamnet för backing file som

 rapporteras av sysfs.

• devname enhetsnamnet används om ingen annan typ är tillämplig.

• nvme_uuid, nvme_nguid, nvme_eui64 används normalt inte, men kan

 förekomma för nvme-enheter som rapporterar ogiltiga wwid-värden.

sysfs-filer

De flesta typerna av enhets-ID läser enhets-ID-värdet från sysfs. Dessa sysfs-värden kan också läsas direkt från följande sökvägar:

/sys/dev/block/stor:minor/device/wwid /sys/dev/block/stor:minor/device/serial /sys/dev/block/stor:minor/wwid /sys/dev/block/stor:minor/device/vpd_pg83 (binär) /sys/dev/block/stor:minor/device/vpd_pg80 (binär) /sys/dev/block/stor:minor/dm/uuid (lvm läser via ioctl) /sys/dev/block/stor:minor/md/uuid /sys/dev/block/stor:minor/loop/backing_file

(Vissa sysfs-värden modifieras innan de används som enhets-ID, till exempel tas mellanslag bort eller ersätts med understreck.)

innehåll i enhetsfilen

LVM skriver viss ytterligare information till enhetsfilen utöver enhets-ID:n. LVM-kommandon uppdaterar denna information automatiskt om den ändras. Detta inkluderar det senast kända enhetsnamnet och PV UUID (PVID) från LVM-diskhuvudet.

Kontrollera om enhetsfilens innehåll behöver uppdateras: lvmdevices --check

Uppdatera fält i enhetsfilen som är föråldrade: lvmdevices --update

Enhetsfilen är avsedd att redigeras av lvm-kommandon, inte av användaren. Enhetsfilen innehåller ett HASH-värde som lvm använder för att upptäcka om filen har ändrats sedan lvm senast skrev den. När lvm uppdaterar enhetsfilen flyttas den tidigare versionen till /etc/lvm/devices/backup/.

Följande fält finns i enhetsfilen: VERSION: ökas vid varje filuppdatering. PRODUCT_UUID: ett unikt maskin-ID som används för att upptäcka om system.devices-filen har flyttats till en ny maskin och kan behöva uppdateras. När det inte finns tillgängligt används HOSTNAME.

Fält för enhetspost: IDTYPE: anger källan till enhets-ID-värdet i IDNAME. IDNAME: det unika enhets-ID-värdet. DEVNAME: det senaste enhetsnamnet som är kopplat till enhets-ID:t. PVID: LVM PV UUID från LVM-diskhuvudet. PART: partitionsnumret om en PV finns på en partition.

uppdatering av enhets-ID

När lvm skriver system.devices inkluderar det ett lokalt maskin-ID i filen system.devices (som PRODUCT_UUID eller HOSTNAME.) När lvm läser system.devices jämför det detta sparade maskin-ID med den aktuella maskinen, vilket gör att lvm kan upptäcka när system.devices har kopierats eller återställts på en annan maskin. När ett maskinbyte upptäcks aktiverar lvm ett läge för "device ID refresh" (konfigurerat med lvm.conf device_ids_refresh och device_ids_refresh_checks.)

I uppdateringsläget kommer en enhet i system.devices som inte hittas med sitt enhets-ID att lokaliseras med sitt PVID. LVM kommer att skanna alla enheter i systemet för att leta efter saknade PVID:n i system.devices. Om ett PVID hittas på en ny enhet, uppdateras posten i system.devices med ett nytt enhets-ID som matchar den nya enhet där PVID hittades. Uppdateringsläget kan konfigureras att köras en gång, när maskinbytet först upptäcks, eller vara aktiverat under en viss tid efter det första uppdateringsförsöket, eller inaktiveras helt.

device_ids_refresh = 0 Inaktiverar uppdateringsläget.

device_ids_refresh = 1 Aktiverar ett försök att uppdatera enhets-ID:n när ett maskinbyte först upptäcks.

device_ids_refresh = sekunder Uppdateringsläget är aktiverat under detta antal sekunder efter det första uppdateringsförsöket, eller tills alla PV:er i system.devices har hittats. Under denna period visas en rad REFRESH_UNTIL i system.devices. Tillåtna värden är 10–600 sekunder.

Utöver det automatiserade uppdateringsläget för enhets-ID:n kan uppdatering också göras manuellt:

Kontrollera om system.devices skulle uppdateras med nya enhets-ID:n: lvmdevices --check --refresh

Uppdatera system.devices med nya enhets-ID:n om PV:er hittas på nya enheter: lvmdevices --update --refresh

Maskin-ID:t som används i system.devices kommer att vara antingen DMI product_uuid från /sys/devices/virtual/dmi/id/product_uuid, eller värdnamnet från uname(2). Se lvm.conf(5) device_ids_refresh_checks för att konfigurera detta.

anpassade enhetsfiler

Flera enhetsfiler kan finnas i /etc/lvm/devices, vilket gör att lvm kan användas med olika uppsättningar av enheter. Till exempel kanske en viss applikation inte behöver komma åt systemets enheter, och systemet behöver kanske inte komma åt applikationens enheter. I det fallet kan system.devices lista endast systemets enheter och filen <applikation>.devices kan lista endast applikationens enheter. Alternativet --devicesfile <filnamn> används för att välja vilken enhetsfil som ska användas med kommandot. Om alternativet inte är satt används standardfilen system.devices.

Om den speciella enhetsfilen /etc/lvm/devices/dmeventd.devices finns, använder dmeventd dmeventd.devices i stället för system.devices. Att använda dmeventd.devices är nödvändigt om VG:er från separata enhetsfiler kräver tjänster från dmeventd. I så fall bör dmeventd.devices lista enheter från alla VG:er som kräver dmeventd.

inaktivering och åsidosättning

Det finns flera sätt att inaktivera eller åsidosätta funktionen med enhetsfilen:

• ingen system.devices

 Om filen system.devices inte finns, är funktionen med enhetsfilen
 inaktiverad.

• use_devicesfile=0

 Om lvm.conf use_devicesfile är satt till 0, är funktionen med
 enhetsfilen inaktiverad, även om filen system.devices finns.

• --devicesfile ""

 Om ett tomt namn på enhetsfil anges på kommandoraden, kommer det
 kommandot inte att använda någon enhetsfil.

• --devices enhet

 Om specifika enheter anges på kommandoraden med --devices, kommer
 kommandot inte att använda någon enhetsfil och kommer endast att
 komma åt de namngivna enheterna.

• pvs -A

 Om kommandot pvs(8) får alternativet -A eller --allpvs, kommer det
 inte att använda någon enhetsfil.

När enhetsfilen är inaktiverad återgår lvm-kommandon till att använda filtret i lvm.conf. När enhetsfilen används ignorerar lvm-kommandon inställningen filter i lvm.conf, förutom vgimportdevices som faktiskt tillämpar regex-filtret på uppsättningen av enheter i systemet när det letar efter VG:er att importera till enhetsfilen.

VG-metadata

LVM-kommandon som skriver VG-metadata kommer att inkludera enhets-ID för varje PV i VG-metadata. Enhets-ID:t kan visas med alternativen:

pvs -o deviceidtype,deviceid

(Observera att kommandot lvmdevices inte uppdaterar VG-metadata, men efterföljande lvm-kommandon som modifierar metadata kommer att inkludera enhets-ID:t.)

skapa enhetsfilen

Om filen system.devices ännu inte finns, kommer kommandona pvcreate eller vgcreate att skapa den endast om de inte ser några befintliga VG:er i systemet. lvmdevices --adddev och vgimportdevices kommer alltid att skapa en ny enhetsfil om den ännu inte finns.

ANVÄNDNING

Skriv ut enheter i enhetsfilen.

lvmdevices
    [ COMMON_OPTIONS ]

—

Kontrollera enhetsfilen och rapportera felaktiga värden.

lvmdevices --check
    [ COMMON_OPTIONS ]

—

Uppdatera enhetsfilen för att rätta felaktiga värden.

lvmdevices --update
    [ COMMON_OPTIONS ]

—

Lägg till en enhet i enhetsfilen.

lvmdevices --adddev PV
    [ --deviceidtype Sträng ]
    [ COMMON_OPTIONS ]

—

Ta bort en enhet från enhetsfilen.

lvmdevices --deldev PV
    [ COMMON_OPTIONS ]

—

Hitta enheten med angivet PVID och lägg till den i enhetsfilen.

lvmdevices --addpvid Sträng
    [ --deviceidtype Sträng ]
    [ COMMON_OPTIONS ]

—

Ta bort posten i enhetsfilen för angivet PVID.

lvmdevices --delpvid Sträng
    [ COMMON_OPTIONS ]

—

Vanliga alternativ för lvm:
    [ -d|--debug ]
    [ -h|--help ]
    [ -q|--quiet ]
    [ -t|--test ]
    [ -v|--verbose ]
    [ -y|--yes ]
    [ --commandprofile Sträng ]
    [ --config Sträng ]
    [ --devices PV ]
    [ --devicesfile Sträng ]
    [ --driverloaded y|n ]
    [ --journal Sträng ]
    [ --lockopt Sträng ]
    [ --longhelp ]
    [ --nohints ]
    [ --nolocking ]
    [ --profile Sträng ]
    [ --version ]

ALTERNATIV

--adddev PV
       Lägg till en enhet i enhetsfilen.

--addpvid Sträng
       Hitta en enhet med PVID och lägg till enheten i enhetsfilen.

--check
       Kontrollerar innehållet i enhetsfilen. Rapporterar felaktiga
       enhetsnamn eller PVID:n för poster.

--commandprofile Sträng
       Kommandoprofilen som ska användas för kommandokonfiguration.
       Se lvm.conf(5) för mer information om profiler.

--config Sträng
       Konfigurationsinställningar för kommandot. Dessa åsidosätter
       inställningar i lvm.conf(5). Argumentet Sträng använder samma
       format som lvm.conf(5), eller kan använda syntaxen
       sektion/fält. Se lvm.conf(5) för mer information om
       konfiguration.

-d|--debug ...
       Ställ in felsökningsnivå. Upprepa från 1 till 6 gånger för att
       öka detaljnivån för meddelanden som skickas till loggfilen
       och/eller syslog (om konfigurerat).

--deldev PV
       Ta bort en enhet från enhetsfilen.

--delpvid Sträng
       Ta bort en enhet med PVID från enhetsfilen.

--deviceidtype Sträng
       Typen av enhets-ID som ska användas för enheten. Om den angivna
       typen finns tillgänglig för enheten, kommer den att
       åsidosätta standardtypen som lvm annars skulle använda.

--devices PV
       Enheter som kommandot får använda. Detta alternativ kan
       upprepas eller acceptera en kommaseparerad lista över
       enheter. Detta åsidosätter enhetsfilen.

--devicesfile Sträng
       En fil som listar enheter som LVM ska använda. Filen måste
       finnas i /etc/lvm/devices/ och hanteras med kommandot
       lvmdevices(8). Detta åsidosätter inställningarna
       devices/devicesfile och devices/use_devicesfile i
       lvm.conf(5).

--driverloaded y|n
       Om satt till no kommer kommandot inte att försöka använda
       device-mapper. För testning och felsökning.

-h|--help
       Visa hjälptext.

--journal Sträng
       Registrera information i systemd-journalen. Denna information
       är utöver information som aktiveras av inställningen
       log/journal i lvm.conf. command: registrera information om
       kommandot. output: registrera standardutdata från kommandot.
       debug: registrera full felsökningsinformation för kommandot.

--lockopt Sträng
       Används för att skicka alternativ för specialfall till
       lvmlockd. Se lvmlockd(8) för mer information.

--longhelp
       Visa lång hjälptext.

--nohints
       Använd inte hint-filen för att lokalisera enheter för PV:er.
       Ett kommando kan läsa fler enheter för att hitta PV:er när
       hints inte används. Kommandot kommer fortfarande att utföra
       standardinvalidering av hint-filen där så är lämpligt.

--nolocking
       Inaktivera låsning.

--profile Sträng
       Ett alias för --commandprofile eller --metadataprofile,
       beroende på kommandot.

-q|--quiet ...
       Undertryck utdata och loggmeddelanden. Åsidosätter --debug och
       --verbose. Upprepa en gång för att också undertrycka alla
       frågor med svaret 'no'.

-t|--test
       Kör i testläge. Kommandon uppdaterar inte metadata. Detta
       implementeras genom att all skrivning av metadata
       inaktiveras men ändå returnera framgång till den anropande
       funktionen. Detta kan leda till ovanliga felmeddelanden i
       flerstegsoperationer om ett verktyg förlitar sig på att läsa
       tillbaka metadata som det tror har ändrats men som inte har
       det.

--update
       Uppdatera innehållet i enhetsfilen.

-v|--verbose ...
       Ställ in verbose-nivå. Upprepa från 1 till 4 gånger för att
       öka detaljnivån på meddelanden som skickas till stdout och
       stderr.

--version
       Visa versionsinformation.

-y|--yes
       Fråga inte efter bekräftelse interaktivt utan anta alltid att
       svaret är ja. Använd med extrem försiktighet. (För
       automatiskt nej, se -qq.)

VARIABLER

Sträng
       Se beskrivningen av alternativet för information om strängens
       innehåll.

Storlek[ENHET]
       Storlek är ett inmatningstal som accepterar en valfri enhet.
       Inmatningsenheter behandlas alltid som bas två-värden, oavsett
       versalisering, t.ex. avser både 'k' och 'K' 1024.
       Standardinmatningsenheten anges med bokstav, följt av |ENHET.
       ENHET representerar andra möjliga inmatningsenheter:
       b|B är byte, s|S är sektorer om 512 byte, k|K är KiB,
       m|M är MiB, g|G är GiB, t|T är TiB, p|P är PiB, e|E är EiB.
       (Detta ska inte förväxlas med styrning av utdata via --units,
       där versaler betyder multipel av 1000.)

MILJÖVARIABLER

Se lvm(8) för information om miljövariabler som används av lvm. Till exempel kan LVM_VG_NAME i allmänhet ersätta en obligatorisk VG-parameter.

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)

KOLOFON

Den här sidan ä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 tiden 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 KOLOFON (som inte är en del av den ursprungliga manualsidan), skicka e-post till man-pages@man7.org

Red Hat, Inc. LVM TOOLS 2.03.39(2)-git (2025-12-15) LVMDEVICES(8)

Sidslut

Orginalhemsidan på Engelska :https://man7.org/linux/man-pages/man8/lvmdevices.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.