温馨提示×

怎么备份debian apache

小樊
44
2026-09-18 14:39:45
栏目: 智能运维

在 Debian 上备份 Apache 通常包含三部分:配置文件、网站文件、数据库(如果有)。下面给你一套实用做法。


一、备份 Apache 配置

Apache 配置一般在 /etc/apache2

sudo tar czvf apache2-conf-$(date +%F).tar.gz /etc/apache2

如需包含虚拟主机和模块启用状态,上面已足够。


二、备份网站文件

默认网站目录通常是 /var/www

sudo tar czvf www-$(date +%F).tar.gz /var/www

如果你用了其他目录(如 /srv/www),请相应替换。


三、备份数据库(如 MySQL / MariaDB)

1. 查看数据库

mysql -u root -p -e "SHOW DATABASES;"

2. 备份所有数据库

mysqldump -u root -p --all-databases > mysql-all-$(date +%F).sql

3. 只备份某个库

mysqldump -u root -p dbname > dbname-$(date +%F).sql

四、一键备份脚本(推荐)

#!/bin/bash
DATE=$(date +%F)
BACKUP_DIR=/backup/apache

mkdir -p $BACKUP_DIR

tar czf $BACKUP_DIR/apache2-$DATE.tar.gz /etc/apache2
tar czf $BACKUP_DIR/www-$DATE.tar.gz /var/www
mysqldump -u root -pPASSWORD --all-databases > $BACKUP_DIR/mysql-$DATE.sql

echo "Backup done: $DATE"

⚠️ 脚本里密码明文不安全,建议用 ~/.my.cnf


五、自动化(可选)

每天凌晨备份

sudo crontab -e

添加:

0 3 * * * /path/to/backup.sh

六、恢复示例

tar xzf apache2-2026-01-21.tar.gz -C /
tar xzf www-2026-01-21.tar.gz -C /
mysql -u root -p < mysql-2026-01-21.sql
systemctl restart apache2

如果你告诉我:

  • 是否用 MySQL / PostgreSQL
  • 是否用 Docker
  • 是否要 增量备份 / 远程备份

我可以给你更精确的方案。

0