diff options
author | Renato Botelho <renato@netgate.com> | 2015-07-27 17:05:05 -0300 |
---|---|---|
committer | Renato Botelho <renato@netgate.com> | 2015-07-27 17:05:05 -0300 |
commit | 31e66b412d52cf40aa5a8cb4e050c9f176cdf4e0 (patch) | |
tree | c8322c322005b7aab9310909815311aec1f19a21 | |
parent | f8948f8637756d55642b9adabe9e8d7923ac98ff (diff) | |
download | pfsense-31e66b412d52cf40aa5a8cb4e050c9f176cdf4e0.zip pfsense-31e66b412d52cf40aa5a8cb4e050c9f176cdf4e0.tar.gz |
Move cleargpt.sh and cleargmirror.sh scripts to main repo
-rwxr-xr-x | usr/local/sbin/cleargmirror.sh | 26 | ||||
-rwxr-xr-x | usr/local/sbin/cleargpt.sh | 13 |
2 files changed, 39 insertions, 0 deletions
diff --git a/usr/local/sbin/cleargmirror.sh b/usr/local/sbin/cleargmirror.sh new file mode 100755 index 0000000..a00cc93 --- /dev/null +++ b/usr/local/sbin/cleargmirror.sh @@ -0,0 +1,26 @@ +#!/bin/sh + +clear_disk() { + local _disk="${1}" + local _mirror=$(/sbin/gmirror dump ${_disk} 2>/dev/null | sed '/name: /!d; s,^.*: ,,') + + if [ -n "${_mirror}" ]; then + /sbin/gmirror destroy -f ${_mirror} >/dev/null 2>&1 + fi + /sbin/gmirror clear ${_disk} >/dev/null 2>&1 +} + +mirror="${1}" +disk1="${2}" +disk2="${3}" + +if [ -z "${mirror}" -o -z "${disk1}" -o -z "${disk2}" ]; then + echo "You must specify mirror name, and disks that should be cleared" + exit 1 +fi + +/sbin/gmirror destroy -f ${mirror} >/dev/null 2>&1 +clear_disk ${disk1} +clear_disk ${disk2} + +exit 0 diff --git a/usr/local/sbin/cleargpt.sh b/usr/local/sbin/cleargpt.sh new file mode 100755 index 0000000..07d530a --- /dev/null +++ b/usr/local/sbin/cleargpt.sh @@ -0,0 +1,13 @@ +#!/bin/sh +DISK=$1 +if [ "$DISK" = "" ]; then + echo "You must specify the disk that should be formatted/cleared." + exit 1 +fi +for PART in `/sbin/gpart show $DISK | grep -v '=>' | awk '{ print $3 }'`; do + if [ "$PART" != "" ]; then + /sbin/gpart delete -i $PART $DISK >/dev/null + fi +done +/sbin/gpart destroy $DISK >/dev/null +exit 0 |