zfsreminders
Create a pool on a single drive and specify a mountpoint for it. Note: use id, not uuid.
zpool create -m /mnt/Pool Pool -f /dev/disk/by-id/b592...
If you have more than one drive to begin with, you can make mirrors as follows:
zpool create -m /mnt/Pool Pool -f mirror /dev/disy/by-id/2323... /dev/disy/by-id/3232...
If you accidentally used short names, then export and import to change it asap like this:
zpool export vms zpool import -d /dev/disk/by-id vms
If you messed up and picked a wrong name and/or mountpoint, adjust later as follows. To rename:
zpool export [pool_name] zpool import [original_pool_name] [new_pool_name]
To change mountpoint:
zfs set mountpoint=/myspecialfolder mypool
If you now have more than one drive, add another drive as a mirror as follows:
zpool attach nameofpool /dev/disk/by-id/currentdisk /dev/disk/by-id/newdisk
To create an encrypted dataset you generate a key and then specify the location and name of the pool as follows:
dd if=/dev/random of=/secure/area/example.key bs=1 count=32 zfs create -o encryption=on -o keyformat=raw -o keylocation=file:///mnt/vault/example.key pool/dataset
After reboot, import (mount), the data set as follows:
zfs load-key pool/dataset zfs mount pool/dataset
If you need to delete a dataset, do the following:
zfs destroy -r pool/dataset
To create snapshots, here is a reasonable template:
DATE=`date +"%Y%m%d-%H:%M:%S"` /usr/sbin/zfs snapshot -r pool/dataset@backup_$DATE
To delete all snapshots and start over:
zfs list -H -o name -t snapshot | xargs -n1 zfs destroy
To add a zfs cache or slog hard drive to your pool, do the following:
zpool add pool cache /dev/disk/by-id/3434... zpool add pool log /dev/disk/by-id/3434...
To view current snapshots, do the following:
zfs list -r -t snapshot -o name,creation pool/dataset zfs list -r -t snapshot -o name,creation pool
To view pool space, including snapshots, do the following:
zfs list -ro space
To replace a failed drive, power down the host, remove drive, reboot, get by-id
of the new drive, and run zpool status -v
for hard drive number of old drive, then do:
sudo zpool replace pool <hard-drive-number> /dev/disk/by-id/</dev/disk/by-id/newdrive> sudo zpool replace pool 3347762980558930904 /dev/disk/by-id/ata-WDC_WD...
To check the health, statistics, and basic specs of your pool:
zpool status -v zpool iostat -v zpool list -v
Also, to see whether cache volume is necessary, run and look at cache hit/miss ratio:
arc_summary
Change location of the keys for your encrypted datasets:
sudo zfs set keylocation=file:///keys/my.key mypool/mydataset
Send and receive entire pool to new pool
zfs snapshot -r pool1@latestsnap zfs send -R pool1@latestsnap | zfs receive -F pool2
Arc information
arcstat arc_summary -d | less nano /etc/modprobe.d/zfs.conf <# 8GB example - 8*(2^30) = below> <#options zfs zfs_arc_max=8589934592> <# Set Max ARC size => 2GB == 2147483648 Bytes> <options zfs zfs_arc_max=2147483648> <# Set Min ARC size => 1GB == 1073741824> <options zfs zfs_arc_min=1073741824> cat /sys/module/zfs/parameters/zfs_arc_min cat /sys/module/zfs/parameters/zfs_arc_max
nmap tests and other security checks
nmap -sV --script ssl-enum-ciphers -p 443 website.com nikito -h website.com wpscan --url https://notoriousslips.com --enumerate vp
— oemb1905 2024/04/21 23:12