I have been using a VPS for a while to host some personal projects and services that I have been using. Lately I have start to think to move all my git projects into it aswell. But at the moment, I’m not really sure how to go about off site backups of the data. How do you usually go about running backups on your servers?

  • sounddrill@lemmy.antemeridiem.xyz
    link
    fedilink
    English
    arrow-up
    8
    ·
    1 year ago

    I do not

    I recompiled darkplaces dedicated for xonotic(aarch64), overcoming many dependency hells and pitfalls

    I would be absolutely devastated to lose it and that would be a net negative to the Indian xonotic community

  • youRFate@feddit.de
    link
    fedilink
    English
    arrow-up
    4
    ·
    edit-2
    1 year ago

    Daily backup using Restic to wasabi s3.

    Restic already speaks s3 natively, no need to mount it or anything, just point it at a bucket and hand it an api key.

    You can use an api key that’s only allowed to read and write, but not delete / modify, so you’ve got some protection from ransomware.

      • youRFate@feddit.de
        link
        fedilink
        arrow-up
        1
        ·
        edit-2
        1 year ago

        You can also feed database dumps directly into restic, like this:

        mysqldump --defaults-file=/root/backup_scripts/.my.cnf --databases mydatabse | restic backup --stdin --stdin-filename mydatabase.sql

  • sznowicki@lemmy.world
    link
    fedilink
    English
    arrow-up
    3
    ·
    1 year ago

    I only choose hosting that provides automated backups of VPS. And it has to be credible like Hetzner who keeps those backups in a different location.

    Additionally if I have something really important I do periodical backups to my local mac that has all sort of backup processes (iCloud, Time Machine plus an extra encrypted backup that I keep on well… hetzner)

    • Elferrerito@lemmy.worldOP
      link
      fedilink
      English
      arrow-up
      1
      ·
      1 year ago

      To be fair, I’m on Hetzner aswell, but the paranoid side of me, would want to have a fallback in the unlikely case of something happens to the company

      • sznowicki@lemmy.world
        link
        fedilink
        English
        arrow-up
        1
        ·
        1 year ago

        Its a German GmbH. From them announcing bankruptcy to switching off the servers would take some months.

  • killabeezio@lemm.ee
    link
    fedilink
    arrow-up
    2
    ·
    edit-2
    1 year ago

    You can use a few tools.

    RSync

    Rclone - probably want this one over RSync though.

    Tarsnap

    Duplicati

    Restic

    There’s obviously a lot more, but these are some of the more popular ones.

    Now you need a way to back it up. Probably the best way is to tar it up first and then dump that file. You can also get something like deadmans snitch to ensure backups don’t break.

    As you mentioned, if this is just source code, then the best thing would be to create source control and have it set up that way. Then you automate it and deploy the code when you make updates and have a history of changes.

    It sounds like tarsnap is your best bet though. It will be the cheapest.

    You can also backup to another storage provider like Google, Dropbox, or even AWS s3. S3 can get costly, but you can archive everything to the glacier tier which is pretty cheap.

    • Elferrerito@lemmy.worldOP
      link
      fedilink
      English
      arrow-up
      1
      ·
      1 year ago

      Thank you for the suggestions, I have been planning on moving my git repositories out of GitHub, into something like gitea. You gave me a good starting point to research the available options.

      • killabeezio@lemm.ee
        link
        fedilink
        arrow-up
        1
        ·
        1 year ago

        If you don’t want to use a hosted provider, you can at least just start using git. Just do git init. Then you can start commiting changes. This way, you at least have a history of changes. Then just back that folder up like normal

  • outbound@lemmy.ca
    link
    fedilink
    arrow-up
    3
    arrow-down
    1
    ·
    1 year ago

    I wrote a bash script that runs daily which 7z (AES256) the databases (well… I dump the DB as text and then 7z those files), web files (mostly WordPress), user files, all of /etc, and generate a list of all installed packages, and then copy the archives to a timestamped folder on my Google drive (I keep the last two nights, plus the last 3 Sundays).

    TBH, the zipped content is around 1.5GB for each backup. So my 17GB of free GDrive space more than enough. If I actually had a significant amount of data, I’d look into a more robust long term solution.

    If there was a catastrophic failure, it’d take me around six hours to rebuild a new server and test it.

    • Elferrerito@lemmy.worldOP
      link
      fedilink
      English
      arrow-up
      1
      ·
      1 year ago

      That is a good idea, I was thinking on doing something similar with s3 before deciding to check what other people were doing. Thanks

  • BorgDrone@lemmy.one
    link
    fedilink
    arrow-up
    2
    arrow-down
    1
    ·
    1 year ago

    Not using a VPS, but I use ‘restic’ to backup my servers over SFTP to my NAS.

    Works really well, I do daily incremental backups and set it to keep 1 backup a day for the last week, 1 backup a week for the last 4 weeks and 1 backup per month for the last 6 months.

    • Elferrerito@lemmy.worldOP
      link
      fedilink
      English
      arrow-up
      1
      ·
      1 year ago

      Having the backups “in-house” is also something to explore, since this could then become the backup for other services aswell

  • cwagner@lemmy.cwagner.me
    link
    fedilink
    arrow-up
    1
    ·
    1 year ago

    One has just nextcloud syncing to my PC, and my RSS Reader. No backups there. My Lemmy VPS uses Hetzner full server backups.

  • the_third@feddit.de
    link
    fedilink
    arrow-up
    1
    ·
    1 year ago

    Borg Backup, Hetzner Storage Box and some bash scripting to dump databases and stop services before backups.