b4c0c40f63
Small module that regularly runs btrfs scrub on all btrfs filesystems. Eventually the module should also do SMART value monitoring, as edwin is a server from Hetzner's server auction, so a disk failure may not be too far away. Change-Id: I11e423a5d91c99ad455c2bb29b632efb79ef908e Reviewed-on: https://cl.tvl.fyi/c/depot/+/7294 Reviewed-by: sterni <sternenseemann@systemli.org> Tested-by: BuildkiteCI
25 lines
573 B
Nix
25 lines
573 B
Nix
# TODO(sterni): configure smartd and alerts
|
|
{ config, lib, ... }:
|
|
|
|
{
|
|
config = {
|
|
services = {
|
|
btrfs.autoScrub = {
|
|
enable = true;
|
|
interval = "daily";
|
|
# gather all btrfs fileSystems and overwrite default
|
|
fileSystems = lib.mkForce (
|
|
lib.concatLists (
|
|
lib.mapAttrsToList
|
|
(
|
|
_:
|
|
{ fsType, mountPoint, ... }:
|
|
if fsType == "btrfs" then [ mountPoint ] else [ ]
|
|
)
|
|
config.fileSystems
|
|
)
|
|
);
|
|
};
|
|
};
|
|
};
|
|
}
|