forked from evolix/ansible-roles
evolinux-base: backup-server-state: add disks and uname state
This commit is contained in:
parent
6dc17658a9
commit
519228ff9f
|
@ -2,7 +2,7 @@
|
|||
|
||||
PROGNAME="backup-server-state"
|
||||
|
||||
VERSION="22.01"
|
||||
VERSION="22.01.1"
|
||||
readonly VERSION
|
||||
|
||||
backup_dir=
|
||||
|
@ -57,6 +57,8 @@ Options
|
|||
--no-virsh no backup copy of virsh list
|
||||
--lxc backup copy of lxc list (default)
|
||||
--no-lxc no backup copy of lxc list
|
||||
--disks backup copy of MBR and partitions (default)
|
||||
--no-disks no backup copy of MBR and partitions
|
||||
--mount backup copy of mount points (default)
|
||||
--no-mount no backup copy of mount points
|
||||
--df backup copy of disk usage (default)
|
||||
|
@ -272,6 +274,21 @@ backup_packages() {
|
|||
fi
|
||||
}
|
||||
|
||||
backup_uname() {
|
||||
debug "Backup uname"
|
||||
|
||||
last_result=$(uname -a > "${backup_dir}/uname.txt")
|
||||
last_rc=$?
|
||||
|
||||
if [ ${last_rc} -eq 0 ]; then
|
||||
debug "* uname OK"
|
||||
else
|
||||
debug "* uname ERROR"
|
||||
debug "${last_result}"
|
||||
rc=10
|
||||
fi
|
||||
}
|
||||
|
||||
backup_uptime() {
|
||||
debug "Backup uptime"
|
||||
|
||||
|
@ -505,6 +522,57 @@ backup_lxc() {
|
|||
fi
|
||||
}
|
||||
|
||||
backup_disks() {
|
||||
debug "Backup disks"
|
||||
|
||||
lsblk_bin=$(command -v lsblk)
|
||||
awk_bin=$(command -v awk)
|
||||
|
||||
if [ -n "${lsblk_bin}" ] && [ -n "${awk_bin}" ]; then
|
||||
disks=$(${lsblk_bin} -l | grep disk | grep -v -E '(drbd|fd[0-9]+)' | ${awk_bin} '{print $1}')
|
||||
for disk in ${disks}; do
|
||||
dd_bin=$(command -v dd)
|
||||
if [ -n "${dd_bin}" ]; then
|
||||
last_result=$(${dd_bin} if="/dev/${disk}" of="${backup_dir}/MBR-${disk}" bs=512 count=1 2>&1)
|
||||
last_rc=$?
|
||||
|
||||
if [ ${last_rc} -eq 0 ]; then
|
||||
debug "* dd ${disk} OK"
|
||||
else
|
||||
debug "* dd ${disk} ERROR"
|
||||
debug "${last_result}"
|
||||
rc=10
|
||||
fi
|
||||
else
|
||||
debug "* dd not found"
|
||||
fi
|
||||
fdisk_bin=$(command -v fdisk)
|
||||
if [ -n "${fdisk_bin}" ]; then
|
||||
last_result=$(${fdisk_bin} -l "/dev/${disk}" > "${backup_dir}/partitions-${disk}" 2>&1)
|
||||
last_rc=$?
|
||||
|
||||
if [ ${last_rc} -eq 0 ]; then
|
||||
debug "* fdisk ${disk} OK"
|
||||
else
|
||||
debug "* fdisk ${disk} ERROR"
|
||||
debug "${last_result}"
|
||||
rc=10
|
||||
fi
|
||||
else
|
||||
debug "* fdisk not found"
|
||||
fi
|
||||
done
|
||||
cat "${backup_dir}"/partitions-* > "${backup_dir}/partitions"
|
||||
else
|
||||
if [ -n "${lsblk_bin}" ]; then
|
||||
debug "* lsblk not found"
|
||||
fi
|
||||
if [ -n "${awk_bin}" ]; then
|
||||
debug "* awk not found"
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
backup_mount() {
|
||||
debug "Backup mount points"
|
||||
|
||||
|
@ -666,6 +734,9 @@ main() {
|
|||
if [ "${DO_UPTIME}" -eq 1 ]; then
|
||||
backup_uptime
|
||||
fi
|
||||
if [ "${DO_UNAME}" -eq 1 ]; then
|
||||
backup_uname
|
||||
fi
|
||||
if [ "${DO_NETSTAT}" -eq 1 ]; then
|
||||
backup_netstat
|
||||
fi
|
||||
|
@ -684,6 +755,9 @@ main() {
|
|||
if [ "${DO_LXC}" -eq 1 ]; then
|
||||
backup_lxc
|
||||
fi
|
||||
if [ "${DO_DISKS}" -eq 1 ]; then
|
||||
backup_disks
|
||||
fi
|
||||
if [ "${DO_MOUNT}" -eq 1 ]; then
|
||||
backup_mount
|
||||
fi
|
||||
|
@ -797,6 +871,13 @@ while :; do
|
|||
DO_UPTIME=0
|
||||
;;
|
||||
|
||||
--uname)
|
||||
DO_UNAME=1
|
||||
;;
|
||||
--no-uname)
|
||||
DO_UNAME=0
|
||||
;;
|
||||
|
||||
--netstat)
|
||||
DO_NETSTAT=1
|
||||
;;
|
||||
|
@ -839,6 +920,13 @@ while :; do
|
|||
DO_LXC=0
|
||||
;;
|
||||
|
||||
--disks)
|
||||
DO_DISKS=1
|
||||
;;
|
||||
--no-disks)
|
||||
DO_DISKS=0
|
||||
;;
|
||||
|
||||
--mount)
|
||||
DO_MOUNT=1
|
||||
;;
|
||||
|
@ -902,6 +990,7 @@ done
|
|||
: "${DO_APT_CONFIG:=1}"
|
||||
: "${DO_PACKAGES:=1}"
|
||||
: "${DO_PROCESSES:=1}"
|
||||
: "${DO_UNAME:=1}"
|
||||
: "${DO_UPTIME:=1}"
|
||||
: "${DO_NETSTAT:=1}"
|
||||
: "${DO_NETCFG:=1}"
|
||||
|
@ -909,6 +998,7 @@ done
|
|||
: "${DO_SYSCTL:=1}"
|
||||
: "${DO_VIRSH:=1}"
|
||||
: "${DO_LXC:=1}"
|
||||
: "${DO_DISKS:=1}"
|
||||
: "${DO_MOUNT:=1}"
|
||||
: "${DO_DF:=1}"
|
||||
: "${DO_DMESG:=1}"
|
||||
|
|
Loading…
Reference in a new issue