Add automatiion script for creating backup disks
This commit is contained in:
parent
57223d02ac
commit
90df3c62aa
@ -18,6 +18,24 @@ let
|
||||
${pkgs.cryptsetup}/bin/cryptsetup luksClose external-drive
|
||||
'';
|
||||
|
||||
cb-prepare = pkgs.writeScriptBin "cb-prepare" ''
|
||||
echo "Formatting disk"
|
||||
sgdisk -Z /dev/disk/by-path/pci-0000:00:12.0-ata-2
|
||||
sgdisk -N 1 /dev/disk/by-path/pci-0000:00:12.0-ata-2
|
||||
partprobe /dev/disk/by-path/pci-0000:00:12.0-ata-2
|
||||
|
||||
echo "Creating encrypted partition"
|
||||
${pkgs.cryptsetup}/bin/cryptsetup luksFormat -c aes-xts-plain64 --hash=sha256 -s 256 /dev/disk/by-path/pci-0000:00:12.0-ata-2-part1
|
||||
|
||||
echo "Opening encrypted partition"
|
||||
${pkgs.cryptsetup}/bin/cryptsetup luksOpen /dev/disk/by-path/pci-0000:00:12.0-ata-2-part1 external-drive
|
||||
|
||||
echo "Creating file system"
|
||||
mkfs.ext4 /dev/mapper/external-drive
|
||||
|
||||
echo "Closing encrypted partition"
|
||||
${pkgs.cryptsetup}/bin/cryptsetup luksClose external-drive
|
||||
'';
|
||||
in {
|
||||
environment.systemPackages = [ cb-mount cb-unmount ];
|
||||
environment.systemPackages = [ cb-mount cb-unmount cb-prepare ];
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user