温馨提示×

如何提取Debian配置

小樊
38
2026-08-22 06:18:19
栏目: 智能运维

提取 Debian 系统的配置可以从多个层面进行,具体取决于你想“提取”的目的(例如:迁移系统、备份、排查问题、做文档化等)。下面按常见场景给出方法和工具。


一、提取已安装软件包列表(最常见)

1️⃣ 导出已安装软件包

dpkg --get-selections > packages.txt

恢复:

dpkg --set-selections < packages.txt
apt-get dselect-upgrade

2️⃣ 更推荐的方式(含源信息)

apt list --installed > installed_packages.txt

或只导出包名:

dpkg-query -W -f='${Package}\n' > packages.txt

二、提取 APT 源配置

1️⃣ 源列表

cp /etc/apt/sources.list /backup/sources.list
cp -r /etc/apt/sources.list.d /backup/sources.list.d

2️⃣ 密钥(如果有)

cp -r /etc/apt/trusted.gpg.d /backup/
cp /etc/apt/trusted.gpg /backup/

三、提取系统基础配置

1️⃣ 网络配置

cp -r /etc/network /backup/network
cp /etc/resolv.conf /backup/
cp /etc/hosts /backup/

如果使用 NetworkManager / systemd-networkd,还需:

cp -r /etc/NetworkManager /backup/
cp -r /etc/systemd/network /backup/

2️⃣ 用户与权限

cp /etc/passwd /backup/
cp /etc/group /backup/
cp /etc/shadow /backup/   # 需要 root
cp /etc/sudoers /backup/
cp -r /etc/sudoers.d /backup/

3️⃣ 系统服务与启动项

systemctl list-units --type=service --state=enabled > enabled_services.txt
cp -r /etc/systemd /backup/systemd

四、提取内核与启动配置

cp /etc/default/grub /backup/
cp -r /boot/grub /backup/grub
uname -a > kernel_info.txt

五、提取所有配置文件(高级)

1️⃣ 提取所有来自包的配置

dpkg -L $(dpkg --get-selections | grep install | cut -f1) \
  | grep -E '^/etc/' > etc_files.txt

2️⃣ 备份整个 /etc(最常用)

tar czf etc_backup.tar.gz /etc

六、一键备份配置(推荐方案)

使用 etckeeper(强烈推荐)

apt install etckeeper
etckeeper init
etckeeper commit "Initial commit"

✅ 自动用 git 管理 /etc ✅ 可随时回滚配置


七、提取当前系统“状态快照”(迁移用)

1️⃣ 包 + 源 + 配置

apt list --installed > packages.txt
tar czf debian_config_backup.tar.gz \
  /etc \
  /home \
  /root \
  /var/spool/cron \
  /opt

2️⃣ 生成可复现的安装脚本(示例)

apt install $(cat packages.txt | awk -F/ '{print $1}' | tr '\n' ' ')

八、常见用途总结

目的 推荐提取内容
系统迁移 包列表 + /etc + APT 源
配置文档化 etckeeper
故障排查 systemd 配置 + 网络 + 日志
安全审计 sudoers、passwd、shadow、systemd

九、你可以进一步告诉我

你可以直接告诉我:

  • ✅ 是 物理机 / 虚拟机 / 容器
  • ✅ 是 整个系统迁移 还是 只备份配置
  • ✅ 是否要 自动化脚本

我可以给你一个完全定制的 Debian 配置提取方案

0