温馨提示×

Ubuntu PHP配置如何备份

小樊
48
2026-07-01 02:13:38
栏目: 编程语言

在 Ubuntu 上备份 PHP 配置,核心就是备份相关的配置文件、模块配置和可能的自定义脚本。下面按常见场景给你一个完整、可操作的方案。


一、确认 PHP 版本(很重要)

Ubuntu 上可能同时有多个 PHP 版本:

php -v

或者:

update-alternatives --display php

通常配置文件路径如下(以 PHP 8.1 为例):

/etc/php/8.1/

二、备份 PHP 主配置(php.ini)

1️⃣ 查找 php.ini 实际位置

php -i | grep "Loaded Configuration File"

示例输出:

Loaded Configuration File => /etc/php/8.1/cli/php.ini

⚠️ 注意:CLI 和 FPM 可能不同

  • CLI:/etc/php/8.1/cli/php.ini
  • FPM:/etc/php/8.1/fpm/php.ini

2️⃣ 备份 php.ini

cp /etc/php/8.1/cli/php.ini /backup/php-cli.ini.bak
cp /etc/php/8.1/fpm/php.ini /backup/php-fpm.ini.bak

三、备份整个 PHP 配置目录(最推荐 ✅)

方法一:直接打包备份

sudo tar -czvf php-config-backup.tar.gz /etc/php/8.1

你也可以包含多个版本:

sudo tar -czvf php-config-backup.tar.gz /etc/php

四、备份 PHP-FPM 配置(如果使用 Nginx)

非常重要,容易遗漏 ❗

/etc/php/8.1/fpm/

关键文件:

  • www.conf
  • php-fpm.conf
  • pool.d/*.conf

备份示例:

cp -r /etc/php/8.1/fpm /backup/php-fpm-8.1

五、备份 PHP 模块(扩展)配置

1️⃣ 已启用的模块

php -m

2️⃣ 模块配置文件

/etc/php/8.1/mods-available/
/etc/php/8.1/cli/conf.d/
/etc/php/8.1/fpm/conf.d/

备份模块配置:

tar -czvf php-mods-backup.tar.gz /etc/php/8.1/mods-available

六、备份自定义 PHP 脚本或配置

如果你有:

  • 自定义 php 启动脚本
  • 定时任务(crontab)
  • 环境变量

1️⃣ crontab

crontab -l > php-crontab.bak

2️⃣ 自定义 systemd 服务(如有)

/etc/systemd/system/php*.service

七、一条命令完整备份(推荐 ✅)

sudo tar -czvf php-full-backup-$(date +%F).tar.gz \
/etc/php \
/var/lib/php \
/usr/local/etc/php 2>/dev/null

八、恢复 PHP 配置

解压并覆盖:

sudo tar -xzvf php-full-backup-2026-01-21.tar.gz -C /

然后重启 PHP-FPM:

sudo systemctl restart php8.1-fpm

九、自动化备份(可选)

加入 cron:

0 2 * * * tar -czvf /backup/php-backup-$(date +\%F).tar.gz /etc/php

十、常见坑位提醒 ⚠️

问题 说明
只备份 php.ini ❌ 会丢模块、FPM 配置
忘记重启 php-fpm 配置不生效
不同 SAPI(CLI/FPM) 配置是分开的
升级 PHP 路径会变化

如果你愿意,可以告诉我:

  • ✅ Ubuntu 版本
  • ✅ PHP 版本
  • ✅ 使用的是 Apache 还是 Nginx
  • ✅ 是否需要迁移到新服务器

我可以给你针对你环境的精确备份脚本

0