mirror of
https://github.com/kneutron/ansitest.git
synced 2025-01-16 04:42:55 +08:00
125 lines
3.4 KiB
Bash
125 lines
3.4 KiB
Bash
#!/bin/bash
|
|
|
|
# EDIT ME 1ST!!
|
|
|
|
source ~/bin/failexit.mrg
|
|
|
|
zp=zhgstsas4
|
|
zfsuser=dave
|
|
|
|
DBI=/dev/disk/by-id
|
|
|
|
disk1=scsi-35000cca07325f6b0
|
|
disktmp=$(ls -l $DBI |grep -w $disk1 |head -n 1 |awk '{print $11}') # ../../shortdev
|
|
disk1S=${disktmp#../../} # bash inline sed; del == sdf
|
|
|
|
disk2=scsi-35000cca07321bea8
|
|
disktmp=$(ls -l $DBI |grep -w $disk2 |head -n 1 |awk '{print $11}') # ../../shortdev
|
|
disk2S=${disktmp#../../} # bash inline sed; del == sdg
|
|
|
|
#disk3=$DBI/
|
|
#disk3L=$DBI/$disk3
|
|
#disk4=$DBI/
|
|
#disk4L=$DBI/$disk4
|
|
#disk5=$DBI/
|
|
#disk5L=$DBI/$disk5
|
|
#disk6=$DBI/
|
|
#disk6L=$DBI/$disk6
|
|
|
|
# note zpool status -L # resolves to short names, e.g. sde
|
|
outfyl=/tmp/`basename $0`-checktmp.txt
|
|
zpool status -Lv > $outfyl
|
|
|
|
#[ `zpool status -v |grep -c $disk1` -gt 0 ] && failexit 101 "! $disk1 is in use by another zpool!"
|
|
[ `grep -c $disk1S $outfyl` -gt 0 ] && failexit 101 "! $disk1 is in use by another zpool!"
|
|
[ `grep -c $disk2S $outfyl` -gt 0 ] && failexit 102 "! $disk2 is in use by another zpool!"
|
|
#[ `grep -c $disk3 $outfyl` -gt 0 ] && failexit 103 "! $disk3 is in use by another zpool!"
|
|
#[ `grep -c $disk4 $outfyl` -gt 0 ] && failexit 104 "! $disk4 is in use by another zpool!"
|
|
#[ `grep -c $disk5 $outfyl` -gt 0 ] && failexit 105 "! $disk5 is in use by another zpool!"
|
|
#[ `grep -c $disk6 $outfyl` -gt 0 ] && failexit 106 "! $disk6 is in use by another zpool!"
|
|
|
|
|
|
function make1disk () {
|
|
zpool create -o ashift=12 -o autoexpand=on -O atime=off -O compression=lz4 $zp \
|
|
$disk1
|
|
}
|
|
|
|
function make2disk () {
|
|
zpool create -o ashift=12 -o autoreplace=off -o autoexpand=on -O atime=off -O compression=lz4 \
|
|
$zp \
|
|
mirror $disk1 $disk2 || failexit 99 "! Unable to create zpool $zp"
|
|
}
|
|
|
|
function make4disk () {
|
|
zpool create -o ashift=12 -o autoexpand=on -O atime=off -O compression=lz4 $zp \
|
|
mirror $disk1 $disk2 \
|
|
mirror $disk3 $disk4 || failexit 99 "! Unable to create zpool $zp"
|
|
}
|
|
|
|
function make6disk () {
|
|
zpool create -o ashift=12 -o autoexpand=on -O atime=off -O compression=lz4 $zp \
|
|
mirror $disk1 $disk2 \
|
|
mirror $disk3 $disk4 \
|
|
mirror $disk5 $disk6 || failexit 99 "! Unable to create zpool $zp"
|
|
}
|
|
|
|
# TODO more vdevs
|
|
function makerz2 () {
|
|
zpool create -o ashift=12 -o autoexpand=on -O atime=off -O compression=lz4 $zp \
|
|
raidz2 $disk1 $disk2 $disk3 $disk4 $disk5 $disk6 \
|
|
|| failexit 99 "! Unable to create zpool $zp"
|
|
}
|
|
|
|
|
|
# xxx What kind to create?
|
|
make2disk; # || failexit 202 "Failed to create $zp"
|
|
zpool status -v $zp|awk 'NF>0'
|
|
|
|
|
|
function ownlist () {
|
|
chown -v $zfsuser /$zp/$mydir
|
|
ls -la /$zp/$mydir
|
|
}
|
|
|
|
function makezdscompshare () {
|
|
zfs create -o atime=off -o compression=lz4 -o sharesmb=on $zp/$mydir
|
|
ownlist
|
|
}
|
|
|
|
function makezdsNOTcompOKshare () {
|
|
zfs create -o atime=off -o compression=off -o sharesmb=on $zp/$mydir
|
|
ownlist
|
|
}
|
|
|
|
function makezdsOKcompNOTshare () {
|
|
zfs create -o atime=off -o compression=lz4 -o sharesmb=off $zp/$mydir
|
|
ownlist
|
|
}
|
|
|
|
function makezdsNOTcompNOTshare () {
|
|
zfs create -o atime=off -o compression=off -o sharesmb=off $zp/$mydir
|
|
ownlist
|
|
}
|
|
|
|
mydir=shrcompr; makezdscompshare $mydir
|
|
|
|
mydir=notshrcompr; makezdsOKcompNOTshare $mydir
|
|
|
|
mydir=notshrnotcompr; makezdsNOTcompNOTshare $mydir
|
|
|
|
|
|
# Custom
|
|
mydir=BURNME-shrcompr; makezdsOKcompOKshare $mydir
|
|
|
|
|
|
df -hT |head -n 1
|
|
df -hT |grep $zp
|
|
|
|
exit;
|
|
|
|
FIXED with head
|
|
grep: ../../sdg1: No such file or directory
|
|
/root/bin/boojum/newzfs-pool-n-datasets.sh: line 35: [: /tmp/newzfs-pool-n-datasets.sh-checktmp.txt:0: integer expression expected
|
|
|
|
DONE check 'zpool status' and see if drive(s) are already in use!!
|