Files
cloudpanel-backup/README.md
2025-12-12 10:44:03 +01:00

77 lines
2.0 KiB
Markdown

# Script di Backup MySQL e htdocs
Script bash per eseguire il backup automatico di un database MySQL e della cartella del sito web.
## Configurazione
1. Crea il file `.secret` nella stessa cartella dello script:
```bash
cp .secret.example .secret
```
2. Modifica il file `.secret` con le tue credenziali:
```bash
DB_HOST=localhost
DB_NAME=nome_del_tuo_database
DB_USER=tuo_utente
DB_PASS=tua_password
```
3. Rendi eseguibile lo script:
```bash
chmod +x backup.sh
```
## Utilizzo
Esegui lo script specificando il dominio come parametro:
```bash
./backup.sh nome_dominio
```
Esempio:
```bash
./backup.sh esempio.com
```
## !!!!!!WEBMIN!!!!!!
Scaricare il progetto da https://git.pyconetwork.it/francesco/cloudpanel-backup.git
```bash
cd /home/_UTENTE_/cloudpanel-backup
cp .secret.example .secret
-- Personalizzare le credenziali del DB
chmod +x backup.sh
```
Su cron manager inserisci la seguente stringa che deve essere
```bash
/home/$(whoami)/cloudpanel-backup/backup.sh nome_dominio
```
## Cosa fa lo script
1. Accetta il dominio come parametro da riga di comando
2. Legge le credenziali dal file `.secret`
3. Esegue il dump del database MySQL specificato
4. Copia la cartella `/home/utente_DOMINIO/htdocs/DOMINIO`
5. Crea un archivio ZIP contenente:
- Dump del database (formato .sql)
- Copia completa della cartella htdocs
6. Il file ZIP finale ha il formato: `backup_DOMINIO_YYYYMMDD_HHMMSS.zip`
7. Pulisce i file temporanei
## Note di sicurezza
- Il file `.secret` contiene credenziali sensibili
- Assicurati che abbia permessi appropriati: `chmod 600 .secret`
- Non versionare il file `.secret` su repository pubblici
- Aggiungi `.secret` al tuo `.gitignore`
## Percorso delle cartelle
Lo script costruisce automaticamente il percorso basandosi sul dominio fornito:
- Utente: `utente_DOMINIO`
- Percorso: `/home/utente_DOMINIO/htdocs/DOMINIO`
Esempio per il dominio `esempio.com`:
- Percorso completo: `/home/utente_esempio.com/htdocs/esempio.com`