btrfs-balance caught in write loop?

Hinweis: In dem Thema btrfs-balance caught in write loop? gibt es 13 Antworten auf 2 Seiten. Der letzte Beitrag () befindet sich auf der letzten Seite.
  • Hi,


    btrfs-balance scheint aktuell hier in einer Schreibschleife festzustecken.


    Auf die SSD wird seit dem Booten mit etwa 180 MByte/s geschrieben, während laut iostat nichts bzw. nahezu nichts gelesen wird:







    usw. usw.



    Da nichts gelesen wird, gehe ich davon aus, dass btrfs-balance jetzt ÜBERHAUPT nichts Sinnvolles macht!!!



    Code
    PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+
    433 root 20 0 0 0 0 D 21,26 0,000 7:36.68 btrfs-balance



    Was tun?


    Damit von der SSD noch etwas übrig bleibt werde ich den Rechner um 19:20 neu booten (es sei denn, jemand klinkt sich ein).


    VG,
    Frieder


    Bitte benutze für Konsolenausgaben Code-Tags

    Für den Inhalt des Beitrages 136837 haftet ausdrücklich der jeweilige Autor: frief

  • journalctl


    ...skipping...
    Nov 06 19:16:53 lake kernel: BTRFS info (device sda2): found 10 extents
    Nov 06 19:16:53 lake kernel: BTRFS info (device sda2): found 10 extents
    Nov 06 19:16:53 lake kernel: BTRFS info (device sda2): found 10 extents
    Nov 06 19:16:53 lake kernel: BTRFS info (device sda2): found 10 extents
    Nov 06 19:16:53 lake kernel: BTRFS info (device sda2): found 10 extents
    Nov 06 19:16:53 lake kernel: BTRFS info (device sda2): found 10 extents
    Nov 06 19:16:53 lake kernel: BTRFS info (device sda2): found 10 extents
    Nov 06 19:16:53 lake kernel: BTRFS info (device sda2): found 10 extents
    Nov 06 19:16:53 lake kernel: BTRFS info (device sda2): found 10 extents
    Nov 06 19:16:53 lake kernel: BTRFS info (device sda2): found 10 extents
    Nov 06 19:16:53 lake kernel: BTRFS info (device sda2): found 10 extents
    Nov 06 19:16:53 lake kernel: BTRFS info (device sda2): found 10 extents
    Nov 06 19:16:53 lake kernel: BTRFS info (device sda2): found 10 extents
    Nov 06 19:16:53 lake kernel: BTRFS info (device sda2): found 10 extents
    Nov 06 19:16:53 lake kernel: BTRFS info (device sda2): found 10 extents
    Nov 06 19:16:53 lake kernel: BTRFS info (device sda2): found 10 extents
    Nov 06 19:16:53 lake kernel: BTRFS info (device sda2): found 10 extents
    Nov 06 19:16:53 lake kernel: BTRFS info (device sda2): found 10 extents
    Nov 06 19:16:53 lake kernel: BTRFS info (device sda2): found 10 extents
    Nov 06 19:16:53 lake kernel: BTRFS info (device sda2): found 10 extents
    Nov 06 19:16:56 lake kernel: btrfs_printk: 230 callbacks suppressed


    usw. usw.

    Nov 06 19:21:07 lake kernel: BTRFS info (device sda2): found 10 extents
    Nov 06 19:21:07 lake kernel: BTRFS info (device sda2): found 10 extents
    Nov 06 19:21:07 lake kernel: BTRFS info (device sda2): found 10 extents
    Nov 06 19:21:07 lake kernel: BTRFS info (device sda2): found 10 extents
    Nov 06 19:21:07 lake kernel: BTRFS info (device sda2): found 10 extents
    Nov 06 19:21:08 lake kernel: BTRFS info (device sda2): found 10 extents
    Nov 06 19:21:08 lake kernel: BTRFS info (device sda2): found 10 extents
    Nov 06 19:21:08 lake kernel: BTRFS info (device sda2): found 10 extents
    Nov 06 19:21:08 lake kernel: BTRFS info (device sda2): found 10 extents
    Nov 06 19:21:08 lake kernel: BTRFS info (device sda2): found 10 extents
    Nov 06 19:21:08 lake kernel: BTRFS info (device sda2): found 10 extents
    Nov 06 19:21:08 lake kernel: BTRFS info (device sda2): found 10 extents
    Nov 06 19:21:08 lake kernel: BTRFS info (device sda2): found 10 extents
    Nov 06 19:21:08 lake kernel: BTRFS info (device sda2): found 10 extents


    df


    /dev/sda2 41943040 37985464 3458876 92% /
    /dev/sda3 98991640 85275816 8664240 91% /home


    mount


    /dev/sda2 on /opt type btrfs (rw,relatime,ssd,space_cache,subvolid=263,subvol=/@/opt)
    /dev/sda3 on /home type ext4 (rw,relatime,stripe=32684,data=ordered)




    inzwischen >500 GB written (Partition selber ist nur 41.9 GB)



    > iostat -m -d 30
    Linux 4.12.14-lp151.28.25-default (lake) 06.11.2019 _x86_64_ (4 CPU)


    Device tps MB_read/s MB_wrtn/s MB_read MB_wrtn
    sda 2433,22 0,61 178,34 1800 526364



    Für den Inhalt des Beitrages 136839 haftet ausdrücklich der jeweilige Autor: frief

  • Noch einmal:
    Benutze bitte für Konsolenausgaben Code-Tags, das erhält die Formatierung.

    Für den Inhalt des Beitrages 136840 haftet ausdrücklich der jeweilige Autor: Sauerland

  • Thx (hatte Schriftart Courier verwendet. Die verschluckten Leerzeichen gehen aufs Konto der Forensoftware)


    Code
    > sudo btrfs balance status -v /
    Balance on '/' is running
    0 out of about 1 chunks balanced (5 considered), 100% left
    Dumping filters: flags 0x11, state 0x1, force is off
      DATA (flags 0x2): balancing, usage=30

    Für den Inhalt des Beitrages 136841 haftet ausdrücklich der jeweilige Autor: frief

  • Hast / hattest du ein Raid x?
    Poste einmal als Root:

    Code
    snapper ls
    Code
    systemctl list-timers --all
    Code
    btrfs subvolume list /
    Code
    btrfs device stats /
    Code
    btrfs qgroup show /
    Code
    btrfs fi usage /

    Für den Inhalt des Beitrages 136842 haftet ausdrücklich der jeweilige Autor: sterun

  • nein, kein Raid. "Normaler" Desktop Rechner.


    Inzwischen 2x rebootet. Nach erneutem Hochfahren jeweils gleicher Zustand (Write mit ~180 MByte/s).


    Code
    # snapper ls
    Die Konfiguration "Root" ist nicht vorhanden. Snapper ist wahrscheinlich nicht konfiguriert.
    Weitere Anweisungen finden Sie in "man snapper".
    Code
    # btrfs device stats /
    [/dev/sda2].write_io_errs    0
    [/dev/sda2].read_io_errs     0
    [/dev/sda2].flush_io_errs    0
    [/dev/sda2].corruption_errs  0
    [/dev/sda2].generation_errs  0
    Code
    # btrfs qgroup show /
    ERROR: can't list qgroups: quotas not enabled

    Danke,

    Für den Inhalt des Beitrages 136843 haftet ausdrücklich der jeweilige Autor: frief

  • System aktualisiert (Dist-Upgrade) von openSUSE Leap xyz auf openSUSE Leap 15.1?
    Snapper und quotas beabsichtigt deaktiviert?
    Deine 40 GB BTRFS-Partition ist schlicht voll.
    Dazu kommt, dass /home ebenfalls auf dieser enthalten ist.
    Poste noch:

    Code
    fdisk -l
    Code
    df -h

    PS:
    Schau mal, ob iotop aussagekräftiger ist, was Lese- und Schreibzugriffe angeht.
    Ggf. installieren mit:

    Code
    zypper in iotop

    2 Mal editiert, zuletzt von sterun ()

    Für den Inhalt des Beitrages 136845 haftet ausdrücklich der jeweilige Autor: sterun

  • > System aktualisiert (Dist-Upgrade) von openSUSE Leap xyz auf openSUSE Leap 15.1?


    Ja, es ist ein "altes" System. (Wann / neu aufgesetzt wurde weiß ich leider nicht)


    > Snapper und quotas beabsichtigt deaktiviert?


    Nein.


    > Deine 40 GB BTRFS-Partition ist schlicht voll.


    Laut df (siehe unten) und "btrfs fi usage /" (siehe letzten Post) sind noch >3 GB frei.


    > Dazu kommt, dass /home ebenfalls auf dieser enthalten ist.


    Dies ist nicht der Fall.





    Auch bei voller Disk dürfte ein Dauerzustand mit ~165000 kByte written/s und ~0 kByte read/s (siehe unten) nicht auftreten.
    (Der Rechner hat nur 12 GByte RAM (i7 2600 mit multithreading disabled) und hätte (wenn er nichts liest) seinen Hauptspeicher in etwa anderthalb Minuten auf die Platte geschrieben.)
    Ich befürchte, dass Problem liegt tiefer. Wenn es von allgemeinem Interesse ist, kann ich versuchen, weitere Info zu liefern. Ansonsten setze ich die root Partition neu auf.


    Für den Inhalt des Beitrages 136848 haftet ausdrücklich der jeweilige Autor: frief

  • Aus der BTRFS Manpage:
    Manpage/btrfs-balance - btrfs Wiki


    Note:
    The balance operation needs enough work space, ie. space that is completely unused in the filesystem, otherwise this may lead to ENOSPC reports. See the section ENOSPC for more details.


    Demnach wäre angebracht:

    Code
    btrfs balance start -dusage=85 /path

    Wobei der Wert 85 auch größer gewält werden kann (einfach mal herantesten - bis 100).
    Wenn "balance" einmal richtig durchläuft, sollte Ruhe sein (auf jeden Fall 1 Woche - siehe "systemctl list-timers").


    Hast du dir iotop mal angeschaut?

    Für den Inhalt des Beitrages 136849 haftet ausdrücklich der jeweilige Autor: sterun

  • > Dazu kommt, dass /home ebenfalls auf dieser enthalten ist.


    Dies ist nicht der Fall.

    Vielleicht nicht dein "home" aber trotzdem "home" als Subvolume - siehe hier (aus deinem Post #6:

    ID 264 gen 10272377 top level 257 path home

    Für den Inhalt des Beitrages 136850 haftet ausdrücklich der jeweilige Autor: sterun