在 Ubuntu 上备份 LAMP(Linux + Apache + MySQL/MariaDB + PHP)环境,通常包含三部分:网站文件、数据库、配置文件。下面给你一套实用方案,从简单到完整。
默认网站目录一般是:
/var/www/
也可包含虚拟主机配置:
/etc/apache2/
sudo tar -czvf /backup/www-backup-$(date +%F).tar.gz /var/www
mysqldump -u root -p database_name > db-backup.sql
mysqldump -u root -p --all-databases > all-db-backup-$(date +%F).sql
mysqldump -u root -p --all-databases | gzip > all-db-backup-$(date +%F).sql.gz
sudo tar -czvf lamp-config-backup.tar.gz \
/etc/apache2 \
/etc/mysql \
/etc/php
#!/bin/bash
BACKUP_DIR=/backup
DATE=$(date +%F)
mkdir -p $BACKUP_DIR
# 网站文件
tar -czvf $BACKUP_DIR/www-$DATE.tar.gz /var/www
# 数据库
mysqldump -u root -p --all-databases | gzip > $BACKUP_DIR/db-$DATE.sql.gz
# 配置
tar -czvf $BACKUP_DIR/config-$DATE.tar.gz /etc/apache2 /etc/mysql /etc/php
保存为 backup_lamp.sh,然后:
chmod +x backup_lamp.sh
sudo ./backup_lamp.sh
sudo crontab -e
每天凌晨 2 点备份:
0 2 * * * /path/to/backup_lamp.sh
sudo tar -xzvf www-backup.tar.gz -C /
gunzip < db-backup.sql.gz | mysql -u root -p
如果你愿意,我可以: ✅ 给你一个生产级自动备份方案 ✅ 针对 Ubuntu 20.04 / 22.04 写具体命令 ✅ 教你 Docker LAMP 备份
你现在是 本地服务器还是云服务器?