Üdvözöljük az ubuntu.hu oldalán

Itt megtalálhatja a rendszerrel, illetve a nyílt forráskódú alkalmazásokkal kapcsolatos információkat, érdekességeket. Csatlakozzon a beszélgetésekhez, blogoljon, segítse Ön is a közösséget. Jó fórumozást kívánunk!
Leírások, bemutatók

BTRFS snapshot és replikációs script

  • [törölve]

  • Szerkesztve

Üdv mindenkinek!

Tudom van már pár btrfs replikációs script a githubon, de azért írtam ezt, mert mindegyikkel baj volt.

Több évig használtam különböző Python-ban megírt scripteket erre a célra, de azok többször is megtörtek amikor a Python verzió frissült és már untam az issue nyitást és várkozást a javításokra kb fél évente évente.

Ami meg Bash volt az nem úgy működött ahogyan az én esetemben kellett volna pl ha a btrfs subvolume amit replikálni kell rootfs-ről és a remote olalon (ssh) egy másik particióra szeretném replikálni ami nem rootfs, akkor a replikáció megtörik, mert csak a rootfs-re "/" engedi, de végül minen script rossz volt valamiért.

Végül inkább megírtam magam, olyant amilyent elgondoltam.
Teljesen minimalista és egyszerű, úgy terveztem, hogy ne tudja tönkretenni semmilyen frissítés.
Egy darab faék legyen ami csak teszi a dolgát.
Több hónapos teszt alatt ment át és szépen forgatja a snapshotokat a megadott rotáció szerint mindkét oldalon (local/remote).

A sikeres replikációról és a snapshotokról napi email reportot is tud küldeni (kikapcsolható), a nem sikeresről meg error logot.
Későbbiekben lesz majd még hozzá nagios check script is és további fejlesztések is várhatóak.

Ha bármiylen kérdésben tudok segíteni, akkor ne habozz azt feltenni! 🙂

A projekt github oldala és használati útmutató:
https://github.com/unix1984/btrfsback-lite

    Hozzászólások (6)

    A hozzászólások nem engedélyezettek ennél a cikknél
    • [törölve]

    • Szerkesztve

    Üdv mindenkinek!

    Tudom van már pár btrfs replikációs script a githubon, de azért írtam ezt, mert mindegyikkel baj volt.

    Több évig használtam különböző Python-ban megírt scripteket erre a célra, de azok többször is megtörtek amikor a Python verzió frissült és már untam az issue nyitást és várkozást a javításokra kb fél évente évente.

    Ami meg Bash volt az nem úgy működött ahogyan az én esetemben kellett volna pl ha a btrfs subvolume amit replikálni kell rootfs-ről és a remote olalon (ssh) egy másik particióra szeretném replikálni ami nem rootfs, akkor a replikáció megtörik, mert csak a rootfs-re "/" engedi, de végül minen script rossz volt valamiért.

    Végül inkább megírtam magam, olyant amilyent elgondoltam.
    Teljesen minimalista és egyszerű, úgy terveztem, hogy ne tudja tönkretenni semmilyen frissítés.
    Egy darab faék legyen ami csak teszi a dolgát.
    Több hónapos teszt alatt ment át és szépen forgatja a snapshotokat a megadott rotáció szerint mindkét oldalon (local/remote).

    A sikeres replikációról és a snapshotokról napi email reportot is tud küldeni (kikapcsolható), a nem sikeresről meg error logot.
    Későbbiekben lesz majd még hozzá nagios check script is és további fejlesztések is várhatóak.

    Ha bármiylen kérdésben tudok segíteni, akkor ne habozz azt feltenni! 🙂

    A projekt github oldala és használati útmutató:
    https://github.com/unix1984/btrfsback-lite

      [törölve]
      Jórészt a leírásod hatására telepítettem az Arch alapú "Garuda OS"-t Cinnamon felülettel.
      https://garudalinux.org/
      Ez egy BTRFS-re "kihegyezett" rolling rendszer (A grafikus telepítőjében (Calamares) igencsak
      puritán a fájlrendszer választék - BTRFS, Fat32. cserehely - EFI-s telepítéshez.)
      Továbbá, az alapértelmezett sound servere a PipeWire.
      Jól fel van készítve a BTRFS fájlrendszer kezelésére - pl.:
      https://ibb.co/mDVLJBM
      https://ibb.co/1n3FxY0
      https://ibb.co/THSj5Np
      https://ibb.co/MG8NytH
      https://ibb.co/khDNWVt

      Egy BTRFS fájlrendszerrel ismerkedőnek, szerintem kezdésnek ez egy megfelelő
      kiadás.

        • [törölve]

        • Szerkesztve

        lala2
        Hi

        Én egyszer XFCE-vel próbáltam ki a GarudaOS-t.
        Nekem annyira nem nyerte el tetszésemet. Amúgy támogat az installer F2FS-t is ami még érdekes lehet, de persze az nem CoW.
        Most Artix XFCE van helyette a laptopon ami meglepően jó!

        Szerintem kezdésnek a BTRFS-t inkább úgy kell megtanulni, vagy legalábbis én így tanultam meg, hogy csak CLI alól. Nem is tudom talán Debian netinstall lehetett vagy Ubunru szerver. Csak konzolig telepítve és SSH-n managelve.
        Létrehoztam raid1-et, kipróbáltam a meghibásodást és a lemez cserét, a grubot indítani mindkét lemezről külön külön degraded módban, közben megtanulni, hogy ha snapshotra/subvolumera bootolsz vissza a grub kernel soranak parameterezesevel (subvol flag), akkor elotte a subvol-ban is az fstab-ot módosítani kell, vagy btrfs set default id alapján rábootolni és megérteni a különbséget ezek között.
        Majd átmigráltam a raid szinteket raid1-ről raid10-re és utánna újra vissza raid1-re majd raid5-re konvertálni majd vissza raid1-re és leszerelni újra single lemezre.
        Megtanulni mire való a chattr ha virtualizálni is akar az ember BTRFS-en.
        Defragmentálni zstd-re stb.
        Még sok BTRFS funkciót felsorolhatnék, de majd később ha szükség lesz rá.

        Szerintem aki a timeshiftig jut el meg a snappergui-ig az ezeket sosem fogja látni és így megismerni sem. Ha pl egy szerveren probléma van, vagy lehet desktop is mind1, pl nem bootol be csak konzolig, akkor tudjon mihez nyúlni.

        Kezdésnek jobb ha közismert distron marad a kezdő, hogy több eséllyel kapjon supportot is a problémájára. Erre az Ubuntu a legjobb választás. Én pl Xubuntut használok több munkaállomásomon is munkára.

        A GarudaOS telepítője is máshogyan hozza létre a subvol-t mint az ubuntu, illetve többet hoz létre ami főleg a kezdőket zavarhatja meg (6 darabot).
        Kezdésnek elég ha csak a rootfs és a home külön subvol, szerveren meg elég csak a rootfs.

        A btrfsback-lite is inkább szerverhez készült, de le lehet butítani desktop verzióra, hogy ne replikáljon és csak local snapshotokat forgasson mint a timeshift/snappergui. Lehet vele játszani a cron-ban, hogy legyen daily mellett hourly snapshot vagy weekly, mounthly, meg minden bootnál is egy snapi stb.
        Ha érdekel ez a verzió, akkor szívesen megcsinálom, had terjedjen a BTRFS (és akkor nem kell ilyen guis programokat frissítgetni, elég egy pár soros script és 10KB)! 🤠

        Elnézést a tudatlanságomért, de pl a Manjaro / timeshift mentéssel is van valami gond?

          idanka
          Manjaron a Timeshift-et használom - nincs vele gond.
          (Hónapokkal ezelőtt - egy frissítés után - volt olyan probléma, hogy az újonnan
          létrehozott visszaállítási pont nem jelent meg a listában - nem lehetett kiválasztani.
          De néhány napon belül javítva lett.)
          Szerk.: Egyébként, a Timeshift karbantartását (esetleges fejlesztését) az eredeti
          fejlesztőtől átvette a Linux Mint csapata.

            lala2

            Értem, thx akkor királyság van🙂

            • [törölve]

            • Szerkesztve

            idanka
            Az, hogy nem replikál remote hostra! 😉
            Amúgy semmi, desktopra tökéletes, én is használom. 👍

            Ha BTRFS-t használsz, akkor használd mellé a grub-btrfs-t is!
            Ezzel benne lesznek a snapshotok a grub menüben is és bármelyik állapotot be tudod bootolni, majd visszaállítani.

            https://github.com/Antynea/grub-btrfs

            Üdv!

            Ennyivel később: egy év