在 Debian 里,“context” 这个词可能有几种不同含义,备份方式取决于你指的是哪一类 context。下面按常见情况分别说明:
Debian 默认使用 AppArmor,而不是 SELinux(除非你手动启用了 SELinux)。
AppArmor 的“上下文”主要是配置文件:
# 备份 AppArmor 配置
sudo tar czf apparmor-backup.tar.gz /etc/apparmor.d
# 若使用 aa-status,可记录当前状态
sudo aa-status > apparmor-status.txt
恢复:
sudo tar xzf apparmor-backup.tar.gz -C /
# 备份 SELinux 策略与上下文
sudo tar czf selinux-backup.tar.gz /etc/selinux
sudo getenforce > selinux-mode.txt
# 恢复文件默认上下文
sudo restorecon -Rv /
如果你指的是 systemd service 的 context(如 User=、Environment= 等):
# 备份所有 unit 文件
sudo tar czf systemd-backup.tar.gz /etc/systemd /lib/systemd
# 导出某个服务的运行上下文
systemctl show nginx.service > nginx-context.txt
sudo tar czf lxc-backup.tar.gz /var/lib/lxc /etc/lxc
Docker 本身“context”指 docker context:
docker context ls
docker context export mycontext > mycontext.tar
如 ps -Z 显示的 SELinux context:
ps -eZ > process-context.txt
最稳妥方式:
sudo tar czf debian-config-backup.tar.gz \
/etc \
/home \
/var/lib/dpkg \
/var/lib/apt
并导出已安装软件列表:
dpkg --get-selections > packages.list
/etc/apparmor.d 或 /etc/selinux/etc/systemd/etc 是最安全的选择如果你能补充一下:
你是在什么场景下看到 “Debian context” 的?(命令输出 / 文档 / 容器 / 安全模块)
我可以给你更精确的备份方案。