These days I greatly prefer to own my data more directly, which I accomplish using a NAS. I don’t use Dropbox OR Google Drive, I use Syncthing, which can do stuff that neither of those could ever dream of in terms of syncing between machines.
Not only do I not want Google Drive, I don’t even want anything like it.
That said, I totally get why it’s still important. I do use Google Drive at work and for that type of use case I would not argue in favor of self-hosting. Syncthing is great for a single person or even a fairly large group of people, but not for a big organization. Not to mention you probably use Google Docs or Office 365 anyways, both of which are integrated with their respective company’s storage offerings. Syncthing won’t give you directory sync, docs integration, or granular ACLs.
But that’s actually perfectly fine, because I don’t need any of those things. Hell, I flat out don’t really want them. You could probably get something similar with ownCloud which I did try running, and I’m not even particularly enticed. I’m sure Synology has a full suite as well, but it’s not what I want out of my NAS. Part of being happier with my technology was just as much realizing what I didn’t want as it was realizing what I wanted.
I've been very happy with self-hosting a Seafile instance to serve as a personal cloud for myself and a small academic ML team. I built a small NAS, Proxmox runs on baremetal, on top of which there's an ubuntu VM running a Seafile docker instance. Fantastic performance, so so much more efficient for syncing large libraries b/w machines. Owncloud/Nextcloud was a pig for my purposes, it seemed unable to sync libraries w/ large number of files (2million+). IIRC Seafile sync client is C under the hood, and is much more performant than any other sync client I've tried. OneDrive was completely unable to upload the amt of data that I needed, and I was tired of manually splitting my datasets into chunks, only to have to stitch them back together on the shitty WebUI. Feel free to hit me with any questions if anyone is thinking of setting up a Seafile instance. I've found their 'community edition' free release to be more than sufficient for our team.
Oh yeah, most importantly-- Linux is treated as a 1st class citizen, the sync clients are equally performant b/w platforms in my experience. In contrast to Nextcloud, Seafile is really good at one thing-- file sync&share-- and the Web UI is intuitive & full-featured for users & admin alike.
The last time I used Seafile, it was very slow, and it was more of a pain to get and keep running than it was worth, though I was using the free version instead of the paid version.
The problem with seafile I had was if I tried to sync down files and the sync client stopped, it would have no problem uploading the incomplete downloads as changes to the server, as well as pushing missing as deletes to the server.
I didn't lose any data over it, thank god, but I moved away from that.
The moral of the story is sync is a hard problem. And corner cases need to be tested before you rely upon any sync service for your data.
> The problem with seafile I had was if I tried to sync down files and the sync client stopped, it would have no problem uploading the incomplete downloads as changes to the server, as well as pushing missing as deletes to the server.
this surely does not seem like a 'corner case' and would be absolutely terrifying if true.
could you be more specific in regards to the circumstances?
I’m curious, what do you use to access files on your NAS? I’ve used Samba for forever but it’s always been kind of annoying to deal with permissions, and whilst running AD would probably solve that, I then have to deal with running AD. I’m tempted to try switching to NFS instead.
Samba. I tried AD very briefly before realizing how absolutely terrible of an idea it was. It just makes life so complicated, and AD integration was not as good as I was hoping. I can see why this market constantly has all kinds of crazy offerings…
As far as permissions go, I guess I am mostly ignoring granular permissions. I’m generally only concerned with permissions on a per-share basis. This way, file permissions mostly don’t matter and can be a one-and-done affair. Then, I can split files up into separate shares.
NFS also seemed appealing, but honestly it does seem to bring a lot of complexity that SMB/CIFS does not, and everything supports the latter well enough for my use cases.
Remote access is another issue, since you should probably not do SMB over the internet, but I guess that can be solved with Tailscale or ZeroTier.
Honestly, I don’t mind a VPN moat on top of even that, but it’s definitely a good tip. Any unencrypted data over a VPN is a liability anyways.
That said: for the moment, I still have some SMB1 clients inside my network. Yes, this is terrible, and frankly it is surprising Samba still supports it (I won’t be too surprised or too angry if it gets removed now that it’s separated out.) I should probably segregate SMB1 clients onto a different fileserver on a different VLAN or something. Until then, it would be annoying to force SMB3 on all clients.
(As for why Anybody would use SMB1, the answer is retro computing. I also suspect that Open PS2 Loader is an SMB1 client, though I have not checked.)
My NAS of 6 years just crapped out on me a couple days ago. Probably just the power supply, but my suggestion is to get 2 NASes in RAID6 and mirror data between them if you can.
These days I greatly prefer to own my data more directly, which I accomplish using a NAS. I don’t use Dropbox OR Google Drive, I use Syncthing, which can do stuff that neither of those could ever dream of in terms of syncing between machines.
Not only do I not want Google Drive, I don’t even want anything like it.
That said, I totally get why it’s still important. I do use Google Drive at work and for that type of use case I would not argue in favor of self-hosting. Syncthing is great for a single person or even a fairly large group of people, but not for a big organization. Not to mention you probably use Google Docs or Office 365 anyways, both of which are integrated with their respective company’s storage offerings. Syncthing won’t give you directory sync, docs integration, or granular ACLs.
But that’s actually perfectly fine, because I don’t need any of those things. Hell, I flat out don’t really want them. You could probably get something similar with ownCloud which I did try running, and I’m not even particularly enticed. I’m sure Synology has a full suite as well, but it’s not what I want out of my NAS. Part of being happier with my technology was just as much realizing what I didn’t want as it was realizing what I wanted.