• 0 Posts
  • 68 Comments
Joined 2 years ago
cake
Cake day: June 20th, 2023

help-circle






  • RE: backups, I’d recommend altering your workflow. Instead of taking an image of a box, automate the creation of that box. Create a bash script that takes a base OS, and installs everything you use fresh. Then have it apply configuration files where appropriate, and lastly figure out which applications really need backup blobs to work properly (thunderbird, for example). Once you have that, your backups become just the data itself. Photos, documents, etc. Everything else is effectively ephemeral because it can be reproduced through automation.

    Takes a lot less space, is a lot more portable. And much better in scenarios where something in your OS is broken or you get a new computer and want to replicate your setup.


  • +1 to all of this.

    For ~3 years I ran a Debian system off of a raid 1 of 2 USB drives. I didn’t have the spare drive bay slots in my cs24-ty and I didn’t have the room for an expander.

    SanDisk apparently didn’t consider my use case “warranty-voiding” and were content to replace them whenever they failed. (I was honest during the first warranty inquiry about how they were used; I doubt you could get away with this with modern SanDisk though) I had a 3-year warranty on the drives, and checking my email, I replaced a total of 11 over the 3 year period. The first 7-8 were before I moved logging to a zfs dataset on the spinners, which helped a lot as those 7-8 failures were all in year 1 with the constant journaling, writing, and syncing of mostly logs.

    TL/DR: great for testing if drivers and hardware work; don’t do this in production


  • When I started learning Linux at work, the game I played with myself was i’d install Debian stable minimal on my primary workstation and I would not reinstall it ever. No matter what happened, I would always fix it.

    I learned to install the basic subsystems to get a GUI and audio, learned the fun of Nvidia drivers to get xinerama and hw decoding working. In retrospect it seems trivial but as a new learner it was challenging and rewarding.

    At one point I was trying to do something, and a guide online suggested installing some repo and installing newer libraries. I did so, and a week later I did a dist-upgrade (because I didn’t know any better) and when I rebooted I was presented with a splash screen for “crunchbang” linux.

    Figuring out how to get back to Debian without breaking everything probably taught me more about packages, package managers, filesystems, system config files, init (systemd wasn’t really a thing yet) than everything else I had done combined.

    For anyone wondering: 12 years into the project I had a drive from the mdadm mirror die, and while mdadm was copying to another mirror, the other drive died. I considered that a win but y’all can be the judge (no files were lost, 12yr into my Linux journey I had long since figured out automating NFS and rsync).




  • I did ~1.5 years of only Soylent, then transitioned into 2/3 meals per day being Soylent, which I’ve done for the last ~6-7yrs.

    I’m the healthiest I’ve ever been, but it does require discipline, exercise and attention like anything else. Calories are calories and if you consume more than you burn, you’ll poop a lot and gain weight. If you drink at a significant deficit (my 1.5years was at 1200kcal/day) you will poop once or twice a week and it will take a few months of your body getting used to it for it to be more than liquid.

    As others have said though, it’s a deceptively dehydrating liquid. You absolutely still need to drink water, and your water intake will largely dictate how much you pee.






  • Dran@lemmy.worldtoLinux@lemmy.mlBeing Forced to Say Goodbye
    link
    fedilink
    arrow-up
    18
    arrow-down
    2
    ·
    4 months ago

    Depends on where you work and what their policies are. My work does have many strict policies on following licenses, protecting sensitive data, etc

    My solution was to MIT license and open source everything I write. It follows all policies while still giving me the flexibility to fork/share the code with any other institutions that want to run something similar.

    It also had the added benefit of forcing me to properly manage secrets, gitignores, etc


  • I use ansible on one of my side projects; I use puppet at work. It’s the same reason I use raw docker and not rancher+rke2… it’s not about learning the abstractions; it’s about learning the fundamentals. If I wanted a simple abstraction I’d have deployed truenas and Linuxsserver containers instead of Taco Bell programming everything myself.


  • Sure. I have an r630 that is configured as an NFS server and a docker host called vacuum. There is a script called install_vacuum.sh that with a single command, can build the server to my spec from a base install of Ubuntu 24.04. it has functions to install base packages from repositories, add new repositories, set up users, create config files for NFS, smb, fstab, crontab, etc… once an NFS server exists on my network, any other server could be my docker host. My docker host is set up from a script install_containers.sh. as with before, it does all the things to get me a basic docker host, firewalled, and configured for persistence via my NFS server. It also has functions to create and start docker containers for all of my workflows (Plex, webserver, CA, etc), and if those containers don’t exist, it will build a docker image for said workflow based on a standardized format (you guessed it) bash build script for the containers. There is automation via cron on whatever host runs docker to build and update the containers once a week, bare-metal servers update themselves nightly, rebooting when necessary via unattended-upgrades.

    Basically, you break everything down into the simplest function possible, have everything defined via variables in shared configurations that everything sources before running, and you have higher and higher level functions call other functions until you have a single function that cascades into a functioning system. Does that make sense?