Should I BTRFS, Snapper, Grub Boot to Snapshots?

High guys.
The title says it all. Should I BTRFS, Snapper, Grub Boot to Snapshots?

I have read here and on other forums some pros and cons of this setup.

Honestly I can’t decide on my own, still hesitant.

I care mainly about being able to restore to a bootable snapshot just in case.

Would just booting from a live USB and installing Timeshift and restoring a timeshift snapshot be just enough and easy or better change to a setup as the title?

Is it worth it to do a fresh install with BTRFS?
Would it affect stability?

I am on KDE minimal, stable, EXT4

Pros and cons for each?
UPDATE: (As requested in the post below) N.B. I thought my question was just general and does not need all the “inxi” details.

sudo inxi --verbosity=8 --filter --width                                                       ✔ 
[sudo] password for oldtux: 
System:
  Kernel: 6.6.46-1-MANJARO arch: x86_64 bits: 64 compiler: gcc v: 14.2.1
    clocksource: tsc avail: acpi_pm
    parameters: BOOT_IMAGE=/boot/vmlinuz-6.6-x86_64
    root=UUID=767ee769-a5d6-455d-b4c3-b764eb0cd077 rw quiet splash
    udev.log_priority=3
  Desktop: KDE Plasma v: 6.0.5 tk: Qt v: N/A wm: kwin_x11 dm: SDDM
    Distro: Manjaro base: Arch Linux
Machine:
  Type: Convertible System: HP product: HP Spectre x360 Convertible 13-ae0xx
    v: N/A serial: <filter> Chassis: type: 31 serial: N/A
  Mobo: HP model: 83B9 v: 56.50 serial: <filter> part-nu: 3DR36PA#UUF
    uuid: 37444335-3734-3932-3952-523937344435 UEFI: AMI v: F.36 date: 03/19/2022
Battery:
  ID-1: BAT0 charge: 49.0 Wh (100.0%) condition: 49.0/49.0 Wh (100.0%)
    volts: 12.5 min: 11.6 model: HP Primary type: Li-ion serial: N/A status: full
  Device-1: hid-0018:04F3:2597.0002-battery model: ELAN2514:00 04F3:2597
    serial: N/A charge: N/A status: N/A
Memory:
  System RAM: total: 8 GiB available: 7.51 GiB used: 4.2 GiB (56.0%)
    igpu: 64 MiB
  Array-1: capacity: 8 GiB slots: 2 modules: 2 EC: None
    max-module-size: 4 GiB note: est.
  Device-1: Bottom - on board type: LPDDR3 detail: synchronous unbuffered
    (unregistered) size: 4 GiB speed: 2133 MT/s volts: curr: 1.2 min: 1.25
    max: 1.25 width (bits): data: 64 total: 64 manufacturer: Micron
    part-no: MT52L512M32D2PF-093 WT:B serial: N/A
  Device-2: Bottom - on board type: LPDDR3 detail: synchronous unbuffered
    (unregistered) size: 4 GiB speed: 2133 MT/s volts: curr: 1.2 min: 1.25
    max: 1.25 width (bits): data: 64 total: 64 manufacturer: Micron
    part-no: MT52L512M32D2PF-093 WT:B serial: N/A
PCI Slots:
  Slot: 0 type: PCIe status: in use info: J6B2 length: long volts: 3.3
    bus-ID: 00:01.0
CPU:
  Info: model: Intel Core i7-8550U socket: BGA1356 (U3E1) note: check bits: 64
    type: MT MCP arch: Coffee Lake gen: core 8 level: v3 note: check built: 2017
    process: Intel 14nm family: 6 model-id: 0x8E (142) stepping: 0xA (10)
    microcode: 0xF6
  Topology: cpus: 1x cores: 4 tpc: 2 threads: 8 smt: enabled cache:
    L1: 256 KiB desc: d-4x32 KiB; i-4x32 KiB L2: 1024 KiB desc: 4x256 KiB
    L3: 8 MiB desc: 1x8 MiB
  Speed (MHz): avg: 600 high: 800 min/max: 400/4000 base/boost: 3700/8300
    scaling: driver: intel_pstate governor: powersave volts: 1.1 V
    ext-clock: 100 MHz cores: 1: 800 2: 800 3: 800 4: 400 5: 800 6: 400 7: 400
    8: 400 bogomips: 32012
  Flags: 3dnowprefetch abm acpi adx aes aperfmperf apic arat
    arch_capabilities arch_perfmon art avx avx2 bmi1 bmi2 bts clflush
    clflushopt cmov constant_tsc cpuid cpuid_fault cx16 cx8 de ds_cpl dtes64
    dtherm dts epb ept ept_ad erms est f16c flexpriority flush_l1d fma fpu
    fsgsbase fxsr ht hwp hwp_act_window hwp_epp hwp_notify ibpb ibrs ida
    intel_pt invpcid lahf_lm lm mca mce md_clear mmx monitor movbe mpx msr
    mtrr nonstop_tsc nopl nx pae pat pbe pcid pclmulqdq pdcm pdpe1gb pebs pge
    pln pni popcnt pse pse36 pti pts rdrand rdseed rdtscp rep_good sdbg sep
    sgx smap smep ss ssbd sse sse2 sse4_1 sse4_2 ssse3 stibp syscall tm tm2
    tpr_shadow tsc tsc_adjust tsc_deadline_timer vme vmx vnmi vpid x2apic
    xgetbv1 xsave xsavec xsaveopt xsaves xtopology xtpr
  Vulnerabilities:
  Type: gather_data_sampling mitigation: Microcode
  Type: itlb_multihit status: KVM: VMX disabled
  Type: l1tf mitigation: PTE Inversion; VMX: conditional cache flushes, SMT
    vulnerable
  Type: mds mitigation: Clear CPU buffers; SMT vulnerable
  Type: meltdown mitigation: PTI
  Type: mmio_stale_data mitigation: Clear CPU buffers; SMT vulnerable
  Type: reg_file_data_sampling status: Not affected
  Type: retbleed mitigation: IBRS
  Type: spec_rstack_overflow status: Not affected
  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: IBRS; IBPB: conditional; STIBP: conditional;
    RSB filling; PBRSB-eIBRS: Not affected; BHI: Not affected
  Type: srbds mitigation: Microcode
  Type: tsx_async_abort status: Not affected
Graphics:
  Device-1: Intel UHD Graphics 620 vendor: Hewlett-Packard driver: i915
    v: kernel arch: Gen-9.5 process: Intel 14nm built: 2016-20 ports:
    active: eDP-1 empty: DP-1, DP-2, HDMI-A-1, HDMI-A-2 bus-ID: 00:02.0
    chip-ID: 8086:5917 class-ID: 0300
  Device-2: Cheng Uei Precision Industry (Foxlink) HP Wide Vision FHD Camera
    driver: uvcvideo type: USB rev: 2.0 speed: 480 Mb/s lanes: 1 mode: 2.0
    bus-ID: 1-5:3 chip-ID: 05c8:0815 class-ID: 0e02 serial: <filter>
  Display: unspecified server: X.Org v: 21.1.13 with: Xwayland v: 24.1.2
    compositor: kwin_x11 driver: X: loaded: modesetting alternate: fbdev,vesa
    dri: iris gpu: i915 display-ID: :0 screens: 1
  Screen-1: 0 s-res: 1920x1080 s-dpi: 96 s-size: 508x285mm (20.00x11.22")
    s-diag: 582mm (22.93") monitors: <missing: xrandr>
  Monitor-1: eDP-1 model: ChiMei InnoLux 0x1376 built: 2015 res: 1920x1080
    dpi: 166 gamma: 1.2 chroma: red: x: 0.639 y: 0.329 green: x: 0.298 y: 0.600
    blue: x: 0.149 y: 0.059 white: x: 0.314 y: 0.329
    size: 293x165mm (11.54x6.5") diag: 336mm (13.2") ratio: 16:9
    modes: 1920x1080
  EDID-Warnings: 1: parse_edid: unknown flag 2
  API: EGL v: 1.5 hw: drv: intel iris platforms: device: 0 drv: iris
    device: 1 drv: swrast gbm: drv: iris surfaceless: drv: iris x11: drv: iris
    inactive: wayland
  API: OpenGL v: 4.6 compat-v: 4.5 vendor: intel mesa v: 24.1.6-arch1.1
    glx-v: 1.4 direct-render: yes renderer: Mesa Intel UHD Graphics 620 (KBL GT2)
    device-ID: 8086:5917 memory: 3.67 GiB unified: yes
  API: Vulkan v: 1.3.279 layers: N/A device: 0 type: integrated-gpu
    name: Intel UHD Graphics 620 (KBL GT2) driver: mesa intel v: 24.1.6-arch1.1
    device-ID: 8086:5917 surfaces: xcb,xlib
Audio:
  Device-1: Intel Sunrise Point-LP HD Audio vendor: Hewlett-Packard
    driver: snd_hda_intel v: kernel alternate: snd_soc_skl,snd_soc_avs
    bus-ID: 00:1f.3 chip-ID: 8086:9d71 class-ID: 0403
  API: ALSA v: k6.6.46-1-MANJARO status: kernel-api with: aoss
    type: oss-emulator tools: alsactl,alsamixer,amixer
  Server-1: JACK v: 1.9.22 status: off tools: N/A
  Server-2: PipeWire v: 1.2.2 status: n/a (root, process) with:
    1: pipewire-pulse status: active 2: wireplumber status: active
    3: pipewire-alsa type: plugin tools: pactl,pw-cat,pw-cli,wpctl
Network:
  Device-1: Intel Wireless 8265 / 8275 driver: iwlwifi v: kernel pcie: gen: 1
    speed: 2.5 GT/s lanes: 1 bus-ID: 02:00.0 chip-ID: 8086:24fd class-ID: 0280
  IF: wlp2s0 state: up mac: <filter>
  IP v4: <filter> type: dynamic noprefixroute scope: global
    broadcast: <filter>
  IP v6: <filter> type: dynamic noprefixroute scope: global
  IP v6: <filter> type: noprefixroute scope: link
  Info: services: NetworkManager, systemd-timesyncd, wpa_supplicant
  WAN IP: <filter>
Bluetooth:
  Device-1: Intel Bluetooth wireless interface driver: btusb v: 0.8 type: USB
    rev: 2.0 speed: 12 Mb/s lanes: 1 mode: 1.1 bus-ID: 1-7:4 chip-ID: 8087:0a2b
    class-ID: e001
  Report: rfkill ID: hci0 rfk-id: 0 state: up address: see --recommends
Logical:
  Message: No logical block device data found.
RAID:
  Message: No RAID data found.
Drives:
  Local Storage: total: 238.47 GiB used: 29.47 GiB (12.4%)
  SMART Message: Required tool smartctl not installed. Check --recommends
  ID-1: /dev/nvme0n1 maj-min: 259:0 vendor: Samsung model: MZVLW256HEHP-000H1
    size: 238.47 GiB block-size: physical: 512 B logical: 512 B speed: 31.6 Gb/s
    lanes: 4 tech: SSD serial: <filter> fw-rev: CXB73H1Q temp: 36.9 C
    scheme: GPT
  Message: No optical or floppy data found.
Partition:
  ID-1: / raw-size: 238.17 GiB size: 233.38 GiB (97.99%)
    used: 29.47 GiB (12.6%) fs: ext4 block-size: 4096 B dev: /dev/nvme0n1p2
    maj-min: 259:2 label: N/A uuid: 767ee769-a5d6-455d-b4c3-b764eb0cd077
  ID-2: /boot/efi raw-size: 300 MiB size: 299.4 MiB (99.80%)
    used: 296 KiB (0.1%) fs: vfat block-size: 512 B dev: /dev/nvme0n1p1
    maj-min: 259:1 label: N/A uuid: F905-6058
Swap:
  Alert: No swap data was found.
Unmounted:
  Message: No unmounted partitions found.
USB:
  Hub-1: 1-0:1 info: hi-speed hub with single TT ports: 12 rev: 2.0
    speed: 480 Mb/s (57.2 MiB/s) lanes: 1 mode: 2.0 chip-ID: 1d6b:0002
    class-ID: 0900
  Device-1: 1-1:2 info: HP HP Wireless Mouse 220 type: mouse
    driver: hid-generic,usbhid interfaces: 1 rev: 1.1 speed: 12 Mb/s (1.4 MiB/s)
    lanes: 1 mode: 1.1 power: 100mA chip-ID: 03f0:2141 class-ID: 0301
  Device-2: 1-5:3 info: Cheng Uei Precision Industry (Foxlink) HP Wide
    Vision FHD Camera type: video driver: uvcvideo interfaces: 4 rev: 2.0
    speed: 480 Mb/s (57.2 MiB/s) lanes: 1 mode: 2.0 power: 500mA
    chip-ID: 05c8:0815 class-ID: 0e02 serial: <filter>
  Device-3: 1-7:4 info: Intel Bluetooth wireless interface type: bluetooth
    driver: btusb interfaces: 2 rev: 2.0 speed: 12 Mb/s (1.4 MiB/s) lanes: 1
    mode: 1.1 power: 100mA chip-ID: 8087:0a2b class-ID: e001
  Hub-2: 2-0:1 info: super-speed hub ports: 6 rev: 3.0
    speed: 5 Gb/s (596.0 MiB/s) lanes: 1 mode: 3.2 gen-1x1 chip-ID: 1d6b:0003
    class-ID: 0900
Sensors:
  System Temperatures: cpu: 47.0 C pch: 45.0 C mobo: N/A
  Fan Speeds (rpm): cpu: 0 mobo: 11008
Repos:
  Packages: pm: pacman pkgs: 1132 libs: 342 tools: pamac
  Active pacman repo servers in: /etc/pacman.d/mirrorlist
    1: https://mirror.init7.net/manjaro/stable/$repo/$arch
    2: http://ftp.uni-kl.de/pub/linux/manjaro/stable/$repo/$arch
    3: https://mirror.bouwhuis.network/manjaro/stable/$repo/$arch
    4: http://ftp.free.org/mirrors/repo.manjaro.org/repos/stable/$repo/$arch
    5: https://mirrors.ft.uam.es/manjaro/stable/$repo/$arch
    6: https://ipng.mm.fcix.net/manjaro/stable/$repo/$arch
    7: https://mirror.vinehost.net/manjaro/stable/$repo/$arch
    8: https://mirrors.xtom.de/manjaro/stable/$repo/$arch
    9: https://www.mirrorservice.org/sites/repo.manjaro.org/repos/stable/$repo/$arch
    10: https://manjaro.ipacct.com/manjaro/stable/$repo/$arch
    11: https://ftp.halifax.rwth-aachen.de/manjaro/stable/$repo/$arch
    12: https://manjaro.kurdy.org/stable/$repo/$arch
    13: https://mirror.alwyzon.net/manjaro/stable/$repo/$arch
    14: https://ask4.mm.fcix.net/manjaro/stable/$repo/$arch
    15: https://mirror1.sox.rs/manjaro/stable/$repo/$arch
    16: https://mirrors2.manjaro.org/stable/$repo/$arch
    17: https://mirrors.manjaro.org/repo/stable/$repo/$arch
    18: https://manjaro.mirrors.lavatech.top/stable/$repo/$arch
    19: https://mirrors.dotsrc.org/manjaro/stable/$repo/$arch
    20: https://mirror.23m.com/manjaro/stable/$repo/$arch
    21: https://ftp.gwdg.de/pub/linux/manjaro/stable/$repo/$arch
    22: https://mirror.ibakerserver.pt/manjaro/stable/$repo/$arch
    23: https://mirror.telepoint.bg/manjaro/stable/$repo/$arch
    24: http://ftp.snt.utwente.nl/pub/linux/manjaro/stable/$repo/$arch
    25: https://mirror.koddos.net/manjaro/stable/$repo/$arch
    26: https://mirror.easyname.at/manjaro/stable/$repo/$arch
    27: https://mirror.futureweb.be/manjaro/stable/$repo/$arch
    28: http://mirror.terrahost.no/linux/manjaro/stable/$repo/$arch
    29: https://manjaro.ynh.ovh/stable/$repo/$arch
    30: https://mirrors.aliyun.com/manjaro/stable/$repo/$arch
    31: http://ftp.belnet.be/mirrors/manjaro/repos/stable/$repo/$arch
    32: https://ftp.nluug.nl/pub/os/Linux/distr/manjaro/stable/$repo/$arch
    33: https://manjaro.mirror.garr.it/manjaro/stable/$repo/$arch
    34: http://ftp.rz.tu-bs.de/pub/mirror/manjaro.org/repos/stable/$repo/$arch
    35: https://ftp.lysator.liu.se/pub/manjaro/stable/$repo/$arch
    36: https://mirrors.cicku.me/manjaro/stable/$repo/$arch
    37: https://mirror.dkm.cz/manjaro/stable/$repo/$arch
    38: https://ftp.psnc.pl/linux/manjaro/stable/$repo/$arch
    39: https://mirrors.xtom.ee/manjaro/stable/$repo/$arch
    40: https://fosszone.csd.auth.gr/manjaro/stable/$repo/$arch
    41: http://manjaro.mirrors.uk2.net/stable/$repo/$arch
    42: https://mirror.it4i.cz/manjaro/stable/$repo/$arch
    43: https://ftp.linux.org.tr/manjaro/stable/$repo/$arch
    44: http://ftp.tu-chemnitz.de/pub/linux/manjaro/stable/$repo/$arch
    45: https://mirrors.nic.cz/manjaro/stable/$repo/$arch
    46: https://mirror.alpix.eu/manjaro/stable/$repo/$arch
    47: http://mirror.datacenter.by/pub/mirrors/manjaro/stable/$repo/$arch
    48: https://ct.mirror.garr.it/mirrors/manjaro/stable/$repo/$arch
    49: https://ba.mirror.garr.it/mirrors/manjaro/stable/$repo/$arch
    50: https://manjaro.mirror.wearetriple.com/stable/$repo/$arch
    51: https://mirror.yandex.ru/mirrors/manjaro/stable/$repo/$arch
    52: http://manjaro.grena.ge/stable/$repo/$arch
    53: https://mirror.netcologne.de/manjaro/stable/$repo/$arch
    54: http://ftp.dei.uc.pt/pub/linux/manjaro/stable/$repo/$arch
    55: https://uvermont.mm.fcix.net/manjaro/stable/$repo/$arch
    56: https://forksystems.mm.fcix.net/manjaro/stable/$repo/$arch
    57: https://cofractal-ewr.mm.fcix.net/manjaro/stable/$repo/$arch
    58: https://nnenix.mm.fcix.net/manjaro/stable/$repo/$arch
    59: https://coresite.mm.fcix.net/manjaro/stable/$repo/$arch
    60: https://mirror.zetup.net/manjaro/stable/$repo/$arch
    61: https://mirrors.up.pt/pub/manjaro/stable/$repo/$arch
    62: https://ohioix.mm.fcix.net/manjaro/stable/$repo/$arch
    63: https://mirror.csclub.uwaterloo.ca/manjaro/stable/$repo/$arch
    64: https://ftpmirror1.infania.net/mirror/manjaro/stable/$repo/$arch
    65: https://mirror.xenyth.net/manjaro/stable/$repo/$arch
    66: https://muug.ca/mirror/manjaro/stable/$repo/$arch
    67: https://mnvoip.mm.fcix.net/manjaro/stable/$repo/$arch
    68: http://mirror.fcix.net/manjaro/stable/$repo/$arch
    69: https://southfront.mm.fcix.net/manjaro/stable/$repo/$arch
    70: https://nocix.mm.fcix.net/manjaro/stable/$repo/$arch
    71: https://mirrors.gigenet.com/manjaro/stable/$repo/$arch
    72: https://ftp.cc.uoc.gr/mirrors/linux/manjaro/stable/$repo/$arch
    73: https://codingflyboy.mm.fcix.net/manjaro/stable/$repo/$arch
    74: https://volico.mm.fcix.net/manjaro/stable/$repo/$arch
    75: https://mirror.math.princeton.edu/pub/manjaro/stable/$repo/$arch
    76: https://irltoolkit.mm.fcix.net/manjaro/stable/$repo/$arch
    77: https://ziply.mm.fcix.net/manjaro/stable/$repo/$arch
    78: https://repo.ialab.dsu.edu/manjaro/stable/$repo/$arch
    79: https://mirror.dc.uz/manjaro/stable/$repo/$arch
    80: https://mirror.freedif.org/Manjaro/stable/$repo/$arch
    81: https://edgeuno-bog2.mm.fcix.net/manjaro/stable/$repo/$arch
    82: https://opencolo.mm.fcix.net/manjaro/stable/$repo/$arch
    83: https://ridgewireless.mm.fcix.net/manjaro/stable/$repo/$arch
    84: https://repo.iut.ac.ir/repo/manjaro/stable/$repo/$arch
    85: https://manjarolinux-mirror.cloud.mu/stable/$repo/$arch
    86: https://mirrors.sonic.net/manjaro/stable/$repo/$arch
    87: http://manjaro.mirror.ac.za/stable/$repo/$arch
    88: https://mirror.kamtv.ru/manjaro/stable/$repo/$arch
    89: https://mirrors.ocf.berkeley.edu/manjaro/stable/$repo/$arch
    90: https://mirrors.ucr.ac.cr/manjaro/stable/$repo/$arch
    91: https://mirror.albony.xyz/manjaro/stable/$repo/$arch
    92: https://mirrors.pku.edu.cn/manjaro/stable/$repo/$arch
    93: http://kartolo.sby.datautama.net.id/manjaro/stable/$repo/$arch
    94: http://mirror.xeonbd.com/manjaro/stable/$repo/$arch
    95: https://gsl-syd.mm.fcix.net/manjaro/stable/$repo/$arch
    96: https://mirror.nyist.edu.cn/manjaro/stable/$repo/$arch
    97: http://ftp.riken.jp/Linux/manjaro/stable/$repo/$arch
    98: https://manjaro.mirror.liquidtelecom.com/stable/$repo/$arch
    99: https://mirrors.tuna.tsinghua.edu.cn/manjaro/stable/$repo/$arch
    100: https://mirrors.xtom.jp/manjaro/stable/$repo/$arch
    101: https://mirrors.ustc.edu.cn/manjaro/stable/$repo/$arch
    102: https://linorg.usp.br/manjaro/stable/$repo/$arch
    103: https://mirror.truenetwork.ru/manjaro/stable/$repo/$arch
    104: http://mirror.is.co.za/mirrors/manjaro.org/stable/$repo/$arch
    105: https://manjaro.repo.cure.edu.uy/stable/$repo/$arch
    106: https://mirror.funami.tech/manjaro/stable/$repo/$arch
    107: http://ossmirror.mycloud.services/os/linux/manjaro/stable/$repo/$arch
    108: http://ftp.tsukuba.wide.ad.jp/Linux/manjaro/stable/$repo/$arch
    109: https://mirror.archlinux.tw/Manjaro/stable/$repo/$arch
    110: https://mirror.nju.edu.cn/manjaro/stable/$repo/$arch
    111: https://mirror.2degrees.nz/manjaro/stable/$repo/$arch
    112: https://mirrors.jlu.edu.cn/manjaro/stable/$repo/$arch
    113: https://manjaro.c3sl.ufpr.br/stable/$repo/$arch
    114: https://mirror.aarnet.edu.au/pub/manjaro/stable/$repo/$arch
    115: https://mirror.ufam.edu.br/manjaro/stable/$repo/$arch
    116: https://mirror.ufro.cl/manjaro/stable/$repo/$arch
    117: https://mirror.kku.ac.th/manjaro/stable/$repo/$arch
    118: https://mirror.phoepsilonix.love/manjaro/stable/$repo/$arch
    119: https://quantum-mirror.hu/mirrors/pub/manjaro/stable/$repo/$arch
    120: https://mirrors.sjtug.sjtu.edu.cn/manjaro/stable/$repo/$arch
Processes:
  CPU top: 5 of 234
  1: cpu: 13.8% command: firefox pid: 28039 mem: 692.6 MiB (9.0%)
  2: cpu: 5.1% command: konsole pid: 144391 mem: 168.5 MiB (2.1%)
  3: cpu: 3.3% command: firefox pid: 34445 mem: 138.4 MiB (1.7%)
  4: cpu: 2.2% command: kwin_x11 pid: 740 mem: 171.4 MiB (2.2%)
  5: cpu: 2.2% command: firefox pid: 29412 mem: 303.7 MiB (3.9%)
  Memory top: 5 of 234
  1: mem: 692.6 MiB (9.0%) command: firefox pid: 28039 cpu: 13.8%
  2: mem: 506.0 MiB (6.5%) command: plasmashell pid: 779 cpu: 1.2%
  3: mem: 393.2 MiB (5.1%) command: baloo_file pid: 690 cpu: 0.0%
  4: mem: 334.2 MiB (4.3%) command: firefox pid: 28170 cpu: 0.4%
  5: mem: 303.7 MiB (3.9%) command: firefox pid: 29412 cpu: 2.2%
Info:
  Processes: 234 Power: uptime: 1d 5h 51m states: freeze,mem,disk suspend: deep
    avail: s2idle wakeups: 0 hibernate: platform avail: shutdown, reboot,
    suspend, test_resume image: 2.99 GiB services: org_kde_powerdevil,
    power-profiles-daemon, upowerd Init: systemd v: 256 default: graphical
    tool: systemctl
  Compilers: N/A Shell: Sudo (sudo) v: 1.9.15p5 default: Bash v: 5.2.32
    running-in: konsole inxi: 3.3.35```

Thank you.
Sorry. Solved in post 2. Not my post.

You find good Information about Btrfs in the wiki

and with :mag: btrfs


Welcome to Manjaro! :smiling_face_with_three_hearts:

  1. Please read the information behind this link. It will help you to post necessary information.
  1. Please press the three dots below your post and then press the :pencil2:
  • If you give us information about your system, we can see what we’re talking about and make better suggestions.
  • You can do this by using inxi in a terminal or in console.
sudo inxi --verbosity=8 --filter --width 
  • Personally identifiable information such as serial numbers and MAC addresses are filtered out by this command
  • Presenting the information in this way allows everyone to be familiar with the format and quickly find the items they need without missing anything.
  1. Copy the output from inxi (including the command) and paste it into your post.
  • To make it more readable, add 3 backticks ``` on an extra line before and after the pasted text.
  1. Or we can try to play hide and seek :wink:
    Have you already :mag: for your problem in the forum ? (Wisdom lies in asking → listening → reading :wink: )

Yes

1 Like

Thanks @andreas85

Btrfs is really advanced file system… i would think twice before switching it.

If you don’t know what you doing, you open the pandoras box here… if you have important files.

For Timeshift i recommend Rsync option instead Btrfs… with btrfs and a dead drive, your snapshot is nothing worth.

If you don’t care about this and you only want to rely on a snapshot with a working drive and your goal is to save time when you creating snapshots, then Btrfs is the option for you.

Kobold (among others) seem to always disagree on this, and I’m willing to take them all to a cage match over this! :wink:

There are some pretty huge advantages to btrfs. Benchmarking real world use cases, often have has it performing less than something like ext4 for IO. Although quite a lot of tasks would have ext4 taking hours, where it’s milliseconds with btrfs.

That is what held me off for so long from the jump, why would I want worse performance!? But now, I honestly don’t want anything else for a workstation filesystem. Even on some servers.

At least for me, it did not take long to figure out all the cool things I could do, that were never possible before. Manjaro users should be familiar with the command line, and btrfs-tools are some of the most easy to use and powerful command line tools out there.

You will want to do some reading, especially how subvolumes work. But if you want to Jump in the quickest. I would probably just use Timeshift, and enable btrfs snapshots in it’s GUI, and not rsync.

It will install packages that use a hook, that create a snapshot with every pacman upgrade. Or you can use the Create button, to make them manually. grub-btrfs will also get installed, which is completely separate, and just detects btrfs snapshots, and attempts to boot them with grub. This does work fine, but a huge disclaimer needs to be known before doing this. You shouldn’t use Timeshift’s restore feature when booting into a snapshot. (Timeshift’s restore works fine booting normally, and you can still restore with manual commands booting into a snapshot.)

Timeshift’s default is to make read/write snapshots. Which you can boot. But for rollback and backup puposes, you really want read only snapshots. Which is one command to set a subvolume/snapshot to read only.

I am skipping many things, but I truly think it’s a great way to jump into btrfs. For Snapper, there is a lot more configuration to get it working with the Arch FS layout. And it is a much more complex program, which most of it’s power lies in the command line. While Timeshift’s GUI is actually really well done, and simple.

But either way, will still require a basic knowledge of btrfs. And don’t let people like Kolold deter you. If you’re familiar with other filesystems, you can just start using btrfs like an ext FS. Really the only thing you need to start is how volumes work.

For example:
It was mount /dev/sda2 / before…
Now it’s mount -o subvol=@ /dev/sda2 /
Bonus learning, especially after Timeshift w/ btrfs: mount -o subvolid=5 /dev/sda2 /mnt
Things like that.

And the man pages are actually really well done. I probably learned the most from the man pages. For each btrfs sub-command, like subvolume, the man pages are at: man btrfs-subcommand or man btrfs-subvolume.

1 Like

The features look really interesting for me.
Snapshots before/after update/install… this is really cool. this is why I am thinking of BTRFS

I see, it has many good features in addition to automatic snapshoting, deduplication. data protection and correction… etc.

I will give it a try then.’

See you soon in my BTRFS system!

UPDATE:
Greetings from my BTRFS file system!
I will play with it, snapper, Grub boot from snapshot, BTRFS Assistant… etc.

UPDATE 2:
Installed, configured all related stuff, now I can boot to snapshots from Grub!

1 Like

Then lets the cage match begin :smile:
Round one, fight: Shoryuken :ninja:

Jokes aside…
Its not that i want everyone to evade or ignore btrfs.

But its fair to say that Btrfs isn’t userfriendly as ext4.
And many people run into issues because of this.

The additional difficulty layer when you have certain system issues and you need to fix them on a Btrfs Root Partition isn’t nothing that everyone should ignore.

If the user want to deal with this and has no problem with a additional learning curve around this advanced Filesystem… then green light.

Im just warn the unexperienced guys, not running into trouble.

That’s all. :vulcan_salute:

2 Likes

Jokes and fights aside please!

Seriously speaking from what I read and my limited experience with BTRFS which I don’ call it experience as such, 48 hours only on OpenSuse TumbleWeed. and my experience setting it up on my Manjaro system.

BTRFS is generally very feature rich.
Getting everything to work as intended, automatic snapshots timely, upon installing/updating/uninstalling… etc, having entries of snapshots to boot to automatically… etc… I can’t say it was simple, it was a lot pf procedures and steps, and reboots.

I really wish some expert user can make a few scripts and a little guide to run those scripts in a specific order after installing with BTRFS.

But I see, having the automatic snapshots with updates/installs… etc and automatic entries to the snapshots is a great plus. This is how it should be.

Still, I will try study about the de-duplication of files and how to use it.

1 Like

But the big plus comes along with a big minus also. You lose all files when your HDD has a malfunction and from my understanding in relation to some Forum Postings that even a lost btrfs partition has the same effect.

So you need additional backup solution and you no longer can rely on Timeshift BTRFS as with Timeshift Rsync. Because your files are only partial stored on this Btrfs snapshots.

Disclaimer: My Btrfs informations are not first hand’s experience.
But i read a good amount of Btrfs problems in our Forum, and other’s/newly Btrfs user’s should do this too, to evade the same mistakes that can happen.

Do you mean I can’t boot to an earlier snapshot? What if I boot a live USB flashdisk?

Anyway, my default is I am having all my data on different clouds and I mean ALL my data.

If the SSD dies anyway, by then I might be talking about a new laptop and perhaps a new SSD to have my personal cloud (Resilio Sync) which I used for some time with like 3 really old laptops. But ended up forgetting about it and sticking to using different cloud storage.

Maybe I will make a thread to discus the best way to do it.

As i said already, i don’t have first hands experience. :salt:

Just a little hint: You can do properties on your snapshot and your actual root,
then you should see a different filesize… i think this is one of the trade off’s around Btrfs snapshots. There is no Magic… its about Pro’s/Con’s.

But if you want to relie on it, i recommend to play with it right now as its new and if you have the time.

For example you could delete the whole Root and try to restore it with your snapshot’s… i would really mess around and test out the limits.

Otherwise you may regret it in near future, when you really put time into your system settings and lose everything then.

You can also search the Forum, related to the Btrfs Topic.

1 Like

I will do for sure to learn more.

Gosh. I thought I was a man of adventures! But it is you!

Honestly, I won’t go that far. I don’t mind making a fresh install again and again.
But, I won’t really like to repeat all the steps, installs, configurations… etc… till I got to this I am in now.
For me this was too many steps. It was fun to do it, it is fun to have it. But It is not fun to repeat it unless really necessary like a must do new install, a new laptop… !

But honestly I like the way you think and how careful, precise and paying attention to details.

My experience with btrfs spans a period of more than 10 years. In use, among other things, on well over 10k devices for end customers.
These devices are often switched off by power off instead of shutdown. Btrfs is very(!!!) robust. Ext3 doesn’t like that at all. We have significantly fewer problems with btrfs than with the previous file system (jffs2) and than with ext3.

This is the same with every filesystem :wink:

Snapshots

Snapshots are an additional benefit of btrfs. But they should never be used as a “replacement” for a backup (external).

RAID

One of the best features of btrfs is the software raid. This increases local security and protects against the failure of a single hard drive (or SSD). But this is not a replacement for external backups either!

Data recovery

And because btrfs works with CoW, damaged volumes can usually be mounted read-only and all data can be saved. (I’ve had to do this 3 times in 10 years and haven’t lost any data. My record with other file systems isn’t quite as good)

This is the same with every filesystem :wink:

Overwriting parts of the partition can be fine if there is no important data there. Btrfs only uses as much of the partition as the data that has actually been written to it (see scrub).
But in general, there is a lot that can go wrong when changing occupied partitions. Especially if you do it manually. If you use gparted(!!!), almost nothing can go wrong. Not even with btrfs.

:footprints:

P.S.:
I would say “btrfs is idiot-proof”. But my colleague would answer: “It doesn’t work because idiots are so inventive.”

1 Like

How many times: system-snapshots are never to be considered as backups for files! Who would think of using Btrfs and Snapper to back up their important personal files? It’s all about getting a screwed up system back up and running quickly and Snapper is ideal for that! For the files in /home there are other means (borg etc.). And as far as the configuration of Snapper under Btrfs is concerned: have a look at btrfs-assistant :wink: .

1 Like

I do :wink:

I also use it for /home/… . It is a simple and elegant way to restore deleted files (for all users) from the snapshots. It is also easy to find differences in configuration files (/etc/…) up to 6 months (if configured that way)

I also use btrfs-RAID and external backups (btrfs send/receive), but being able to access the snapshots directly is irreplaceable for me

1 Like

I was talking about this in relation to a Timeshift BTRFS Snapshot.
Of course you lose the files on a HDD which has a malfunction… but this wasn’t my point.

Timeshift Rsync mirrors all files 1:1 and for me they are considered as a backup. Even when the own developer don’t designed Timeshift for this section.

Of course there are better program’s and better ways getting the job done.

The big plus for me, Timeshift Rsync gives me additional security when i have my snapshots stored on a external drive, im not left without trouser’s like i would be, with a Btrfs Snapshot… when my SSD with the root destination is destroyed.

If you do your backups on a Btrfs at the weekly basis like i do with Timeshift Rsync snapshots… you wouldn’t care and you problably wouldn’t count on this snapshots anyways.

You viewpoint is valid… but my point is valid too and i can count on Timeshift Rsync too.

It depends which route you go. With Timeshift, even with Snapper. You do have to backup separately. But the snapshots sit there for as long as you need, for you do it.

This is getting ahead of myself, but btrfs send can send to a snapshot another btrfs filesystem with btrfs recieve. I do this locally and remotely. (And you can send block level incremental changes.) But you do have to get these snapshots to another location yourself. You can use third party software, or rsync, tar, cp, etc. But I love the sending of snapshots themselves with the former commands.

This is also where added software can help with some of those steps.

And of course there are steps you can take to boot a live stick, and restore a failed SSD, from a snapshot on another drive or host. This was the first thing I tested after I set it up.

I was thinking of making the steps into a wiki or post, because they are not here in Manjaro’s wiki or forums, at least in one place. There are a few commands, after booting a live stick. Which Manjaro users should be familiar with.

But the btrfs related steps are pretty simple, but not apparent… Here is a manual rollback example (I call it manual, because it’s not a restore button click, or snapper command):

Disclaimer: This is the way I do a rollback from live boot (plus this is off the top of my head)

I would do this in a VM, or spare drive, if you are doing this a first time. (Just make sure it uses UEFI to boot if you are currently doing it.)

You can rollback from the TImeshift GUI with a button (if you boot normally). But here are the steps for a live boot rollback. (It might help explain the restore procedure.)

Rolling back from a Manjaro live boot.

  1. mount -o subvolid=5 and cd into the snapshot dir
  2. mv the root volume (`@') to another subvol (rename it to BORKED-SNAPSHOT-or-whatever)
  3. Create a snapshot of the one you want to restore called @
    (This is an instant btrfs sub create command, that defaults to RW. This also helps make it so you don’t screw up anything further.)
  4. Mount the root drive again with subvol=@
  5. And do the regular manjaro-chroot /mnt/new-root /bin/bash then update-grub

This takes care of your btrfs filesystem (regardless how many disks it’s on), but not anything else.

So that’s a rollback. Not a restore (from scratch). For restoring, this first part is not even btrfs related, so you do what you have been doing with ext4. (Right??)

I do two extra steps when I backup.

  1. Backup my GPT partition table (it’s a few KB)
  2. dd my /boot/efi partition (it compresses to under 1 MB)

So when I restore the partition table I just, dd the /boot/efi parition back, swapon swap, and restore the root FS.

For me, I just btrfs send a snapshot over. But there are other options, and it really depends on what you decide on how you back them up.

After reading a lot, I understand that TimeShift or Snapper should not be used to backup personal data. I don’t know why though it can be done.

What I was thinking mainly was to snapshot my system so I can boot from Grub to an earlier working snapshot. Explained above.

Backing up personal data is another story.
I believe and prefer it is done real time not even daily. That’s why I rely on cloud storage.

There are other apps and options for backing up personal data, real time. But I am not using them really as my data is synced real time to cloud.

As I mentioned I think previously, I used for some time ResilioSync where I used very old laptops, but I quit because of the hassles of regularly maintaining and looking after several laptops.

I believe there are other more practical solutions.

Sry, I have nothing to add around the cloud topic… i prefer privacy and security and for that i have my own physical devices where i do additional backups (but not regularly) and have full control about my Data.

I would never trust a cloud service.

1 Like

I have been using borg with vorta as the UI backend for several years to back up my personal data. It is very easy to use and self-explanatory. Can also be automated according to a schedule. No cloud required!

But there are also many other …