LVM System hängt komplett für mehrere Sekunden

Hallo, ich habe das Problem das bei hoher Festplattenaktivität z.b. kopieren von Dateien oder ein Spiel wird bei Steam aktualisiert, das komplette System zeitweise komplett für mehrere Sekunden hängt. Das hat erst angefangen nachdem ich meine Partitionen komplett auf lvm umgestellt habe, ist das ein bekanntes Problem und gibt es eine Lösung dafür?

Update: Habe es auch mit dem 5.19er Kernel ausprobiert, da besteht das Problem genauso. Beim kopieren von einer SSD auf ein anderes Laufwerk ist das System so lange der Kopiervorgang läuft gar nicht mehr zu benutzen.

System:
  Kernel: 6.0.2-2-MANJARO arch: x86_64 bits: 64 compiler: gcc v: 12.2.0
    parameters: BOOT_IMAGE=/boot/vmlinuz-6.0-x86_64
    root=UUID=d0500f07-9490-44a3-9e12-b5ff7085726f rw quiet apparmor=1
    security=apparmor udev.log_priority=3
  Desktop: KDE Plasma v: 5.25.5 tk: Qt v: 5.15.6 wm: kwin_wayland vt: 2
    dm: SDDM Distro: Manjaro Linux base: Arch Linux
Machine:
  Type: Desktop Mobo: Micro-Star model: MPG X570 GAMING PLUS (MS-7C37) v: 2.0
    serial: <superuser required> UEFI: American Megatrends LLC. v: A.H0
    date: 05/19/2022
CPU:
  Info: model: AMD Ryzen 7 3700X bits: 64 type: MT MCP arch: Zen 2 gen: 3
    level: v3 note: check built: 2020-22 process: TSMC n7 (7nm)
    family: 0x17 (23) model-id: 0x71 (113) stepping: 0 microcode: 0x8701021

Generell und ohne LVM jetzt betrachtet: Wenn solche “Hänger” passieren, dann wird auf der System Partition extrem geschrieben mit hoher Priortät, was eben auch andere System Prozesses beeinflusst. LVM is ja nochmal eine Ebene, die die Latenz verzögert.

Generell würde ich sagen: Verwende LVM im RAID0 Verbund oder verwende eine andere Festplatte für deine Spiele und Dateien.

Es gibt auch die Möglichkeit mit ionice gewisse Prozesse zu priorisieren.

:notebook: Oder einfach gesagt: Hänger passieren, wenn es einen “IO Bottleneck” gibt, ähnlich wie bei CPU → GPU, was zu Stottern bei Spielen führt. Für LVM musst du dann deine Festplatten upgraden.

Vielen Dank für deine Antwort.

Mein Ziel mit LVM war es ja eigentlich das ich meine Partitionen bei Bedarf problemlos erweitern kann. Das is ja auch Sinn und Zweck von lvm, wenn ich es richtig verstanden habe.
Das System lief vorher mit den selben Festplatten wunderbar und ich hatte nie solche Ausfälle. Das es jetzt solche Probleme gibt, nur weil man auf LVM umgestiegen ist, dann macht das ganze ja irgendwie keinen Sinn.
Raid0 würde ja bedeuten das ich das komplette System neu aufsetzen müsste, oder ist das irgendwie im Betrieb zu realisieren? Es sind mehrere TB an Daten die ich dann irgendwo ja sichern müsste.

Deine inxi Ausgabe hat aber leider nicht die entscheidenden Informationen bezüglich der Festplatten…

inxi -Fazy
sudo parted -l
lsblk --fs

Aber ja, raid0 muss zu beginn erstellt werden, auch wenn lvm die Funktion lvmraid hat, wird trotzdem mdadm verwendet. Wüsste jetzt nicht was man da einstellen kann, um die IO zu reduzieren.

Meine Meinung: Ohne mindestens 2 Festplatten im RAID0 oder 3 Festplatten in RAID5 macht LVM wegen der hohen IO keinen Sinn. Bei SSDs sieht das anders aus :wink:

Ich würde eher BTRFS empfehlen, wenn nur 2 Festplatten. RAID0/1 funktioniert wunderbar und Subvolumes können flexibel eingehängt werden. Da brauch man sich auch keine Gedanken um die Größe machen. Du kannst Subvolumes als Partitionen verstehen, die in dem BTRFS-Schema residieren.

Mein System besteht zur Zeit aus mehr als 2 Festplatten. 2x SSD, 3xHDD(SATA), die HDDs habe ich jetzt bereits schon in LVM “konvertiert” und 2 Volumen Groups angelegt. 1x Volumengroup für das Homeverzeichniss wo zur Zeit auch nur die grösste und aktuellste HDD drinne is und eine Volumen Group mit den beiden anderen Festplatten für Backupdateien, Datengrab und ein verschlüsseltes Laufwerk für sensible Daten. :wink:
Jetzt wollte ich die SSD freischaufeln um sie auch in eine “SSD-Laufwerk Volumen Group” zu packen und dabei ist mir das Problem aufgefallen das beim Kopiervorgang das gesamte System hängt.
Das root-system liegt auch auf einer ssd, das wollte ich aber ausserhalb des lvm belassen.

Also gibt es als Lösung für mein Problem nur, das komplette System auf SSD aufzurüsten oder die ältesten Festplatten gegen neuere auszutauschen und hoffen das es dann funktioniert.

Habe jetzt mal die komplette inxi Ausgabe angehängt.

System:
  Kernel: 5.19.16-2-MANJARO arch: x86_64 bits: 64 compiler: gcc v: 12.2.0
    parameters: BOOT_IMAGE=/boot/vmlinuz-5.19-x86_64
    root=UUID=d0500f07-9490-44a3-9e12-b5ff7085726f rw quiet apparmor=1
    security=apparmor udev.log_priority=3
  Desktop: KDE Plasma v: 5.25.5 tk: Qt v: 5.15.6 wm: kwin_wayland vt: 2
    dm: SDDM Distro: Manjaro Linux base: Arch Linux
Machine:
  Type: Desktop Mobo: Micro-Star model: MPG X570 GAMING PLUS (MS-7C37) v: 2.0
    serial: <superuser required> UEFI: American Megatrends LLC. v: A.H0
    date: 05/19/2022
CPU:
  Info: model: AMD Ryzen 7 3700X bits: 64 type: MT MCP arch: Zen 2 gen: 3
    level: v3 note: check built: 2020-22 process: TSMC n7 (7nm)
    family: 0x17 (23) model-id: 0x71 (113) stepping: 0 microcode: 0x8701021
  Topology: cpus: 1x cores: 8 tpc: 2 threads: 16 smt: enabled cache:
    L1: 512 KiB desc: d-8x32 KiB; i-8x32 KiB L2: 4 MiB desc: 8x512 KiB
    L3: 32 MiB desc: 2x16 MiB
  Speed (MHz): avg: 3608 high: 3752 min/max: 2200/4426 boost: enabled
    scaling: driver: acpi-cpufreq governor: performance cores: 1: 3600 2: 3600
    3: 3600 4: 3752 5: 3600 6: 3601 7: 3605 8: 3600 9: 3598 10: 3600 11: 3600
    12: 3600 13: 3597 14: 3593 15: 3600 16: 3596 bogomips: 115247
  Flags: avx avx2 ht lm nx pae sse sse2 sse3 sse4_1 sse4_2 sse4a ssse3 svm
  Vulnerabilities:
  Type: itlb_multihit status: Not affected
  Type: l1tf status: Not affected
  Type: mds status: Not affected
  Type: meltdown status: Not affected
  Type: mmio_stale_data status: Not affected
  Type: retbleed mitigation: untrained return thunk; SMT enabled with STIBP
    protection
  Type: spec_store_bypass mitigation: Speculative Store Bypass disabled via
    prctl
  Type: spectre_v1 mitigation: usercopy/swapgs barriers and __user pointer
    sanitization
  Type: spectre_v2 mitigation: Retpolines, IBPB: conditional, STIBP:
    always-on, RSB filling, PBRSB-eIBRS: Not affected
  Type: srbds status: Not affected
  Type: tsx_async_abort status: Not affected
Graphics:
  Device-1: AMD Navi 10 [Radeon RX 5600 OEM/5600 XT / 5700/5700 XT]
    vendor: Gigabyte driver: amdgpu v: kernel arch: RDNA-1 code: Navi
    process: TSMC n7 (7nm) built: 2019-20 pcie: gen: 4 speed: 16 GT/s
    lanes: 16 ports: active: DP-1,HDMI-A-1 empty: DP-2,DP-3 bus-ID: 2f:00.0
    chip-ID: 1002:731f class-ID: 0300
  Device-2: Logitech HD Pro Webcam C920 type: USB
    driver: snd-usb-audio,uvcvideo bus-ID: 5-1.2.4:8 chip-ID: 046d:082d
    class-ID: 0102 serial: <filter>
  Display: wayland server: X.org v: 1.21.1.4 with: Xwayland v: 22.1.3
    compositor: kwin_wayland driver: X: loaded: amdgpu
    unloaded: modesetting,radeon alternate: fbdev,vesa dri: radeonsi
    gpu: amdgpu d-rect: 4480x1440 display-ID: 0
  Monitor-1: DP-1 pos: right res: 2560x1440 size: N/A modes: N/A
  Monitor-2: HDMI-A-1 pos: primary,left res: 1920x1080 size: N/A modes: N/A
  OpenGL: renderer: AMD Radeon RX 5700 XT (navi10 LLVM 14.0.6 DRM 3.47
    5.19.16-2-MANJARO) v: 4.6 Mesa 22.1.7 direct render: Yes
Audio:
  Device-1: Creative Labs Sound Core3D [Sound Blaster Recon3D / Z-Series]
    driver: snd_hda_intel v: kernel bus-ID: 1-2.3:7 pcie: chip-ID: 0951:16a4
    gen: 1 speed: 2.5 GT/s class-ID: 0300 serial: <filter> lanes: 1
    bus-ID: 29:00.0 chip-ID: 1102:0012 class-ID: 0403
  Device-2: AMD Navi 10 HDMI Audio driver: snd_hda_intel v: kernel pcie:
    gen: 4 speed: 16 GT/s lanes: 16 bus-ID: 2f:00.1 chip-ID: 1002:ab38
    class-ID: 0403
  Device-3: AMD Starship/Matisse HD Audio vendor: Micro-Star MSI
    driver: snd_hda_intel v: kernel pcie: gen: 4 speed: 16 GT/s lanes: 16
    bus-ID: 31:00.4 chip-ID: 1022:1487 class-ID: 0403
  Device-4: Kingston HyperX 7.1 Audio type: USB
    driver: hid-generic,snd-usb-audio,usbhid
  Device-5: DCMT USB Condenser Microphone type: USB
    driver: hid-generic,snd-usb-audio,usbhid bus-ID: 5-1.2.3:7
    chip-ID: 31b2:0011 class-ID: 0300 serial: <filter>
  Device-6: Logitech HD Pro Webcam C920 type: USB
    driver: snd-usb-audio,uvcvideo bus-ID: 5-1.2.4:8 chip-ID: 046d:082d
    class-ID: 0102 serial: <filter>
  Sound API: ALSA v: k5.19.16-2-MANJARO running: yes
  Sound Interface: sndio v: N/A running: no
  Sound Server-1: JACK v: 1.9.21 running: no
  Sound Server-2: PulseAudio v: 16.1 running: yes
  Sound Server-3: PipeWire v: 0.3.58 running: yes
Network:
  Device-1: Realtek RTL8111/8168/8411 PCI Express Gigabit Ethernet
    vendor: Micro-Star MSI X570-A PRO driver: r8168 v: 8.050.03-NAPI
    modules: r8169 pcie: gen: 1 speed: 2.5 GT/s lanes: 1 port: d000
    bus-ID: 27:00.0 chip-ID: 10ec:8168 class-ID: 0200
  IF: enp39s0 state: up speed: 1000 Mbps duplex: full mac: <filter>
Bluetooth:
  Device-1: Cambridge Silicon Radio Bluetooth Dongle (HCI mode) type: USB
    driver: btusb v: 0.8 bus-ID: 3-6.2:4 chip-ID: 0a12:0001 class-ID: e001
  Report: rfkill ID: hci0 rfk-id: 0 state: up address: see --recommends
Drives:
  Local Storage: total: 7.5 TiB used: 3.2 TiB (42.6%)
  SMART Message: Unable to run smartctl. Root privileges required.
  ID-1: /dev/sda maj-min: 8:0 vendor: Samsung model: SSD 840 EVO 250GB
    size: 232.89 GiB block-size: physical: 512 B logical: 512 B speed: 6.0 Gb/s
    type: SSD serial: <filter> rev: DB6Q scheme: GPT
  ID-2: /dev/sdb maj-min: 8:16 vendor: Samsung model: SSD 860 EVO 1TB
    size: 931.51 GiB block-size: physical: 512 B logical: 512 B speed: 6.0 Gb/s
    type: SSD serial: <filter> rev: 4B6Q scheme: GPT
  ID-3: /dev/sdc maj-min: 8:32 vendor: Seagate model: ST2000LX001-1RG174
    size: 1.82 TiB block-size: physical: 4096 B logical: 512 B speed: 6.0 Gb/s
    type: HDD rpm: 5400 serial: <filter> rev: SDM1 scheme: GPT
  ID-4: /dev/sdd maj-min: 8:48 vendor: Western Digital
    model: WD40EZRZ-00GXCB0 size: 3.64 TiB block-size: physical: 4096 B
    logical: 512 B speed: 6.0 Gb/s type: HDD rpm: 5400 serial: <filter>
    rev: 0A80 scheme: GPT
  ID-5: /dev/sde maj-min: 8:64 vendor: Samsung model: HD103UJ
    size: 931.51 GiB block-size: physical: 512 B logical: 512 B speed: 3.0 Gb/s
    type: N/A serial: <filter> rev: 1113 scheme: MBR
Partition:
  ID-1: / raw-size: 500 GiB size: 491.08 GiB (98.22%) used: 238.5 GiB (48.6%)
    fs: ext4 dev: /dev/sdb1 maj-min: 8:17
  ID-2: /boot/efi raw-size: 100 MiB size: 96 MiB (96.00%) used: 25.9 MiB
    (27.0%) fs: vfat dev: /dev/sda1 maj-min: 8:1
  ID-3: /home raw-size: 3.64 TiB size: 3.64 TiB (100.00%) used: 2.1 TiB
    (57.6%) fs: btrfs dev: /dev/dm-0 maj-min: 254:0
    mapped: HomeVG-HomeVerzeichnissLV
Swap:
  Alert: No swap data was found.
Sensors:
  System Temperatures: cpu: 34.0 C mobo: 27.0 C gpu: amdgpu temp: 53.0 C
    mem: 56.0 C
  Fan Speeds (RPM): fan-1: 742 fan-2: 1428 fan-3: 635 fan-4: 0 fan-5: 418
    fan-6: 472 fan-7: 0 gpu: amdgpu fan: 0
Info:
  Processes: 455 Uptime: 49m wakeups: 0 Memory: 31.27 GiB used: 5.26 GiB
  (16.8%) Init: systemd v: 251 default: graphical tool: systemctl Compilers:
  gcc: 12.2.0 clang: 14.0.6 Packages: 2678 pm: pacman pkgs: 2660 libs: 558
  tools: pamac,paru,yay pm: flatpak pkgs: 18 Shell: fish v: 3.5.1
  running-in: konsole inxi: 3.3.22

Tja wird dann so sein…

du fasst mehrere Festplatten zu einem Volume zusammen und hast kein Backup davon? Das ist wirklich grob fahrlässig. Fällt eine Festplatte aus, dann ist alles weg, unwiderruflich.

Nebenbei, wenn du btrfs wie lvm, als mehrere Festplatte (unterschiedliche Größe) zusammenfassen willst, dann geht das ganz simple mit:

sudo btrfs device add /dev/sdyX /mnt

In /mnt muss deine erste Festplatte eingehängt sein und /dev/sdyX ist deine zweite, die hinzugefügt wird. Danach muss das nur noch ausbalanciert werden:

sudo btrfs balance start -v -dconvert=single -mconvert=raid1 /mnt

Damit wäre die Daten über die Festplatten verteilt, aber die Metadaten werden dupliziert zur Sicherheit. Es lohnt sich meiner Meinung sich mit BTRFS zu befassen.

Ich erstelle Backups über das Netzwerk auf ein NAS von den wichtigsten Daten.

Es wäre also möglich mit btrfs das Homeverzeichniss Problemlos mit einer zusätzlichen Partition zu vergrössern? Das habe ich noch gar nicht gewusst.

Ich werde mir dann wohl wirklich mal btrfs genauer angucken müssen.
Vielen Dank für den Hinweis.

Läuft da zufällig baloo-file-extractor?
Kannst du ja Testweise mal mit diesem Befehl abfragen:

balooctl status

Mit diesem Befehl kannst du baloo ausschalten:

balooctl disable

Es gibt für baloo natürlich auch Hilfe:

balooctl -h

Wie gesagt nur mal eine Vermutung.

Baloo, habe ich bereits deaktiviert gehabt und habe es aber auch noch mal getestet gehabt.

╰─$ balooctl status
Baloo ist zurzeit deaktiviert. Zum Aktivieren führen Sie bitte „balooctl enable“ aus

Trotzdem vielen Dank für deinen Hinweis.

1 Like