Review my idea for large media storage + backup.
Posted by FederalCyclist@reddit | linuxadmin | View on Reddit | 9 comments
I want to design a solution for long term storage of large files. What I have now at home is a server that runs Home Assistant in proxmox, and Windows PC that I sporadically use to play games.
What I want to have is a network disk that has at least 10tb for all my backup needs.
My idea is to buy two 16TB HDDs, one external one to connect to my home assistant hosting machine, and the second one to put in my Windows PC.
On my server I would add a VM with NextCloud and mount HDD into it. I would use a part of internal SSD for a passthrough cache.
On windows machine, I would mount the other 16TB hdd, create a VM with linux, that will autostart, and the disk would be connected to this VM.
I would install Syncthing on both, so whenever PC is turned on, it backs up all files from media server. I think Syncthing can be versioned, so it would even survive deleting all data on the main server.
This way I get a backup in another location that is offline most of the time, so it is safe from stupid mistakes on the main server.
What do you think about such setup? Will SyncThing be enough?
Emergency-Scene3044@reddit
Looks solid! Offline backup is a great fail-safe. Just make sure Syncthing’s versioning is set up right, and consider a NAS if you want 24/7 redundancy.
evild4ve@reddit
it's complicated - easier to make a NAS with one 16TB disk, and back up by copying that to another 16TB disk that is kept in a concrete box in a cellar in a castle in a friendly country on the moon
save user files to the NAS not the OS disks, if desired: image the PCs and servers and their VMs
my way is boring and confers no status - it is scalable to >200TB, it can be done with fleamarket hardware, it is not only foolproof it is meproof
pnutjam@reddit
\^\^
Similar to what I do. I only have 4TB, but I use an OpenSuse LEAP linux server since it supports btrfs very well.
I have a smaller SSD for the OS and /home, then I have 2x 4TB sata drives. One is mounted to /data and I write all my backups and shared folders to this drive (samba, nfs, sftp). The 2nd drive is in the server and unmounted.
I have a script that mounts the 2nd drive and does an rsync from drive 1 to drive 2. Once the backup completes, it takes a snapshot and then unmounts the drive.
The snapshot give me immutable backups and versioning. I'm protected from fat finger mistakes and malware that would try to encrypt my backups since snapshots are read-only by default.
I push a subset of this data to the cloud (b2 is super cheap) to protect my important data.
jrandom_42@reddit
u/FederalCyclist just FYI this is referring to the 'business' version of BackBlaze.
pnutjam@reddit
Thanks, it's also the only version you can use with Linux.
Electronic-Sea-602@reddit
This! I have a separate PC with Linux and file shares configured. My PC is backed up daily to my "NAS" and weekly to cloud (wasabi). Easy and covers my needs.
jrandom_42@reddit
This sounds like a fun homelab project but, honestly, it's not a good backup system design. Biggest issue is that it doesn't protect your data from a fire or flood at your house.
Can I suggest just spending $9/month on a BackBlaze subscription instead, OP?
Pop that 16TB HDD in your Windows PC, install the BackBlaze agent, set and forget. Problem solved. Put all that homelabbing energy into something else instead.
Kahless_2K@reddit
Synchthing is not backup software. Have you considered using something designed for backups?
pnutjam@reddit
For what you're talking about, you should either use a SAN distribution, or just add iscsi to your linux server.
https://documentation.suse.com/sles/15-SP6/html/SLES-all/cha-iscsi.html