批量删除所有 LXC 容器以及用户名

第 1 步:停止所有正在运行的 LXC 容器

通过 PVE 网页shell或服务器终端,执行以下命令。这将安全地停止所有状态为 running 的容器。

bash
# 获取所有正在运行的容器列表(ID 和名称)
pct list

# 停止所有正在运行的容器
for id in $(pct list | awk 'NR>1 {if ($2 == "running") print $1}'); do
  echo "正在停止容器 $id ..."
  pct stop $id
done

第 2 步:删除所有 LXC 容器

现在所有容器都已停止,可以开始删除。

bash
# 获取所有容器列表(包括已停止的)
pct list

# 循环删除所有容器
# 注意:这会删除所有容器!请再次确认清单。
for id in $(pct list | awk 'NR>1 {print $1}'); do
  echo "正在删除容器 $id ..."
  pct destroy $id
done

pct destroy 命令会同时删除容器相关的所有文件(根文件系统、备份、快照等)。

第 3 步:删除对应的系统用户

获取要删除的用户列表并确认

pveum user list | grep 'PVELXC' | awk '{print $2}'

确认输出的是您想要删除的用户(如 PVELXC53938@pvePVELXC54088@pve 等)

批量删除用户

pveum user list | grep 'PVELXC' | awk '{print $2}' | while read user; do
    pveum userdel "$user"
done
posted @ 2025-09-12 14:13  木子欢儿  阅读(35)  评论(0)    收藏  举报