mirror of
https://github.com/RichieCahill/dotfiles.git
synced 2026-04-17 04:58:19 -04:00
added scratch pool
This commit is contained in:
@@ -16,11 +16,6 @@
|
|||||||
./syncthing.nix
|
./syncthing.nix
|
||||||
];
|
];
|
||||||
|
|
||||||
boot.zfs.extraPools = [
|
|
||||||
"media"
|
|
||||||
"storage"
|
|
||||||
];
|
|
||||||
|
|
||||||
powerManagement = {
|
powerManagement = {
|
||||||
# cpuFreqGovernor = "ondemand";
|
# cpuFreqGovernor = "ondemand";
|
||||||
# scsiLinkPolicy = "min_power";
|
# scsiLinkPolicy = "min_power";
|
||||||
|
|||||||
@@ -23,6 +23,7 @@ in
|
|||||||
volumes = [
|
volumes = [
|
||||||
"${vars.media_docker_configs}/qbitvpn:/config"
|
"${vars.media_docker_configs}/qbitvpn:/config"
|
||||||
"${vars.storage_qbitvpn}:/data"
|
"${vars.storage_qbitvpn}:/data"
|
||||||
|
"${vars.scratch_qbitvpn}:/data/incomplete"
|
||||||
"/etc/localtime:/etc/localtime:ro"
|
"/etc/localtime:/etc/localtime:ro"
|
||||||
];
|
];
|
||||||
environment = {
|
environment = {
|
||||||
|
|||||||
@@ -90,6 +90,17 @@
|
|||||||
keyFile = "/dev/disk/by-id/usb-XIAO_USB_Drive_24587CE29074-0:0";
|
keyFile = "/dev/disk/by-id/usb-XIAO_USB_Drive_24587CE29074-0:0";
|
||||||
fallbackToPassword = true;
|
fallbackToPassword = true;
|
||||||
};
|
};
|
||||||
|
# Scratch pool
|
||||||
|
"luks-scratch-pool-ata-CT480BX500SSD1_2314E6C3C01C-part1" = {
|
||||||
|
device = "/dev/disk/by-id/ata-CT480BX500SSD1_2314E6C3C01E-part1";
|
||||||
|
bypassWorkqueues = true;
|
||||||
|
allowDiscards = true;
|
||||||
|
};
|
||||||
|
"luks-scratch-pool-ata-CT480BX500SSD1_2314E6C3C01E-part1" = {
|
||||||
|
device = "/dev/disk/by-id/ata-CT480BX500SSD1_2314E6C3C01E-part1";
|
||||||
|
bypassWorkqueues = true;
|
||||||
|
allowDiscards = true;
|
||||||
|
};
|
||||||
# Storage pool
|
# Storage pool
|
||||||
"luks-storage_pool-nvme-Samsung_SSD_970_EVO_Plus_2TB_S6S2NS0T834822N-part1" = {
|
"luks-storage_pool-nvme-Samsung_SSD_970_EVO_Plus_2TB_S6S2NS0T834822N-part1" = {
|
||||||
device = "/dev/disk/by-id/nvme-Samsung_SSD_970_EVO_Plus_2TB_S6S2NS0T834822N-part1";
|
device = "/dev/disk/by-id/nvme-Samsung_SSD_970_EVO_Plus_2TB_S6S2NS0T834822N-part1";
|
||||||
@@ -171,14 +182,15 @@
|
|||||||
keyFile = "/dev/disk/by-id/usb-XIAO_USB_Drive_24587CE29074-0:0";
|
keyFile = "/dev/disk/by-id/usb-XIAO_USB_Drive_24587CE29074-0:0";
|
||||||
fallbackToPassword = true;
|
fallbackToPassword = true;
|
||||||
};
|
};
|
||||||
# Torrenting pool
|
|
||||||
# "luks-torrenting_pool-wwn-0x500a0751e6c3c01e-part1" = {
|
|
||||||
# device = "/dev/disk/by-id/wwn-0x500a0751e6c3c01e-part1";
|
|
||||||
# bypassWorkqueues = true;
|
|
||||||
# allowDiscards = true;
|
|
||||||
# };
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
zfs.extraPools = [
|
||||||
|
"media"
|
||||||
|
"scratch"
|
||||||
|
"storage"
|
||||||
|
];
|
||||||
|
|
||||||
kernelModules = [ "kvm-amd" ];
|
kernelModules = [ "kvm-amd" ];
|
||||||
extraModulePackages = [ ];
|
extraModulePackages = [ ];
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -11,6 +11,8 @@ sudo zpool create -o ashift=12 -O acltype=posixacl -O atime=off -O dnodesize=aut
|
|||||||
sudo zpool add storage -o ashift=12 special mirror
|
sudo zpool add storage -o ashift=12 special mirror
|
||||||
sudo zpool add storage -o ashift=12 logs mirror
|
sudo zpool add storage -o ashift=12 logs mirror
|
||||||
|
|
||||||
|
# scratch
|
||||||
|
sudo zpool create -o ashift=12 -O acltype=posixacl -O atime=off -O dnodesize=auto -O xattr=sa -O compression=zstd -m /zfs/scratch scratch
|
||||||
|
|
||||||
# media datasets
|
# media datasets
|
||||||
sudo zfs create -o compression=zstd-9 media/docker
|
sudo zfs create -o compression=zstd-9 media/docker
|
||||||
@@ -23,6 +25,10 @@ sudo zfs create -o compression=zstd-19 media/home_assistant
|
|||||||
sudo zfs create -o exec=off media/share
|
sudo zfs create -o exec=off media/share
|
||||||
sudo zfs create -o recordsize=16k -o primarycache=metadata -o mountpoint=/zfs/media/database/postgres media/postgres
|
sudo zfs create -o recordsize=16k -o primarycache=metadata -o mountpoint=/zfs/media/database/postgres media/postgres
|
||||||
|
|
||||||
|
# scratch datasets
|
||||||
|
sudo zfs create -o recordsize=16k -o sync=disabled scratch/qbitvpn
|
||||||
|
sudo zfs create -o recordsize=16k -o sync=disabled scratch/transmission
|
||||||
|
|
||||||
# storage datasets
|
# storage datasets
|
||||||
sudo zfs create -o recordsize=1M -o compression=zstd-19 storage/archive
|
sudo zfs create -o recordsize=1M -o compression=zstd-19 storage/archive
|
||||||
sudo zfs create -o compression=zstd-19 storage/main
|
sudo zfs create -o compression=zstd-19 storage/main
|
||||||
@@ -32,4 +38,3 @@ sudo zfs create -o compression=zstd-19 -o copies=3 storage/secrets
|
|||||||
sudo zfs create -o compression=zstd-19 storage/syncthing
|
sudo zfs create -o compression=zstd-19 storage/syncthing
|
||||||
sudo zfs create -o recordsize=1M -o compression=zstd-9 -o exec=off -o sync=disabled storage/qbitvpn
|
sudo zfs create -o recordsize=1M -o compression=zstd-9 -o exec=off -o sync=disabled storage/qbitvpn
|
||||||
sudo zfs create -o recordsize=1M -o compression=zstd-9 -o exec=off -o sync=disabled storage/transmission
|
sudo zfs create -o recordsize=1M -o compression=zstd-9 -o exec=off -o sync=disabled storage/transmission
|
||||||
|
|
||||||
|
|||||||
@@ -16,7 +16,7 @@ in
|
|||||||
cache-size-mb = 0;
|
cache-size-mb = 0;
|
||||||
download-dir = "${vars.storage_transmission}/complete";
|
download-dir = "${vars.storage_transmission}/complete";
|
||||||
download-queue-enabled = false;
|
download-queue-enabled = false;
|
||||||
incomplete-dir = "${vars.storage_transmission}/incomplete";
|
incomplete-dir = "${vars.scratch_transmission}/incomplete";
|
||||||
incomplete-dir-enabled = true;
|
incomplete-dir-enabled = true;
|
||||||
message-level = 3;
|
message-level = 3;
|
||||||
peer-port = 51413;
|
peer-port = 51413;
|
||||||
|
|||||||
@@ -1,9 +1,10 @@
|
|||||||
let
|
let
|
||||||
zfs_media = "/zfs/media";
|
zfs_media = "/zfs/media";
|
||||||
zfs_storage = "/zfs/storage";
|
zfs_storage = "/zfs/storage";
|
||||||
|
zfs_scratch = "/zfs/scratch";
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
inherit zfs_media zfs_storage;
|
inherit zfs_media zfs_storage zfs_scratch;
|
||||||
# media
|
# media
|
||||||
media_database = "${zfs_media}/database";
|
media_database = "${zfs_media}/database";
|
||||||
media_docker = "${zfs_media}/docker";
|
media_docker = "${zfs_media}/docker";
|
||||||
@@ -23,5 +24,7 @@ in
|
|||||||
storage_library = "${zfs_storage}/library";
|
storage_library = "${zfs_storage}/library";
|
||||||
storage_qbitvpn = "${zfs_storage}/qbitvpn";
|
storage_qbitvpn = "${zfs_storage}/qbitvpn";
|
||||||
storage_transmission = "${zfs_storage}/transmission";
|
storage_transmission = "${zfs_storage}/transmission";
|
||||||
|
# scratch
|
||||||
|
scratch_qbitvpn = "${zfs_scratch}/qbitvpn";
|
||||||
|
scratch_transmission = "${zfs_scratch}/transmission";
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user