Announcement

Collapse
No announcement yet.

Discussion: Immutable vs. non-immutable. Is there a "Perfect" btrfs set up?

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    Discussion: Immutable vs. non-immutable. Is there a "Perfect" btrfs set up?

    I'm at about 30 years of using Linux and I've seen a lot of changes over those years.

    The new "Immutable" distros are an interesting new-ish idea and I can see a very large user base might go that direction. A distro that never really breaks - a failed system update automatically reverts to the previous state - seems perfect for people not interested in "fiddling" with their OS and just want to use it. Think about your parents or grandparents: they need or want to use the internet and do some basic computer tasks but also need a stable and secure environment that's easy to maintain. Immutability sounds perfect for them, or maybe students studying coding. I'm sure there are others for whom this concept is suitable.

    For me? Not so much.

    I want to fiddle and tinker and fine-tune. So how can I gain the "unbreakable" advantage of an immutable OS without it being totally locked down? I think btrfs may have the answer:
    Snapshots: arguably the single best feature of btrfs.
    Send | Receive: The ability to transfer all or parts of your entire install or home to another device or computer.
    External tools: like "grub-btrfs" which lets you boot to a snapshot from the grub menu.

    I've also seen user scripts that automatically create snapshots prior to a system update, and automatically delete older versions to prevent filling the file system. I believe "snapper" can also be configured to do this but I've never installed it. In its early days it was notorious to filling a file system to capacity - the one sure way to really "break" btrfs - so I stayed away from it.

    In my current state, I have 5 bootable installs on a single btrfs file system so I can boot to another distro if I "break" my main install. I also wrote a script that automatically makes a morning snapshot of the root and home subvolumes and backs them up to a second drive. I keep 15 days worth of daily snapshots. Additionally, it saves 90 days worth of weekly backups so I can go back three months if I need to. Since the daily morning snapshot is taken before I wake up, I usually fearlessly update first thing in the morning (rebooting if necessary). I know I can roll-back to yesterday and reboot in 10 seconds or less. Same goes for installing something new to try out. If I don't like it or it breaks something, I just roll back.

    I haven't decided if I need to add the ability to boot directly to a snapshot or not. It sounds like a grand idea - part of a "perfect" setup - but I can roll-back and reboot now, effectively the same thing albeit manually.

    I'm curious what your thoughts might be about immutable distros - like KDE Linux - or what other additions or what functions would be part of your "perfect" set up?

    Please Read Me

    #2
    snapshot of the root and home subvolumes and backs them up to a second drive
    1 thought might be considered , rolling back /home along with the root filesystem can undo recent changes to personal files and application settings. Keeping home separate from system snapshots, or backing it up independently, may be preferable​.
    ▁ ▂ ▄ ▅ ▆ ▇ █ ᄂIПЦX FӨЯ ᄂIFΣ █ ▇ ▆ ▅ ▄ ▂ ▁

    Comment


    • oshunluvr
      oshunluvr commented
      Editing a comment
      Yes of course. This is exactly what I have set up. I also have the user .cache folder in a separate nested subvolume so it's not part of the backup.

    #3
    immutable should be good for users who just want to use apps and not tinker with the details of their OS ... as long as they are happy with the options they have then it should work for them.

    but students studying coding are going to want to tinker, and it would quickly become frustrating for them not to be able to try things ... they could run a real distro in a VM i suppose.
    some stuff i did: https://github.com/droidgoo

    Intel® Core™ i7-14700K | 64 GiB of RAM | AMD RX 6800

    Comment

    Users Viewing This Topic

    Collapse

    There are 0 users viewing this topic.

    Working...
    X