68 lines
2.1 KiB
Bash
Executable File
68 lines
2.1 KiB
Bash
Executable File
#!/bin/sh
|
|
# .. vim: foldmarker=[[[,]]]:foldmethod=marker
|
|
|
|
# {{ ansible_managed | comment }}
|
|
|
|
# Colors definition [[[
|
|
BLACK='\033[49;30m'
|
|
BLACKB='\033[49;90m'
|
|
RED='\033[0;31m'
|
|
REDB='\033[1;31m'
|
|
GREEN='\033[0;32m'
|
|
YELLOW='\033[0;33m'
|
|
BLUE='\033[94;49m'
|
|
MAGENTA='\033[0;35m'
|
|
CYAN='\033[36;49m'
|
|
WHITE='\033[0;37m'
|
|
BOLD='\033[1m'
|
|
RESET='\033[0m'
|
|
# ]]]
|
|
# Vars definition [[[
|
|
ROOT_PART_USAGE=$(df --local | grep -m1 "/$" | awk '{print $5}')
|
|
# ]]]
|
|
|
|
#+++++++++++++++++++: Disk Usage :+++++++++++++++++++
|
|
printf '%b' "${RESET}"
|
|
printf "${BLACKB}%33s${RESET}" | tr ' ' -
|
|
printf '%b' " ${CYAN}Disk Usage${RESET} "
|
|
printf "${BLACKB}%34s${RESET}\\n" | tr ' ' -
|
|
|
|
# Root partition
|
|
## Replaced by rootfs in few kernel version
|
|
PRINTF_ROOT_NAME=$(printf '%-22s' "/")
|
|
printf '%b' "${BLACKB}+ ${WHITE}${PRINTF_ROOT_NAME}${RESET}${BLACKB}= ${CYAN}${ROOT_PART_USAGE}${RESET}\\n"
|
|
|
|
# Other partition
|
|
for PART_NAME in /boot /home /opt /srv /tmp /tmp /usr /var /var/lib/docker /var/lib/vz; do
|
|
## "/...$" : $ to grep only the mount point and not sub-directories (/var: OK; /mnt/temp: nOK)
|
|
if (df --local | grep "${PART_NAME}$" > /dev/null); then
|
|
PART_USAGE=$(df --local | grep "${PART_NAME}$" | awk '{print $5}')
|
|
PRINTF_PART_NAME=$(printf '%-22s' "${PART_NAME}")
|
|
printf '%b' "${BLACKB}+ ${WHITE}${PRINTF_PART_NAME}${RESET}${BLACKB}= ${CYAN}${PART_USAGE}${RESET}\\n"
|
|
fi
|
|
done
|
|
|
|
## IF ZFS [[[
|
|
#+++++++++++++++++++: ZFS Usage :+++++++++++++++++++
|
|
if [ "$(command -v zpool)" ]; then
|
|
printf '%b' "${RESET}"
|
|
printf "${BLACKB}%32s${RESET}" | tr ' ' -
|
|
printf '%b' " ${CYAN}${BOLD}ZFS${RESET} ${CYAN}Partition${RESET} "
|
|
printf "${BLACKB}%33s${RESET}\\n" | tr ' ' -
|
|
|
|
NUMBER_PART=$(df --local --print-type | grep -c zfs)
|
|
LINE=1
|
|
|
|
while [ "${LINE}" -le "${NUMBER_PART}" ]; do
|
|
DISK_USAGE=$(df --local --print-type | grep zfs | sed -n "${LINE},${LINE}p" | awk '{print $6}')
|
|
PART_NAME=$(df --local --print-type | grep zfs | sed -n "${LINE},${LINE}p" | awk '{print $1}')
|
|
PRINTF_PART_NAME=$(printf '%-23s' "${PART_NAME}")
|
|
printf '%b' "${BLACKB}+ ${WHITE}${PRINTF_PART_NAME}${RESET} ${CYAN}${DISK_USAGE}${RESET}\\n"
|
|
LINE=$((LINE+1))
|
|
# Bash ONLY: (( LINE++ ))
|
|
done
|
|
fi
|
|
## FI ZFS ]]]
|
|
|
|
printf '%b' "${RESET}"
|