check_webservice_load.sh: don't start/stop services if package management (apt,dpkg,..) ist running.
This commit is contained in:
parent
29d0cf6562
commit
66ad72af4c
107
check_postfix.sh
107
check_postfix.sh
@ -82,6 +82,35 @@ ok (){
|
||||
echo ""
|
||||
}
|
||||
|
||||
detect_os () {
|
||||
|
||||
if $(which lsb_release > /dev/null 2>&1) ; then
|
||||
|
||||
os_dist="$(lsb_release -i | awk '{print tolower($3)}')"
|
||||
os_version="$(lsb_release -r | awk '{print tolower($2)}')"
|
||||
os_codename="$(lsb_release -c | awk '{print tolower($2)}')"
|
||||
|
||||
if [[ "$os_dist" = "debian" ]]; then
|
||||
if $(echo "$os_version" | grep -q '\.') ; then
|
||||
os_version=$(echo "$os_version" | cut --delimiter='.' -f1)
|
||||
fi
|
||||
fi
|
||||
|
||||
elif [[ -e "/etc/os-release" ]]; then
|
||||
|
||||
. /etc/os-release
|
||||
|
||||
os_dist=$ID
|
||||
os_version=${VERSION_ID}
|
||||
|
||||
fi
|
||||
|
||||
# remove whitespace from os_dist and os_version
|
||||
os_dist="${os_dist// /}"
|
||||
os_version="${os_version// /}"
|
||||
|
||||
}
|
||||
|
||||
trim() {
|
||||
local var="$*"
|
||||
var="${var#"${var%%[![:space:]]*}"}" # remove leading whitespace characters
|
||||
@ -124,6 +153,10 @@ else
|
||||
fi
|
||||
fi
|
||||
|
||||
# - Detect linux distribution
|
||||
# -
|
||||
detect_os
|
||||
|
||||
|
||||
#---------------------------------------
|
||||
#-----------------------------
|
||||
@ -138,31 +171,73 @@ fi
|
||||
if ! ps -e f | grep -E "[[:digit:]]\ ${check_string_ps}" | grep -v grep > /dev/null ; then
|
||||
error "Postfix Mailservice seems to be down! Trying to restart service now.."
|
||||
|
||||
|
||||
if $systemd_supported ; then
|
||||
$systemctl daemon-reload > /dev/null 2> ${LOCK_DIR}/err_msg.log
|
||||
if [[ $? -ne 0 ]]; then
|
||||
error "$(cat ${LOCK_DIR}/err_msg.log)"
|
||||
fi
|
||||
sleep 2
|
||||
$systemctl stop postfix > /dev/null 2> ${LOCK_DIR}/err_msg.log
|
||||
if [[ $? -ne 0 ]]; then
|
||||
error "$(cat ${LOCK_DIR}/err_msg.log)"
|
||||
fi
|
||||
sleep 10
|
||||
$systemctl start postfix > /dev/null 2> ${LOCK_DIR}/err_msg.log
|
||||
if [[ $? -ne 0 ]]; then
|
||||
error "$(cat ${LOCK_DIR}/err_msg.log)"
|
||||
|
||||
# - Don't Start/Stop Services if package management is running (apt,aptitude,dpkg)
|
||||
# -
|
||||
if [[ "${os_dist,,}" = "debian" ]] || [[ "${os_dist,,}" = "ubuntu" ]] ; then
|
||||
if $(lsof /var/lib/dpkg/lock >/dev/null 2>&1) ; then
|
||||
warn "It seems that package management (apt,dpkg) is running. Exiting restarting the service .."
|
||||
else
|
||||
$systemctl stop postfix > /dev/null 2> ${LOCK_DIR}/err_msg.log
|
||||
if [[ $? -ne 0 ]]; then
|
||||
error "$(cat ${LOCK_DIR}/err_msg.log)"
|
||||
fi
|
||||
|
||||
sleep 10
|
||||
|
||||
# - Don't Start/Stop Services if package management is running (apt,aptitude,dpkg)
|
||||
# -
|
||||
if [[ "${os_dist,,}" = "debian" ]] || [[ "${os_dist,,}" = "ubuntu" ]] ; then
|
||||
if $(lsof /var/lib/dpkg/lock >/dev/null 2>&1) ; then
|
||||
warn "It seems that package management (apt,dpkg) is running. Omit starting the service .."
|
||||
else
|
||||
$systemctl start postfix > /dev/null 2> ${LOCK_DIR}/err_msg.log
|
||||
if [[ $? -ne 0 ]]; then
|
||||
error "$(cat ${LOCK_DIR}/err_msg.log)"
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
else
|
||||
$postfix_init_script stop > /dev/null 2>&1
|
||||
if [[ $? -ne 0 ]]; then
|
||||
error "Stopping Postfix Mailservice failed!"
|
||||
fi
|
||||
sleep 10
|
||||
$postfix_init_script start > /dev/null 2>&1
|
||||
if [[ $? -ne 0 ]]; then
|
||||
error "Starting Postfix Mailservice failed!"
|
||||
|
||||
# - Don't Start/Stop Services if package management is running (apt,aptitude,dpkg)
|
||||
# -
|
||||
if [[ "${os_dist,,}" = "debian" ]] || [[ "${os_dist,,}" = "ubuntu" ]] ; then
|
||||
if $(lsof /var/lib/dpkg/lock >/dev/null 2>&1) ; then
|
||||
warn "It seems that package management (apt,dpkg) is running - Exiting restarting the service .."
|
||||
else
|
||||
$postfix_init_script stop > /dev/null 2>&1
|
||||
if [[ $? -ne 0 ]]; then
|
||||
error "Stopping Postfix Mailservice failed!"
|
||||
fi
|
||||
|
||||
sleep 10
|
||||
|
||||
# - Don't Start/Stop Services if package management is running (apt,aptitude,dpkg)
|
||||
# -
|
||||
if [[ "${os_dist,,}" = "debian" ]] || [[ "${os_dist,,}" = "ubuntu" ]] ; then
|
||||
if $(lsof /var/lib/dpkg/lock >/dev/null 2>&1) ; then
|
||||
warn "It seems that package management (apt,dpkg) is running. Omit starting the service .."
|
||||
else
|
||||
$postfix_init_script start > /dev/null 2>&1
|
||||
if [[ $? -ne 0 ]]; then
|
||||
error "Starting Postfix Mailservice failed!"
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
fi
|
||||
fi
|
||||
|
||||
fi
|
||||
|
||||
declare -i counter=0
|
||||
|
Loading…
Reference in New Issue
Block a user