LSMEM(1) Användarkommandon LSMEM(1)

lsmem - listar tillgängliga minnesintervall med deras onlinestatus

lsmem [flaggor]

Kommandot lsmem listar intervallen av tillgängligt minne och deras inkopplingsstatus. De listade minnesblocken motsvarar representationen av minnesblock i sysfs. Kommandot visar också storleken på ett enskilt minnesblock och den totala mängden inkopplat respektive frånkopplat minne.

Standardutmatningen är kompatibel med den ursprungliga implementeringen från s390-tools, men det rekommenderas starkt att undvika att använda standardutmatningar i dina skript. Definiera alltid förväntade kolumner explicit genom att använda flaggan --output tillsammans med en kolumnlista i miljöer där en stabil utdata krävs.

Kommandot lsmem listar alltid ett nytt minnesintervall när det aktuella minnesblocket skiljer sig från det föregående i någon utdatakolumn. Standardbeteendet kan åsidosättas med flaggan --split (exempelvis lsmem --split=ZONES). Specialordet none kan användas med --split för att ignorera alla skillnader mellan minnesblock och skapa så stora sammanhängande intervall som möjligt. Motsatt innebörd har --all, som listar alla enskilda minnesblock.

Observera att vissa utdatakolumner kan ge felaktig information om en uppdelningspolicy tvingar lsmem att ignorera skillnader i vissa attribut. Om du exempelvis sammanför borttagbara och icke-borttagbara minnesblock till ett intervall markeras hela intervallet som icke-borttagbart i utdata från lsmem.

Kolumner som stöds är RANGE, SIZE, STATE, REMOVABLE, BLOCK, NODE, ZONES, CONFIGURED och MEMMAP-ON-MEMORY.

RANGE

Minnesintervallets fysiska start- och slutadresser.

SIZE

Minnesintervallets storlek, som motsvarar den totala mängden minne i intervallet.

STATE

Minnesintervallets aktuella inkopplingsstatus. Vanliga tillstånd är inkopplat, frånkopplat och övergångstillstånd.

REMOVABLE

Om minnet är borttagbart.

BLOCK

Det specifika minnesblocksnumret eller intervallet.

NODE

NUMA-noden (Non-Uniform Memory Access) som minnesblocket tillhör.

ZONES

Minneszonerna som blocken tillhör, såsom DMA, Normal, Movable.

CONFIGURED

Minnesblockets konfigurationstillstånd. Se chmem(8) för detaljer om att konfigurera eller avkonfigurera minnesblock.

MEMMAP-ON-MEMORY

Minnesblockets memmap-on-memory-tillstånd vid konfigurering. Inställningen anger var dynamisk minnestilläggning lagrar sina interna metadata (arrayen med struct page eller memmap). Om MEMMAP-ON-MEMORY är satt till 1 allokeras metadata direkt från det nytillagda minnet, vilket möjliggör dynamisk minnestilläggning även vid hög minnesbelastning. Om värdet är 0 allokeras memmap-metadata från befintligt systemminne.

Alla kolumner stöds inte på alla system. Om en kolumn som inte stöds anges skriver lsmem ut kolumnen men lämnar den utan data. Dessutom kan lsmem hoppa över kolumner som CONFIGURED eller MEMMAP-ON-MEMORY om dessa tillstånd inte är relevanta för systemets arkitektur.

På system som kan konfigurera och avkonfigurera minne måste minnet konfigureras innan det kan kopplas in.

Sammanfattningsraden ”Memmap on memory parameter” visar den globala inställningen för memmap-on-memory i memory_hotplug. Denna ställs vanligtvis in på kärnans kommandorad via memory_hotplug.memmap_on_memory.

-a, --all

Lista varje enskilt minnesblock, istället för att kombinera minnesblock med liknande attribut.

-b, --bytes

Skriv ut storlekar i byte i stället för i läsbart format.

Som standard visas storlekar i enheter som är potenser av 1024 byte. Enheternas formella förkortningar (KiB, MiB, GiB, …) förkortas ytterligare till endast den första bokstaven: K, M, G, ….

-J, --json

Använd JSON-utdataformat.

-n, --noheadings

Skriv inte ut någon rubrikrad.

-o, --output lista

Ange vilka utdatakolumner som ska skrivas ut. Använd --help för att få en lista över alla kolumner som stöds. Standardlistan med kolumner kan utökas om lista anges i formatet +lista (t.ex. lsmem -o +NODE).

--output-all

Skriv ut alla tillgängliga kolumner.

-P, --pairs

Producerar utdata i form av nyckel="värde"-par. Alla potentiellt osäkra värde-tecken är hexadecalerade (\x<code>).

-r, --raw

Producerar utdata i råformat. Alla potentiellt osäkra tecken är hexadecalerade (\x<code>).

-S, --split lista

Ange vilka kolumner som används för att dela upp minnesblock i intervall. Kolumner som stöds är STATE, REMOVABLE, NODE, ZONES, CONFIGURED, MEMMAP-ON-MEMORY och none. Andra kolumnnamn ignoreras utan meddelande. Se BESKRIVNING ovan för mer information.

-s, --sysroot katalog

Samlar in minnesdata för en annan Linux-instans än den instans från vilken kommandot lsmem utfärdades. Den angivna katalogen är systemroten för den Linux-instans som ska inspekteras.

--summary[=när]

Denna flagga styr utmatningen av sammanfattningsrader. Det valfria argumentet när kan vara never, always eller only. Om argumentet när utelämnas används only. Sammanfattningen undertrycks för --raw, --pairs och --json.

-h, --help

Visa hjälptext och avsluta.

-V, --version

Visa version och avsluta.

LSMEM_COLUMNS

Anger en kommaseparerad lista över utdatakolumner att skriva ut. Alla kolumner som listas i --help kan användas.

LIBSMARTCOLS_DEBUG=all

aktiverar libsmartcols felsökningsutdata.

LIBSMARTCOLS_DEBUG_PADDING=on

använda synliga utfyllnadstecken.

lsmem skrevs ursprungligen av Gerald Schaefer för s390-tools i Perl. C-versionen för util-linux skrevs av Clemens von Mann, Heiko Carstens och Karel Zak.

chmem(8)

För felrapporter, använd felhanteraren https://github.com/util-linux/util-linux/issues.

Kommandot lsmem ingår i paketet util-linux som kan hämtas från Linux Kernel Archive https://www.kernel.org/pub/linux/utils/util-linux/.

2026-09-21 util-linux 2.42.4