Come creare un watchdog per Cups

Cerca

In questo scenario ci troviamo su una macchina Linux in cui abbiamo bisogno di monitorare lo stato di Cups e, in caso di crash del servizio, riavviarlo.

Per raggiungere questo scopo si possono seguire vari approcci. In questo articolo ne illustriamo uno, che non è il migliore, ma è sufficientemente efficace. Seguiranno aggiornamenti in cui illustrerò gli altri approcci.

Metodo del loop infinito di controllo

Questo approccio è piuttosto minimalista, ma con il quale si ottiene un comportamento simile ad un watchdog.

				
					#!/bin/bash
# /usr/local/bin/cups-watchdog-light.sh
LOGFILE="/var/log/cups-watchdog.log"
SLEEP=30
echo "$(date '+%Y-%m-%d %H:%M:%S') - Watchdog avviato" >> "$LOGFILE"
while true; do
    if ! pidof cupsd >/dev/null 2>&1; then
        echo "$(date '+%Y-%m-%d %H:%M:%S') - CUPS non attivo, riavvio..." >> "$LOGFILE"
        /etc/init.d/cups restart >>"$LOGFILE" 2>&1
    fi
    sleep "$SLEEP"
done

				
			

Lo script è semplice. Abbiamo:

  • Loop infinito con uno sleep parametrizzabile impostato a 30 secondi
  • Controllo dell’esistenza di un processo cupsd
  • In caso di assenza di un processo cupsd, tracciatura nel log e riavvio del servizio

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Questo sito utilizza Akismet per ridurre lo spam. Scopri come vengono elaborati i dati derivati dai commenti.

Most Recent

Come creare un watchdog per Cups

In questo scenario ci troviamo su una macchina Linux in cui abbiamo bisogno di monitorare lo stato di Cups e, in caso di crash del

Come eseguire unban di un IP su fail2ban

Se per disgrazia il nostro indirizzo IP da cui ci colleghiamo al nostro server è stato bannato da fail2ban, seguiamo questa guida per ripristinarlo in

Partners