Compare commits
2 Commits
main
...
feature_br
| Author | SHA1 | Date | |
|---|---|---|---|
| 83f989f68d | |||
| 534e1da78b |
1
about.html
Normal file
1
about.html
Normal file
@@ -0,0 +1 @@
|
|||||||
|
About file.
|
||||||
@@ -1,25 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
|
|
||||||
|
|
||||||
# Check to make sure the user has entered exactly two arguments.
|
|
||||||
if [ $# -ne 2 ]
|
|
||||||
then
|
|
||||||
echo "Usage backup.sh <source_directory> <target_directory>"
|
|
||||||
echo "Please try again."
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Check to see if rsync is installed
|
|
||||||
if ! command -v rsync > /dev/null 2>&1
|
|
||||||
then
|
|
||||||
echo "This script requires rsync to be installed."
|
|
||||||
echo "Please use your distribution's package manager to install and try again."
|
|
||||||
exit 2
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Capture the current date and store it to the format YYYY-MM-DD
|
|
||||||
current_date=$(date +%Y-%m-%d_%H-%M-%S)
|
|
||||||
|
|
||||||
rsync_options="-avb --backup-dir $2/$current_date --delete "
|
|
||||||
|
|
||||||
$(which rsync) $rsync_options $1 $2/current >> backup_$current_date.log
|
|
||||||
@@ -1,380 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
|
|
||||||
# =============================================================================
|
|
||||||
# COLECȚIE DE SCRIPTURI BASH
|
|
||||||
# Exemple practice cu explicații pentru învățare
|
|
||||||
# =============================================================================
|
|
||||||
|
|
||||||
echo "Alege un script pentru a-l rula:"
|
|
||||||
echo "1. Monitor disk space (verificare spațiu)"
|
|
||||||
echo "2. Backup automat fișiere"
|
|
||||||
echo "3. Verificare status servere"
|
|
||||||
echo "4. Curățare fișiere vechi"
|
|
||||||
echo "5. Calculator simplu"
|
|
||||||
echo "6. Monitor procese"
|
|
||||||
echo ""
|
|
||||||
read -p "Alege opțiunea (1-6): " optiune
|
|
||||||
|
|
||||||
case $optiune in
|
|
||||||
1)
|
|
||||||
# =============================================================================
|
|
||||||
# SCRIPT 1: MONITOR DISK SPACE
|
|
||||||
# Verifică spațiul pe disk și avertizează dacă e plin
|
|
||||||
# CONCEPTE: while loop, if-else, aritmetică
|
|
||||||
# =============================================================================
|
|
||||||
|
|
||||||
echo ""
|
|
||||||
echo "=== MONITOR SPAȚIU DISK ==="
|
|
||||||
echo ""
|
|
||||||
|
|
||||||
# Setează pragul de alertă (în procente)
|
|
||||||
PRAG_ALERTA=80
|
|
||||||
|
|
||||||
# df = disk free (afișează spațiul pe disk)
|
|
||||||
# -h = human readable (MB, GB în loc de bytes)
|
|
||||||
# awk = procesare text (extrage coloane)
|
|
||||||
|
|
||||||
echo "Verificare partitii..."
|
|
||||||
echo ""
|
|
||||||
|
|
||||||
# while read = citește linie cu linie
|
|
||||||
# IFS= păstrează spațiile
|
|
||||||
df -h | grep -E '^/dev/' | while read linie; do
|
|
||||||
# Extrage utilizarea (coloana 5, ex: 45%)
|
|
||||||
utilizare=$(echo $linie | awk '{print $5}' | sed 's/%//')
|
|
||||||
partitie=$(echo $linie | awk '{print $1}')
|
|
||||||
punct_montare=$(echo $linie | awk '{print $6}')
|
|
||||||
|
|
||||||
echo "Partitie: $partitie ($punct_montare)"
|
|
||||||
echo "Utilizare: $utilizare%"
|
|
||||||
|
|
||||||
# Compară numerele (utilizare cu pragul)
|
|
||||||
if [ $utilizare -gt $PRAG_ALERTA ]; then
|
|
||||||
echo "⚠️ ALERTA! Spatiu critic!"
|
|
||||||
else
|
|
||||||
echo "✓ OK"
|
|
||||||
fi
|
|
||||||
echo ""
|
|
||||||
done
|
|
||||||
;;
|
|
||||||
|
|
||||||
2)
|
|
||||||
# =============================================================================
|
|
||||||
# SCRIPT 2: BACKUP AUTOMAT
|
|
||||||
# Creează backup pentru un director specificat
|
|
||||||
# CONCEPTE: funcții, date, comprimare, validare input
|
|
||||||
# =============================================================================
|
|
||||||
|
|
||||||
echo ""
|
|
||||||
echo "=== BACKUP AUTOMAT ==="
|
|
||||||
echo ""
|
|
||||||
|
|
||||||
# Funcție pentru backup
|
|
||||||
# Funcțiile fac codul reutilizabil
|
|
||||||
face_backup() {
|
|
||||||
local sursa=$1
|
|
||||||
local destinatie=$2
|
|
||||||
local data=$(date +%Y%m%d_%H%M%S)
|
|
||||||
local nume_backup="backup_${data}.tar.gz"
|
|
||||||
|
|
||||||
echo "Creez backup pentru: $sursa"
|
|
||||||
echo "Destinatie: $destinatie/$nume_backup"
|
|
||||||
|
|
||||||
# tar = arhivare fișiere
|
|
||||||
# -czf = compress (gzip), create, file
|
|
||||||
tar -czf "$destinatie/$nume_backup" "$sursa" 2>/dev/null
|
|
||||||
|
|
||||||
if [ $? -eq 0 ]; then
|
|
||||||
echo "✓ Backup creat cu succes!"
|
|
||||||
echo "Dimensiune: $(du -h "$destinatie/$nume_backup" | cut -f1)"
|
|
||||||
else
|
|
||||||
echo "✗ Eroare la crearea backup-ului"
|
|
||||||
return 1
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
# Exemplu de utilizare
|
|
||||||
read -p "Introdu directorul pentru backup (ex: /home/user/documente): " dir_sursa
|
|
||||||
|
|
||||||
if [ ! -d "$dir_sursa" ]; then
|
|
||||||
echo "Eroare: Directorul nu există!"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
read -p "Director destinatie backup (ex: /home/user/backups): " dir_dest
|
|
||||||
|
|
||||||
# Creează directorul de destinație dacă nu există
|
|
||||||
mkdir -p "$dir_dest"
|
|
||||||
|
|
||||||
face_backup "$dir_sursa" "$dir_dest"
|
|
||||||
;;
|
|
||||||
|
|
||||||
3)
|
|
||||||
# =============================================================================
|
|
||||||
# SCRIPT 3: VERIFICARE STATUS SERVERE
|
|
||||||
# Verifică dacă serverele sunt online (ping)
|
|
||||||
# CONCEPTE: array-uri, for loop, exit codes
|
|
||||||
# =============================================================================
|
|
||||||
|
|
||||||
echo ""
|
|
||||||
echo "=== VERIFICARE STATUS SERVERE ==="
|
|
||||||
echo ""
|
|
||||||
|
|
||||||
# Array simplu cu liste de servere
|
|
||||||
# () = array în bash
|
|
||||||
servere=(
|
|
||||||
"google.com"
|
|
||||||
"github.com"
|
|
||||||
"stackoverflow.com"
|
|
||||||
"localhost"
|
|
||||||
)
|
|
||||||
|
|
||||||
echo "Verific ${#servere[@]} servere..." # ${#array[@]} = număr elemente
|
|
||||||
echo ""
|
|
||||||
|
|
||||||
# for loop prin array
|
|
||||||
for server in "${servere[@]}"; do
|
|
||||||
echo -n "Verific $server... "
|
|
||||||
|
|
||||||
# ping -c 2 = trimite 2 pachete
|
|
||||||
# -W 2 = timeout 2 secunde
|
|
||||||
# &>/dev/null = ascunde output-ul
|
|
||||||
if ping -c 2 -W 2 "$server" &>/dev/null; then
|
|
||||||
echo "✓ ONLINE"
|
|
||||||
else
|
|
||||||
echo "✗ OFFLINE"
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
|
|
||||||
echo ""
|
|
||||||
echo "Verificare completată!"
|
|
||||||
;;
|
|
||||||
|
|
||||||
4)
|
|
||||||
# =============================================================================
|
|
||||||
# SCRIPT 4: CURĂȚARE FIȘIERE VECHI
|
|
||||||
# Șterge fișiere mai vechi de X zile dintr-un director
|
|
||||||
# CONCEPTE: find, confirmări utilizator, numărare
|
|
||||||
# =============================================================================
|
|
||||||
|
|
||||||
echo ""
|
|
||||||
echo "=== CURĂȚARE FIȘIERE VECHI ==="
|
|
||||||
echo ""
|
|
||||||
|
|
||||||
read -p "Director de curățat (ex: /tmp): " director
|
|
||||||
|
|
||||||
if [ ! -d "$director" ]; then
|
|
||||||
echo "Eroare: Directorul nu există!"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
read -p "Șterge fișiere mai vechi de câte zile? (ex: 30): " zile
|
|
||||||
|
|
||||||
# Verifică dacă e un număr valid
|
|
||||||
if ! [[ "$zile" =~ ^[0-9]+$ ]]; then
|
|
||||||
echo "Eroare: Trebuie să introduci un număr!"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo ""
|
|
||||||
echo "Căutare fișiere mai vechi de $zile zile în $director..."
|
|
||||||
|
|
||||||
# find = caută fișiere
|
|
||||||
# -type f = doar fișiere (nu directoare)
|
|
||||||
# -mtime +N = modificat acum N+ zile
|
|
||||||
fisiere_vechi=$(find "$director" -type f -mtime +$zile 2>/dev/null)
|
|
||||||
|
|
||||||
numar_fisiere=$(echo "$fisiere_vechi" | grep -v '^$' | wc -l)
|
|
||||||
|
|
||||||
if [ $numar_fisiere -eq 0 ]; then
|
|
||||||
echo "Nu am găsit fișiere mai vechi de $zile zile."
|
|
||||||
exit 0
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo "Am găsit $numar_fisiere fișiere vechi:"
|
|
||||||
echo "$fisiere_vechi" | head -10 # Arată primele 10
|
|
||||||
|
|
||||||
if [ $numar_fisiere -gt 10 ]; then
|
|
||||||
echo "... și alte $((numar_fisiere - 10)) fișiere"
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo ""
|
|
||||||
read -p "Vrei să ștergi aceste fișiere? (da/nu): " confirmare
|
|
||||||
|
|
||||||
if [ "$confirmare" = "da" ]; then
|
|
||||||
# Loop prin fișiere și șterge-le
|
|
||||||
while IFS= read -r fisier; do
|
|
||||||
if [ -n "$fisier" ]; then
|
|
||||||
rm -f "$fisier"
|
|
||||||
echo "Șters: $fisier"
|
|
||||||
fi
|
|
||||||
done <<< "$fisiere_vechi"
|
|
||||||
|
|
||||||
echo ""
|
|
||||||
echo "✓ Curățare completă!"
|
|
||||||
else
|
|
||||||
echo "Operațiune anulată."
|
|
||||||
fi
|
|
||||||
;;
|
|
||||||
|
|
||||||
5)
|
|
||||||
# =============================================================================
|
|
||||||
# SCRIPT 5: CALCULATOR SIMPLU
|
|
||||||
# Calculator cu operații matematice de bază
|
|
||||||
# CONCEPTE: case, operații aritmetice, loop infinit
|
|
||||||
# =============================================================================
|
|
||||||
|
|
||||||
echo ""
|
|
||||||
echo "=== CALCULATOR SIMPLU ==="
|
|
||||||
echo ""
|
|
||||||
|
|
||||||
# Loop infinit (until break)
|
|
||||||
while true; do
|
|
||||||
echo "Operații disponibile:"
|
|
||||||
echo "1. Adunare (+)"
|
|
||||||
echo "2. Scădere (-)"
|
|
||||||
echo "3. Înmulțire (*)"
|
|
||||||
echo "4. Împărțire (/)"
|
|
||||||
echo "5. Ieșire"
|
|
||||||
echo ""
|
|
||||||
|
|
||||||
read -p "Alege operația (1-5): " op
|
|
||||||
|
|
||||||
# break = ieșire din loop
|
|
||||||
[ "$op" = "5" ] && break
|
|
||||||
|
|
||||||
read -p "Primul număr: " num1
|
|
||||||
read -p "Al doilea număr: " num2
|
|
||||||
|
|
||||||
# case = switch statement
|
|
||||||
case $op in
|
|
||||||
1)
|
|
||||||
rezultat=$((num1 + num2))
|
|
||||||
echo "Rezultat: $num1 + $num2 = $rezultat"
|
|
||||||
;;
|
|
||||||
2)
|
|
||||||
rezultat=$((num1 - num2))
|
|
||||||
echo "Rezultat: $num1 - $num2 = $rezultat"
|
|
||||||
;;
|
|
||||||
3)
|
|
||||||
rezultat=$((num1 * num2))
|
|
||||||
echo "Rezultat: $num1 * $num2 = $rezultat"
|
|
||||||
;;
|
|
||||||
4)
|
|
||||||
if [ $num2 -eq 0 ]; then
|
|
||||||
echo "Eroare: Împărțire la zero!"
|
|
||||||
else
|
|
||||||
# bc = calculator pentru operații cu virgulă
|
|
||||||
rezultat=$(echo "scale=2; $num1 / $num2" | bc)
|
|
||||||
echo "Rezultat: $num1 / $num2 = $rezultat"
|
|
||||||
fi
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
echo "Operație invalidă!"
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
echo ""
|
|
||||||
done
|
|
||||||
|
|
||||||
echo "La revedere!"
|
|
||||||
;;
|
|
||||||
|
|
||||||
6)
|
|
||||||
# =============================================================================
|
|
||||||
# SCRIPT 6: MONITOR PROCESE
|
|
||||||
# Afișează procesele care consumă cele mai multe resurse
|
|
||||||
# CONCEPTE: ps, sort, top procese
|
|
||||||
# =============================================================================
|
|
||||||
|
|
||||||
echo ""
|
|
||||||
echo "=== MONITOR PROCESE ==="
|
|
||||||
echo ""
|
|
||||||
|
|
||||||
echo "Top 10 procese după utilizare CPU:"
|
|
||||||
echo ""
|
|
||||||
|
|
||||||
# ps = process status
|
|
||||||
# aux = all users, user-oriented, include processes without terminal
|
|
||||||
# --sort = sortează după o coloană
|
|
||||||
# head = primele N linii
|
|
||||||
|
|
||||||
ps aux --sort=-%cpu | head -11
|
|
||||||
|
|
||||||
echo ""
|
|
||||||
echo "---"
|
|
||||||
echo ""
|
|
||||||
echo "Top 10 procese după utilizare memorie:"
|
|
||||||
echo ""
|
|
||||||
|
|
||||||
ps aux --sort=-%mem | head -11
|
|
||||||
|
|
||||||
echo ""
|
|
||||||
read -p "Vrei să oprești vreun proces? (da/nu): " raspuns
|
|
||||||
|
|
||||||
if [ "$raspuns" = "da" ]; then
|
|
||||||
read -p "Introdu PID-ul procesului: " pid
|
|
||||||
|
|
||||||
# Verifică dacă procesul există
|
|
||||||
if ps -p $pid > /dev/null 2>&1; then
|
|
||||||
echo "Opresc procesul $pid..."
|
|
||||||
kill $pid
|
|
||||||
echo "✓ Procesul a fost oprit"
|
|
||||||
else
|
|
||||||
echo "Procesul cu PID $pid nu există"
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
;;
|
|
||||||
|
|
||||||
*)
|
|
||||||
echo "Opțiune invalidă!"
|
|
||||||
exit 1
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
|
|
||||||
# =============================================================================
|
|
||||||
# REZUMAT CONCEPTE BASH ÎNVĂȚATE:
|
|
||||||
# =============================================================================
|
|
||||||
#
|
|
||||||
# 1. LOOP-URI:
|
|
||||||
# - while read: citește linie cu linie
|
|
||||||
# - for in: iterează prin liste/array-uri
|
|
||||||
# - while true: loop infinit (până la break)
|
|
||||||
#
|
|
||||||
# 2. CONDIȚII:
|
|
||||||
# - if [ conditie ]; then ... fi
|
|
||||||
# - case variabila in ... esac (switch)
|
|
||||||
# - Operatori: -eq (egal), -gt (mai mare), -lt (mai mic)
|
|
||||||
# - Operatori fișiere: -d (director), -f (fișier), -e (există)
|
|
||||||
#
|
|
||||||
# 3. ARRAY-URI:
|
|
||||||
# - Declarare: arr=(val1 val2 val3)
|
|
||||||
# - Acces: ${arr[0]}
|
|
||||||
# - Toate elementele: ${arr[@]}
|
|
||||||
# - Lungime: ${#arr[@]}
|
|
||||||
#
|
|
||||||
# 4. FUNCȚII:
|
|
||||||
# - Declarare: function_name() { ... }
|
|
||||||
# - Parametri: $1, $2, $3...
|
|
||||||
# - Variabile locale: local var=value
|
|
||||||
#
|
|
||||||
# 5. COMENZI UTILE:
|
|
||||||
# - df: disk free (spațiu)
|
|
||||||
# - du: disk usage (mărime fișiere)
|
|
||||||
# - ps: process status
|
|
||||||
# - find: caută fișiere
|
|
||||||
# - grep: filtrează text
|
|
||||||
# - awk: procesare coloane
|
|
||||||
# - sed: editare text
|
|
||||||
#
|
|
||||||
# 6. OPERATORI:
|
|
||||||
# - Aritmetică: $((expresie))
|
|
||||||
# - Strings: -z (gol), -n (nu e gol)
|
|
||||||
# - Comparații: -eq, -ne, -gt, -lt, -ge, -le
|
|
||||||
#
|
|
||||||
# 7. REDIRECTĂRI:
|
|
||||||
# - > : scrie în fișier (suprascrie)
|
|
||||||
# - >> : append la fișier
|
|
||||||
# - 2>&1 : redirectează error la output
|
|
||||||
# - &>/dev/null : ascunde tot output-ul
|
|
||||||
#
|
|
||||||
# =============================================================================
|
|
||||||
@@ -1,105 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
|
|
||||||
#####################################################
|
|
||||||
# System Health Monitor
|
|
||||||
# Author: [Numele Tău]
|
|
||||||
# Description: Verifică starea sistemului și generează raport
|
|
||||||
#####################################################
|
|
||||||
|
|
||||||
# Culori pentru output fancy
|
|
||||||
RED='\033[0;31m'
|
|
||||||
GREEN='\033[0;32m'
|
|
||||||
YELLOW='\033[1;33m'
|
|
||||||
BLUE='\033[0;34m'
|
|
||||||
NC='\033[0m' # No Color
|
|
||||||
|
|
||||||
# Header fancy
|
|
||||||
clear
|
|
||||||
echo -e "${BLUE}╔════════════════════════════════════════╗${NC}"
|
|
||||||
echo -e "${BLUE}║ SYSTEM HEALTH MONITOR v1.0 ║${NC}"
|
|
||||||
echo -e "${BLUE}╚════════════════════════════════════════╝${NC}"
|
|
||||||
echo ""
|
|
||||||
echo -e "${GREEN}📊 Generez raportul...${NC}"
|
|
||||||
echo ""
|
|
||||||
|
|
||||||
# 1. Informații sistem
|
|
||||||
echo -e "${YELLOW}━━━ 💻 INFORMAȚII SISTEM ━━━${NC}"
|
|
||||||
echo -e "Hostname: ${GREEN}$(hostname)${NC}"
|
|
||||||
echo -e "Utilizator: ${GREEN}$(whoami)${NC}"
|
|
||||||
echo -e "Data: ${GREEN}$(date '+%Y-%m-%d %H:%M:%S')${NC}"
|
|
||||||
echo -e "Uptime: ${GREEN}$(uptime -p)${NC}"
|
|
||||||
echo ""
|
|
||||||
|
|
||||||
# 2. CPU Usage
|
|
||||||
echo -e "${YELLOW}━━━ ⚙️ CPU USAGE ━━━${NC}"
|
|
||||||
cpu_usage=$(top -bn1 | grep "Cpu(s)" | awk '{print $2}' | cut -d'%' -f1)
|
|
||||||
echo -e "Utilizare CPU: ${GREEN}${cpu_usage}%${NC}"
|
|
||||||
|
|
||||||
if (( $(echo "$cpu_usage > 80" | bc -l) )); then
|
|
||||||
echo -e "${RED}⚠️ ATENȚIE: CPU usage ridicat!${NC}"
|
|
||||||
else
|
|
||||||
echo -e "${GREEN}✓ CPU în parametri normali${NC}"
|
|
||||||
fi
|
|
||||||
echo ""
|
|
||||||
|
|
||||||
# 3. Memorie
|
|
||||||
echo -e "${YELLOW}━━━ 🧠 MEMORIE ━━━${NC}"
|
|
||||||
mem_total=$(free -h | awk '/^Mem:/ {print $2}')
|
|
||||||
mem_used=$(free -h | awk '/^Mem:/ {print $3}')
|
|
||||||
mem_percent=$(free | awk '/^Mem:/ {printf "%.0f", $3/$2 * 100}')
|
|
||||||
|
|
||||||
echo -e "Total: ${GREEN}${mem_total}${NC}"
|
|
||||||
echo -e "Folosită: ${GREEN}${mem_used}${NC} (${mem_percent}%)"
|
|
||||||
|
|
||||||
if [ "$mem_percent" -gt 80 ]; then
|
|
||||||
echo -e "${RED}⚠️ ATENȚIE: Memorie insuficientă!${NC}"
|
|
||||||
else
|
|
||||||
echo -e "${GREEN}✓ Memorie OK${NC}"
|
|
||||||
fi
|
|
||||||
echo ""
|
|
||||||
|
|
||||||
# 4. Disc
|
|
||||||
echo -e "${YELLOW}━━━ 💾 SPAȚIU DISC ━━━${NC}"
|
|
||||||
df -h | grep -E '^/dev/' | while read line; do
|
|
||||||
usage=$(echo $line | awk '{print $5}' | cut -d'%' -f1)
|
|
||||||
mount=$(echo $line | awk '{print $6}')
|
|
||||||
|
|
||||||
if [ "$usage" -gt 80 ]; then
|
|
||||||
echo -e "${RED}⚠️ $mount: ${usage}% (PLIN!)${NC}"
|
|
||||||
else
|
|
||||||
echo -e "${GREEN}✓ $mount: ${usage}%${NC}"
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
echo ""
|
|
||||||
|
|
||||||
# 5. Top 5 procese (CPU)
|
|
||||||
echo -e "${YELLOW}━━━ 🔥 TOP 5 PROCESE (CPU) ━━━${NC}"
|
|
||||||
ps aux --sort=-%cpu | head -6 | tail -5 | awk '{printf "%-20s %5s%%\n", $11, $3}'
|
|
||||||
echo ""
|
|
||||||
|
|
||||||
# 6. Verificare servicii importante (opțional)
|
|
||||||
echo -e "${YELLOW}━━━ 🔧 STATUS SERVICII ━━━${NC}"
|
|
||||||
|
|
||||||
# Exemplu: verifică serviciul SSH
|
|
||||||
if systemctl is-active --quiet sshd 2>/dev/null || systemctl is-active --quiet ssh 2>/dev/null; then
|
|
||||||
echo -e "${GREEN}✓ SSH: Running${NC}"
|
|
||||||
else
|
|
||||||
echo -e "${RED}✗ SSH: Stopped${NC}"
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Footer
|
|
||||||
echo ""
|
|
||||||
echo -e "${BLUE}╔════════════════════════════════════════╗${NC}"
|
|
||||||
echo -e "${BLUE}║ Raport generat cu succes! ✓ ║${NC}"
|
|
||||||
echo -e "${BLUE}╚════════════════════════════════════════╝${NC}"
|
|
||||||
echo ""
|
|
||||||
|
|
||||||
# Opțiune salvare raport
|
|
||||||
read -p "Salvezi raportul în fișier? (y/n): " save_choice
|
|
||||||
if [ "$save_choice" = "y" ] || [ "$save_choice" = "Y" ]; then
|
|
||||||
report_file="system_health_$(date +%Y%m%d_%H%M%S).txt"
|
|
||||||
$0 2>&1 | grep -v "Salvezi raportul" > "$report_file"
|
|
||||||
echo -e "${GREEN}✓ Raport salvat: $report_file${NC}"
|
|
||||||
fi
|
|
||||||
|
|
||||||
exit 0
|
|
||||||
@@ -1,27 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
release_file=/etc/os-release
|
|
||||||
logfile=/var/log/updater.log
|
|
||||||
errorlog=/var/log/updater_errors.log
|
|
||||||
|
|
||||||
check_exit_status() {
|
|
||||||
local status=$1
|
|
||||||
local command_name=$2
|
|
||||||
if [ $status -ne 0 ]
|
|
||||||
then
|
|
||||||
echo "An error occurred during $command_name, please check the $errorlog file."
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
if grep -q "Ubuntu" $release_file || grep -q "Debian" $release_file
|
|
||||||
then
|
|
||||||
# The host is Debian or Ubuntu
|
|
||||||
# Run the apt version of the command
|
|
||||||
sudo apt update 1>>$logfile 2>>$errorlog
|
|
||||||
check_exit_status $? "apt update"
|
|
||||||
|
|
||||||
sudo apt dist-upgrade -y 1>>$logfile 2>>$errorlog
|
|
||||||
check_exit_status $? "apt dist-upgrade"
|
|
||||||
|
|
||||||
echo "Update completed successfully!"
|
|
||||||
fi
|
|
||||||
1
contact.html
Normal file
1
contact.html
Normal file
@@ -0,0 +1 @@
|
|||||||
|
Formular contact
|
||||||
1
file_2test.txt
Normal file
1
file_2test.txt
Normal file
@@ -0,0 +1 @@
|
|||||||
|
Fisier 2 test
|
||||||
1
index.html
Normal file
1
index.html
Normal file
@@ -0,0 +1 @@
|
|||||||
|
index file
|
||||||
Reference in New Issue
Block a user