0Pricing
Linux Command Line & Bash Scripting Mastery · Lezione

Automazione dell’amministrazione di sistema

Applichi lo scripting Bash per automatizzare attività comuni di amministrazione di sistema, come backup, rotazione dei log e monitoraggio.

Automazione dell’amministrazione di sistema è una lezione Linux Command Line & Bash Scripting Mastery gratuita su CoddyKit. Questa è la lezione 2 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento Linux Command Line & Bash Scripting Mastery, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso Linux Command Line & Bash Scripting Mastery include 4 lezioni in totale.

Introduzione all'automazione dell'amministrazione di sistema

Benvenuto! In questa lezione ci immergeremo nell'automazione delle attività comuni di amministrazione del sistema usando script Bash. È qui che le sue competenze di scripting danno davvero il meglio!

L'automazione rende la gestione dei sistemi più efficiente e coerente, riducendo la probabilità di errori umani. È una competenza fondamentale per qualsiasi sviluppatore o professionista IT.

Perché automatizzare le attività di amministrazione del sistema?

L'automazione delle attività ripetitive offre vantaggi significativi:

  • Efficienza: le attività vengono eseguite più rapidamente e senza intervento manuale.
  • Coerenza: garantisce che le attività vengano eseguite nello stesso modo ogni volta, riducendo gli errori.
  • Affidabilità: gli script possono essere pianificati per essere eseguiti in modo affidabile, anche quando non è presente.
  • Scalabilità: consente di applicare facilmente le stesse operazioni a numerosi sistemi.

Obiettivi comuni dell'automazione

Molte attività di amministrazione del sistema sono candidate ideali per l'automazione:

  • Backup: copia regolare dei dati importanti.
  • Gestione dei log: eliminazione o rotazione dei log obsoleti.
  • Monitoraggio del sistema: controllo dello spazio su disco e dell'utilizzo di CPU e memoria.
  • Gestione degli utenti: creazione o eliminazione degli account utente.
  • Aggiornamenti software: mantenimento dei pacchetti aggiornati.

Creare uno script di backup semplice

Una delle attività più importanti è il backup dei dati. Uno script di backup di base può copiare file o directory specifici in una posizione sicura, spesso aggiungendo un timestamp.

Possiamo usare il comando cp insieme al comando date per creare directory di backup univoche.

Esecuzione: backup giornaliero dei dati

Questo script crea un backup con timestamp della directory 'my_data' all'interno della cartella 'backups'. Ricordi di sostituire /path/to/my_data con una directory reale del sistema per poterlo testare.

#!/bin/bash

SOURCE_DIR="/tmp/my_data"
BACKUP_DIR="/tmp/backups"
TIMESTAMP=$(date +%Y%m%d_%H%M%S)

mkdir -p "$SOURCE_DIR"
echo "Hello from CoddyKit!" > "$SOURCE_DIR/file1.txt"
echo "More data." > "$SOURCE_DIR/file2.txt"

mkdir -p "$BACKUP_DIR"

# Perform the backup
cp -r "$SOURCE_DIR" "$BACKUP_DIR/backup_$TIMESTAMP"

echo "Backup created at: $BACKUP_DIR/backup_$TIMESTAMP"

Automatizzare la pulizia dei log

I file di log crescono rapidamente e possono consumare una quantità significativa di spazio su disco. Automatizzarne la pulizia o la rotazione è essenziale per la salute del sistema.

Possiamo usare il comando find per individuare i file di log obsoleti ed eliminarli oppure spostarli in un archivio.

Esecuzione: rimozione dei log obsoleti

Questo script elimina da una directory specificata i file di log più vecchi di 7 giorni. Presti attenzione quando usa rm negli script reali!

#!/bin/bash

LOG_DIR="/tmp/app_logs"

mkdir -p "$LOG_DIR"
touch "$LOG_DIR/today.log"
touch -d "8 days ago" "$LOG_DIR/old_log_1.log"
touch -d "5 days ago" "$LOG_DIR/recent.log"
touch -d "10 days ago" "$LOG_DIR/old_log_2.log"

echo "Logs before cleanup:"
ls -l "$LOG_DIR"

# Find and delete log files older than 7 days
find "$LOG_DIR" -type f -name "*.log" -mtime +7 -delete

echo "\nLogs after cleanup:"
ls -l "$LOG_DIR"

Monitorare l'utilizzo del disco

Monitorare le risorse del sistema, come lo spazio su disco, è fondamentale per prevenire interruzioni del servizio. Uno script può controllare periodicamente l'utilizzo e avvisarla se supera una soglia.

Il comando df restituisce informazioni sull'utilizzo dello spazio su disco dei filesystem. Possiamo analizzarne l'output per ottenere solo la percentuale.

Esecuzione: avviso sullo spazio su disco

Questo script controlla l'utilizzo del filesystem radice (/) e stampa un avviso se supera l'80%. Può modificare THRESHOLD.

#!/bin/bash

THRESHOLD=80

# Get disk usage percentage for root filesystem
USAGE=$(df -h / | awk 'NR==2 {print $5}' | sed 's/%//')

# Check if usage exceeds threshold
if (( USAGE > THRESHOLD )); then
  echo "WARNING: Disk usage on / is at ${USAGE}%!"
else
  echo "Disk usage on / is ${USAGE}%. All good!"
fi

Best practice per gli script di amministrazione del sistema

Quando scrive script di automazione, consideri queste best practice:

  • Gestione degli errori: usi set -e per uscire in caso di errore e aggiunga controlli espliciti.
  • Logging: reindirizzi l'output dello script verso file di log per attività di audit e debugging.
  • Idempotenza: progetti gli script in modo che eseguirli più volte produca lo stesso effetto di una sola esecuzione.
  • Configurazione: usi variabili o file di configurazione separati per i valori che cambiano facilmente.
  • Permessi: verifichi che gli script dispongano dei corretti permessi di esecuzione (chmod +x).

Verifica dell'automazione dell'amministrazione del sistema

Quali delle seguenti attività sono buone candidate per l'automazione tramite script Bash nell'amministrazione del sistema?

Riepilogo: automazione dell'amministrazione del sistema

Ottimo lavoro! Ha imparato come lo scripting Bash possa trasformare le attività di amministrazione del sistema.

Abbiamo trattato l'automazione dei backup, la pulizia dei log e il monitoraggio dell'utilizzo del disco. Ricordi di applicare best practice come la gestione degli errori e il logging per creare script di automazione robusti e affidabili.

Queste competenze sono preziose per mantenere sistemi efficienti e in buona salute!

Domande Frequenti

La lezione «Automazione dell’amministrazione di sistema» è gratuita?

Sì — il testo completo di «Automazione dell’amministrazione di sistema» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso Linux Command Line & Bash Scripting Mastery, passa a CoddyKit PRO. Il corso Linux Command Line & Bash Scripting Mastery include 4 lezioni in totale.

Cosa imparerò in «Automazione dell’amministrazione di sistema»?

Applichi lo scripting Bash per automatizzare attività comuni di amministrazione di sistema, come backup, rotazione dei log e monitoraggio. Eserciti Linux Command Line & Bash Scripting Mastery con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.

Ho bisogno di esperienza per iniziare Linux Command Line & Bash Scripting Mastery?

Non è richiesta alcuna esperienza precedente. Linux Command Line & Bash Scripting Mastery su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 2 di 4.

Quanto tempo richiede la lezione «Automazione dell’amministrazione di sistema»?

La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.

Posso scrivere ed eseguire codice in questa lezione Linux Command Line & Bash Scripting Mastery?

Sì. Ogni lezione Linux Command Line & Bash Scripting Mastery include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.

Tutte le lezioni di questo corso

  1. Pianificazione delle attività con Cron
  2. Automazione dell’amministrazione di sistema
  3. Progetto di scripting avanzato
  4. Rotazione e pulizia automatizzate dei log
← Torna a Linux Command Line & Bash Scripting Mastery