ubuntu lamp恢复方法是什么
导读:Ubuntu LAMP 恢复方法 一 恢复总览与准备 恢复对象包含:网站文件(如 /var/www/html)、MySQL/MariaDB 数据库(逻辑备份 .sql)、Apache/PHP 配置(如 /etc/apache2/、虚拟主机...
Ubuntu LAMP 恢复方法
一 恢复总览与准备
- 恢复对象包含:网站文件(如 /var/www/html)、MySQL/MariaDB 数据库(逻辑备份 .sql)、Apache/PHP 配置(如 /etc/apache2/、虚拟主机配置、php.ini)、以及可选的 SSL 证书与用户上传目录。
- 准备:一台可启动的 Ubuntu 环境(原机或新机)、最近一次可用的备份、以及 root/sudo 权限。若系统无法启动,可使用 Ubuntu Live USB 进入 Live 环境进行离线恢复。
二 场景一 仅数据与配置恢复(系统可正常启动)
- 恢复网站文件
- 将备份解压到网站根目录(示例):sudo tar -xzvf /backup/website_backup.tar.gz -C /var/www/html
- 修正属主属组(常见为 www-data:www-data):sudo chown -R www-data:www-data /var/www/html
- 恢复数据库
- 登录数据库后先建库(如库名为 dbname):CREATE DATABASE IF NOT EXISTS dbname CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
- 导入备份:mysql -u root -p dbname < dbname_backup.sql
- 恢复配置文件
- Apache 主配置:sudo cp /backup/apache2.conf /etc/apache2/
- 虚拟主机:sudo cp /backup/000-default.conf /etc/apache2/sites-available/ 然后启用:sudo a2ensite 000-default.conf & & sudo systemctl reload apache2
- PHP 配置:按实际版本将 php.ini 拷回(如 /etc/php/8.1/apache2/php.ini),随后重启服务
- 重启与验证
- 重启服务:sudo systemctl restart apache2;如使用 PHP-FPM:sudo systemctl restart php8.1-fpm
- 访问站点并查看日志:tail -f /var/log/apache2/error.log;如有 PHP-FPM:tail -f /var/log/php8.1-fpm.log;数据库问题查看 /var/log/mysql/error.log。
三 场景二 系统级恢复(系统无法启动或需整机回滚)
- 使用 Ubuntu Live USB 启动,进入 Live 桌面/终端
- 挂载原系统分区(示例为 /dev/sda1):sudo mount /dev/sda1 /mnt
- 可选:挂载其他必要分区(如 /boot、/var、/home)到 /mnt/boot、/mnt/var、/mnt/home,保持与备份时一致
- 进入原系统环境:sudo chroot /mnt
- 使用 rsync 恢复系统或数据(示例):rsync -aAXv /path/to/backup/ /
- 退出 chroot 并重启:exit & & sudo reboot
- 说明:该流程同样适用于将备份从一台机器恢复到另一台机器(迁移/整机恢复)。
四 场景三 跨服务器迁移式恢复(新机器全新安装 LAMP)
- 在新服务器安装相同组件(示例):sudo apt update & & sudo apt install apache2 mariadb-server php libapache2-mod-php php-mysql php-fpm -y
- 恢复网站文件与权限(同上):tar 解压到 /var/www/html,chown 为 www-data:www-data
- 恢复数据库:mysql -u root -p new_db < old_db.sql
- 恢复虚拟主机与 SSL
- 拷贝并启用站点配置:sudo a2ensite 000-default.conf
- 启用 SSL(如有证书):sudo a2ensite default-ssl.conf;配置证书路径后:sudo systemctl reload apache2
- 验证与切换 DNS:访问新 IP/域名,确认无误后更新 DNS 记录指向新服务器。
五 验证与常见问题处理
- 服务状态检查:systemctl status apache2、systemctl status mysql、systemctl status php8.1-fpm
- 日志定位:Apache /var/log/apache2/error.log;PHP-FPM /var/log/php8.1-fpm.log;MySQL /var/log/mysql/error.log
- 配置与语法:Apache 配置语法检查 sudo apachectl configtest;修改后重启服务
- 权限问题:确保 /var/www 及子目录对 www-data 可读可执行(目录需执行权限)
- 依赖/锁定问题:sudo apt update;sudo apt-get -f install;如遇到锁文件,排查并清理后重试。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: ubuntu lamp恢复方法是什么
本文地址: https://pptw.com/jishu/761666.html
