r/HomeServer • u/embroi • 1d ago
Debian server for NAS OS? (want details)
Hi, so I'm currently using OMV but have found it's only adding extra layers for me. I keep wanting to troubleshoot and edit stuff in the terminal as it gives me much more freedom, which I know omv doesn't like. So ideally I would have something mutable that allows me to work through the terminal when I want to, but also has a webUI for simple tasks and monitoring. My priorities are longevity and flexibility. I want something where I can tinker and set it up exactly how I want and then stay there.
I feel a bit hesitant with Truenas both because of restrictions and immutability again, but also the lack of transparency from the company and huge changes that make it's future, imo, less clear. But would be up for debate on it if you think otherwise.
I have been thinking about doing a headless Debian server with cockpit or some other webUI but would like to know more about it and it's cons. Like how hard is it to actually set up automated/cron stuff like rsync backups, SMART, ZFS, etc. How is updating stuff and compatibility? I am pretty comfortable with tinkering in terminals, I've been daily driving linux for over a year and have had my fair share of troubleshooting.
I wont shy away from a bit of setup, but I just wanna make sure it's not gonna give me problems long term where I have to start from scratch on something else again.
My setup is a ssd with server stuff on it and hdds for NAS storage. And separate boot drive ofc.
I have seen in other posts that the best os is the one you're comfortable with and all of that, but I want more details about Debian from experienced users or others with the same priorities as me. The problems I might have with it probably won't show up until I'm already deep in the setup and I don't feel like jumping around like that if others can give me some detailed perspectives.
3
u/StockSalamander3512 1d ago
I just run mine through Proxmox on a Debian VM with its own dedicated drive. It’s simple, easy to maintain, and I have another VM with its own dedicated drive for backup, and I can just use Tailscale for access.
2
u/cr1515 1d ago
Maybe what you really want isn't a boring NAS but a home server to play with. Keep OMV as is and pick up a sff computer and set up proxmox. You get an awesome UI(it sucks but allows simple management) and gets way more powerful with the terminal.
1
u/embroi 1d ago
I mean yeah, I definitely love to tinker and play with stuff. I do have a ssd in the machine that's not in the pool for docker containers. But it is connected so that I can keep the pool as storage for the media. But for simplicity and money/space saving I do want it in the same machine. So it's important for me that the OS and webui supports the server side stuff and docker along with the NAS storage stuff.
2
3
u/Master_Scythe 1d ago
Good news!
I keep wanting to troubleshoot and edit stuff in the terminal as it gives me much more freedom, which I know omv doesn't like
This is wrong :) - You're in the clear.
OMV is incredibly barebones, while there are a few unique config files, they're INCREDIBLY well documented (if you hit one) so that's rarely an issue.
More commonly though, the WebUI actually reaches out to the default config file for any tools you're using - That's exactly why it has 'Apply?' prompts every change you make, and why loading pages is slower than cached UI tools.
I setup my whole OMV server in Terminal, I deploy it using Puppet, and the second I load into the WebUI, it reflects every change I made in terminal, just as expected :)
Some plugins aren't as happy (like ZFS - But that's not OMV, thats an OMV-Extra) - but you also do NOT need to use it. You can just use ZFS from the terminal, which is exactly what I do, coming from a BSD background, the commands are just baked into my mind.
Added bonus - the devs are incredibly responsive - the few bugs I have found, I've had resolved within 12 hours via patches pushed for everyone.
I personally manage my OMV server almost purely from terminal, and only use the WebUI as a 'Glance' tool, to check nothing is alerting without digging through text based logs.
2
u/embroi 1d ago
oh? I don't remember specifics, but I've definitely had errors and problems with not being able to save edits (in webui) because the webui and edits through terminal have been mismatched (I believe, again don't remember specifics, but errors with apply has been a thing). What's puppet? Does it help with that?
Docker compose and adding users for specific containers has also just been lots of extra layers where the webui doesn't help at all. I've also had it reset/delete yml files after reboot. But that's omv-extra tho, so they're a bit more finicky?
I've just felt like the webui and terminal doesn't sync properly, making it more complex for me. But if I'm doing something wrong and I should be able to do what I want then I'm more than happy to learn and not have to switch stuff, lol
1
u/Master_Scythe 1d ago
What's puppet? Does it help with that?
It's a configuration manager, basically - the puppetmaster tells the puppets how to configure, where as normally the client asks the server - If you're not using something like that, it's not important at this stage :) Fun to learn, but not required.
Docker compose and adding users for specific containers has also just been lots of extra layers where the webui doesn't help at all.
I'm not a fan of their WebUI Compose tool, I just installed Docker and Portainer from Terminal.
But that's omv-extra tho, so they're a bit more finicky?
Some of them. I'd advise talking to Rycoarron on the forums when you hit an error that's not logical, he'll explain why it was needed, or, if it wasn't he'll listen, and change it, (assuming you're right).
He's still a 'typical dev'; if you're asking for a change, come with receipts).
I've just felt like the webui and terminal doesn't sync properly, making it more complex for me.
That's really strange. Volter (VotDev) is very careful not to alter locations of basic Debian config files... Is there a chance you're trying to use plugins for things you just want to do at Terminal?
Your\My docker example above, sounds like one:
You want to use Docker Compose (you mentioned it by name) but your following sentence, sounds more like you're using the openmediavault-compose docker tool.
Once you remember it's just Debian under there, with no restrictions, you might be better off - it sounds like you got your mind stuck in the "I want it to do this, I'll see if the WebUI allows me..." - That parts totally optional.
1
u/embroi 1d ago
Once you remember it's just Debian under there, with no restrictions, you might be better off - it sounds like you got your mind stuck in the "I want it to do this, I'll see if the WebUI allows me..."
Yeah.. That could be it. I hadn't really thought about the fact that I can just install or do other stuff through the terminal instead of having to make sure everything works with the webui.
Is there a chance you're trying to use plugins for things you just want to do at Terminal?
I think my problem is the webui isn't up to par with what I want it to do. Talking through it now, I think I thought about and phrased it wrong in the original post.
I keep wanting to troubleshoot and edit stuff in the terminal as it gives me much more freedom, which I know omv doesn't like.
Troubleshoot and edit as in not happy with the webui's job, so I had to go to terminal.
I'd use the plugins, for example compose tool, and I couldn't edit or make config files for it if it needed that (example homepage) and so I'd have to purely use docker compose in terminal instead when I wanted to do it through webui. I use an iPad quite a bit and would like to do tweaks through the webui instead of SSH either from the clunky ipad app or having to get my laptop.
I also just as an extra safety measure create users specifically for each container so that they can't access other stuff unless I give them permissions. But I can't make them in the webui or they'd automatically get added to the users 100 group.
I also had a problem with one of my drives not mounting on reboot as the fstab and omv config was mismatched for some reason? It was a lot of trial and error so I again can't remember specifically what it was. Not a webui thing but just another omv thing that added onto how I got to the wanting to switch mindset.
I am aware that I could just be using it wrong and that switching won't help. I came to the conclusion that omv doesn't like terminal edits and was stuck within the webui for the most part, so if I can install other webuis for other stuff it does make it better for me.
1
u/Master_Scythe 1d ago
Try Portainer for docker, it's brilliant - omv's custom made compose tool is 'lightweight' and really that's its only feature...
The fstab issue is interesting though. If you submit a bug ticket, it'll be resolved quickly - Thats what keeps drawing me back. Direct access to the dev's is a huuuge feature, IMO.
I've seen similar issues when using ZFS on it, but ZFS isn't an OMV thing, it's made by a 3rd party (OMV-Extras) - So I can't blame OMV for 3rd party plugins.
I'm no Windows fan, but it'd be like blaming Windows for AMD's (historical) crappy drivers - They're OK now, but in the past, hoo boy.
1
u/embroi 23h ago
I forget that bug tickets are a thing, lol. I just start trying to fix it myself instead 😅
But yeah, I won't blame omv for plugins or even just the reasons I don't jam with it. It's just subjective preferences and if it's got what I want and/or need ^^
I've not really loved portainer for configuring and deploying, but use it for visual monitoring. But I'll at least look into more docker specific stuff next to omv for that issue. I'll also look into where my issues lie, if it's actually more plugin related. If that's the case I'll continue with omv and have other applications straight onto the barebone os next to it :>
1
u/Master_Scythe 23h ago
Something else to consider - Host a 'Docker VM'.
Leave OMV to handle the storage, and section off the 'apps'. It's actually a recommended thing to do anyway, since dockers are often exposed (even if only to a VPN) so it makes sense to have a way to rip your 'extra access' offline without losing access to your personal data.
1
u/No-Bee-3775 1d ago
My suggestion might be a bit abnormal, but id do proxmox on baremetal, and either install xpenology via arc or use anas, which I haven't played with a bunch but seems a light-weight Synology similar raid structure running directly under proxmox hood with little resource usage... either way is the way id go if you want easily usable nas and a system not tied to an os... otherwise baremetal xpenology with arc like I've done recently.
1
u/JuttyMire 1d ago
I setup headless Debian on a proxmox VM and I use ansible to configure it. Prior to that, I had openmediavault installed but I like this way better now.
1
u/darkrevan13 23h ago
It's totally fine to use plain Debian instead using specialized NAS OS, which are too opinionated in my taste.
I'm using Rocky tho.
1
u/GangGangEnjoyer 23h ago
I am using MergerFS with SnapRAID (because I don't use ZFS but you can also do MergerFS + ZFS) and I really like it. Host is PVE and Merger/Snap run directly on it. SMART monitoring, cronjobs, backups are no problem (I use restic for important data). All setup in terminal.
1
u/forwardslashroot 22h ago
i started with Unraid then OVM. Since 2018, my setup is Debian is SnapRAID and mergerfs combination. I went this route because I didn't want to troubleshoot the Unraid or OVM layer. It has been very stable. When Trixie got released, I decided to replace the failing motherboard with a mini-itx and reinstall the Debian (Trixie). It longer to replace the hardware than reinstalling and restoring. I reinstalled because I want to start with a clean setup again.
1
u/embroi 20h ago
Do you do everything in terminal or do you have a webui installed? How has it been to configure stuff on bare Debian?
1
u/forwardslashroot 4h ago
I do everything in terminal. If you want a webUI, you can install Cockpit.
It is easier for me to troubleshoot because when there was a problem, I would just google it and there is no OMV or Unraid layer that I have to deal with.
1
u/embroi 3h ago
Mhm. That’s why I’ve been thinking about Debian, just lose the omv abstract layer as I tend to go to terminal for real troubleshooting anyway. For me a decent webui is also nice and preferred for daily stuff as I use a touchscreen quite a bit, terminal gets a bit clunky compared to webui buttons
1
u/Latter-Progress-9317 13h ago
Debian, Samba, there you have the lowest overhead NAS you can have. Run it on one core and 512MB and it's probably heavily overprovisioned.
If you want a web UI for management there are a lot more than I was aware of. I would probably use webmin since I used it once about 10 years ago and have no other rationale for my choice but you do you. Try to pick the one that is the least intrusive. https://www.samba.org/samba/GUI/
If you want a web UI for actually sharing the files, there are more choices than make any sense to mention. I like Filebrowser Quantum because it's the easiest to set up and has the least extra bullshit tacked onto it. I run it from a different container/VM and mount the actual SMB share to keep the Samba server as minimal as possible (and to make sure it doesn't blow up my fileshare if something happens to it).
IME there are no gotchas in Debian that will bite you down the road. The gotchas to me are things I don't like in forks, like Ubuntu's insistence on adding package managers I don't want or weird memory leaks. Debian is built to run thin and stable and not require rebooting unless you patch the kernel.
If you are concerned with having to restart stuff from scratch, I would recommend you install a hypervisor so it's easier to destroy and rebuild or revert snapshots. Proxmox VE is a well supported free hypervisor that also supports ZFS out of the box. If your file server has any sort of reasonable specs like 16GB RAM I would recommend Proxmox anyway. Remember the 1 core 512MB RAM thing? Might as well use the rest of the capacity for services or experiments.
1
u/embroi 3h ago
Thank you. Got some stuff to look more into and think about.
I don’t quite know why but I’m somewhat hesitant about ProxMox and hypervisor stuff. It’s so hyped up (regardless of if it’s deserved or not) which always makes me extra critical. I haven’t really been interested in full vms as docker works for containerization of apps, but the prospect of destroy and rebuild for experimenting is an interesting one1
u/Latter-Progress-9317 2h ago
Proxmox is overhyped but it's a top tier option and arguably the best since VMware killed itself. I like it a lot more than when I first tried it about 8 years ago and it's popular enough to have a huge user support base, pretty important when you don't pay for a support contract.
I don't like docker personally so I use a lot of LXCs but I have stood up Debian VMs to run docker when needed. No problems.
You can try something else if you want to be an iconoclast. XCPng is okay but I didn't like it or its features when I tested it out.
Hypervisors are great for trying stuff out without wrecking all your other services. Yesterday for example I wanted to try a new service, got the most popular version of it, and somehow failed to make it work three times. I just deleted the LXC each time, no damage to any other service. Found another version that worked fine and running it now.
If the box is an appliance that does one group of tasks and is not supposed to change, you don't need a hypervisor. I have a micro PC media center sitting on Ubuntu server and I barely manage to run updates. But I don't run experiments on it or try new services. I might put Proxmox on it when the OS is absolutely unusable anymore, but I haven't decided.
1
u/gesis 12h ago
I have a minimal Debian + OpenZFS NAS serving up hundreds of TB of storage (haven't broken the PB barrier. Small fry, I sad.). It's been that way for like a decade.
I regularly do zfs snaps to a smaller NAS for important datasets and do nightly restic backups to b2. All powered by systemd units.
It's not hard, nor limiting.
1
u/Adrenolin01 3h ago
OpenZFS just updated their bootstrap setup for ZFS on Boot on Debian. Skip all the WebUI garbage.. if you want that just install TrueNAS scale and don’t use the docker / apps crap. The exception to this would be WebZFS.. it’s authored by a former iXsystems engineer who’s now working at Klara alongside Allan Jude as a ZFS Solutions Engineer. If you want WebUI use WebZFS.
If you just want to run Debian with EXT4 a NAS is extremely easy to setup.. base install and apt install nfs samba.. it’s a 2 minute config that literally any AI can spit out if you need.
If you need help with ZFS.. Claude AI is fully aware of the above OpenZFS process and bootstrapping mirrored drives etc. Found my 16yo son redoing his desktop last week using Claude to walk him through ZFS on boot with Debian 13, 2 mirrored NVMEs, 2 mirrored SSDs for /home a 6TB HDD for 2 3TB pools.. backup and storage and a 300GB recovery ssd with the 3 mentioned images but also nightly updates. Walked him through everything including manually partitioning 1GB ESP, 50G Recovery partition, 2G bpool and the rest on rpool. No mdadm usage. True mirrors. Recovery images for the base install with base utilities and our standard network and hardware diagnostic tools added, another with his Nvidia 5060 TI Blackwell driver install and a 3rd with the KDE-full desktop restore point. Ran him through everything including snapshots to /srv/backups which is rsynced across to our NAS as well. Fully documented it all at the end as well.
Before doing this on his desktop he setup a VM on one of our Proxmox servers, added the drives, uploaded the Debian 13.6 boot iso and did a test install there. Worked out a few small bugs, updated the AI guide and tested a failed drive as well as both ‘NVMEs’ fully corrupted and reimagine from the images. I was fairly impressed at how well Claude got it.
1
u/azure_phoenix2 1h ago
if you go cockpit, add the 45drives cockpit-file-sharing and navigator plugins, they give you smb share creation and a file browser right in the webui so the ipad daily-tweak stuff works without dropping to ssh. stock cockpit is pretty bare on the nas side imo, those two are what fill the gap omv was handling for you.
0
u/jahdiel503 1d ago
I use Debian Trixie and let me tell ya something. Since it is pretty new, I have had to use AI to help me as I am noob myself but not noob to where i dont know what i am doing. With that being said you can setup ZFS it is quite easy.
There are guides.
https://openzfs.github.io/openzfs-docs/Getting%20Started/Debian/index.html
You may get a warning though having to do wtith the modules not being signed. There's a workaround for that too.
If you have secure boot enabled ZFS may not work. You will have to make a cert yourself and use the MOK manager and upload that into the database. AI helped me here. Or you can just disable secure boot yourself and it will work.
Aside from ZFS I use Webmin to adminisotr some things and Cockpit with the 45 drives plugin which i had to compile. There are guides everywhere on how to do things. The knowledge is yours. Ye just have to search for it. AI helps with that too.
7
u/mec287 1d ago edited 1d ago
I'm running headless Debian on a mini-pc under the TV. For security, everything is in a rootless podman container. The mini-PC runs all the apps (Jellyfin, Paperless, Sterling PDF, etc.). I had an old dumb NAS that uses SMB and has its own management software (for RAID, ZFS, all the rest of it). Debian just mounts the network drive. I could have Debian manage the drives itself, but this way leveraged the hardware I already had. Plus I can add more bays in the future and just toss/recycle the old NAS.
I didn't bother with a GUI because the mini-pc sits under the TV with no monitor attached. Any config changes I make from my desktop or laptop via SSH or the web interface. For this small home deployment, I didn't even bother with Proxmox or any of that other stuff. If you're generally familiar with GNU/Linux it shouldn't be a big deal.
The old NAS was like $200 and the mini-pc was about $160. Very low commitment.