非标准路径下的LXC容器快照

在 OpenWrt 上使用 LXC 创建快照时出现的问题是因为你的容器配置存储在非标准路径 (/mnt/sdb/lxc/ubuntu22/),而 lxc-snapshot 默认查找 /var/lib/lxc/ 下的容器。以下是完整的解决方案:

正确创建快照的方法

1. 指定容器路径创建快照

lxc-snapshot -n ubuntu22 -P /mnt/sdb/lxc/

2. 列出已有快照

lxc-snapshot -n ubuntu22 -P /mnt/sdb/lxc/ -L

3. 恢复快照

lxc-stop -n ubuntu22
lxc-snapshot -n ubuntu22 -P /mnt/sdb/lxc/ -r snap0
lxc-start -n ubuntu22 -d

永久解决方案(修改默认路径)

方法1:创建符号链接

mkdir -p /var/lib/lxc/
ln -s /mnt/sdb/lxc/ubuntu22 /var/lib/lxc/ubuntu22

方法2:设置环境变量

export LXC_PATH=/mnt/sdb/lxc

方法3:修改全局配置

echo "lxc.lxcpath = /mnt/sdb/lxc" >> /etc/lxc/lxc.conf

高级用法示例

  1. 创建带注释的快照
echo "Before software update" > /tmp/comment
lxc-snapshot -n ubuntu22 -P /mnt/sdb/lxc/ -c /tmp/comment
  1. 克隆快照为新容器
lxc-snapshot -n ubuntu22 -P /mnt/sdb/lxc/ -r snap0 -N ubuntu22-backup
  1. 删除所有快照
lxc-snapshot -n ubuntu22 -P /mnt/sdb/lxc/ -d ALL

注意事项

  1. 确保容器已停止再执行恢复操作
  2. 快照会占用存储空间,定期清理
  3. 对于生产环境,建议使用 rsync 做额外备份:
rsync -a /mnt/sdb/lxc/ubuntu22/ /mnt/backup/ubuntu22-$(date +%Y%m%d)/

故障排查

如果仍然报错,尝试:

lxc-checkconfig  # 检查LXC支持情况
ls -l /mnt/sdb/lxc/ubuntu22/ # 检查权限
df -h /mnt/sdb  # 检查存储空间

通过以上方法,你应该能成功管理存储在非标准路径下的LXC容器快照。

No Comments

Send Comment Edit Comment


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
Previous
Next