Uh… I don’t have a separate partition for /home. I have a separate zfs filesystem for it though. If I run into issues, I can restore from snapshot and not affect it.
Uh… I don’t have a separate partition for /home. I have a separate zfs filesystem for it though. If I run into issues, I can restore from snapshot and not affect it.
oOoo… 10 upvotes on a zfs raid 10. I feel like I got the perfect amount.
That is totally fair. Actually I just upgraded to 12 TB drives and that’s why I’m working on this. So huge props to your design choice. Also props for using zfs, I feel like it flies under the radar a lot.
Interesting… Though I know nothing about your particular setup, or migrating existing data, I have a similar project in the works. This project is to automatically setup a ZFS RAID 10 on Ubuntu 24.04.
If you are interested in seeing how I am doing it, I used the openzfs root on Debian/Ubuntu guides.
For the code, take a look at this git hub: https://github.com/Reddimes/ubuntu-zfsraid10/
One thing to note is this runs two zpools, one for / and one for /boot. It is also specifcally UEFI and if you need legacy you need to change the partitioning a little bit(see init.sh)
BE WARNED THAT THIS SCRUBS ALL FILESYSTEMS AND DELETES ALL PARTITIONS
To run it, load up a ubuntu-server live cd and run the following:
git clone --depth 1 https://github.com/Reddimes/ubuntu-zfsraid10.git
cd ubuntu-zfsraid10
chmod +x *.sh
vim init.sh # Change all disks to be relevant to your setup.
vim chroot.sh # Same thing here.
sudo ./init.sh
On first login, there are a few things I have not scripted yet:
apt update && apt full-upgrade
dpkg-reconfigure grub-efi-amd64
There are two parts to automating this, either I need to create a runonce.d service(here). Or I need to add a script to the users profile.d directory which goes ahead and deletes itself. And also I need to include a proper netplan configuration. I’m simply not there yet.
I imagine in your case you could start a new pool and use zfs send to copy over the data from the old pool. Then remove the old pool entirely and add the old disks to the new pool. I certainly have never done this though and I suspect there may be an issue. The other option you have (if you have room for one more drive) is to configure it into a ZFS RAID 10. Then you don’t need to migrate the data, but just need to add an additional vdev mirror with the additional drive and resilver.
One thing I tried to do was to make the scripts easily customizable. It still is not yet ready for that, though. You could simply change the zpool commands in the init.sh.
That’s fair. I chose ZFS because I’ve used it before. And understand it fairly well already. I know nothing about BTRFS, so perhaps you could educate me a little. I’m working on setting up a cloudstack host using ZFS RAID 10. Does BTRFS have a flexible architecture to where you could do something similar?
Edit: Perhaps you could also inform me of the speeds of BTRFS too. From what I understand, ZFS outperforms BTRFS in large datasets, but I don’t know where the cutoff is. I’ll let you know it would need to run 12 ea 10TB HDDs.