从Debian bookworm升级到Debian trixie后,podman使用中出现`User-selected graph driver "overlay" overwritten by graph driver "vfs" from database`的解决办法

执行podman命令时,出现一条警告:

podman ps
ERRO[0000] User-selected graph driver "overlay" overwritten by graph driver "vfs" from database - delete libpod local files ("/home/nalan/.local/share/containers/storage") to resolve.  May prevent use of images created by other tools 
CONTAINER ID  IMAGE       COMMAND     CREATED     STATUS      PORTS       NAMES

用root权限删除以下目录即可。

/home/nalan/.local/share/containers/storage

这个目录中存放着容器、镜像、卷等内容。删除后这些内容都将丢失。所以需要谨慎操作。

在之前的Debian bookworm中,podman默认使用了vfs文件格式。而在Debian trixie中,podman默认使用overlay文件格式。

vfs没有重用文件的机制,非常容易导致磁盘空间耗尽。而overlay文件系统使用了文件重用机制,可以节约大量的磁盘空间。因此,overlay是容器环境中的优选。

删除上述目录后,容器镜像需要重新拉取。容器或者pod需要重新创建。但容器化环境中,创建容器是非常容易的。因此日常作业中,应该将容器、镜像等都看作可重新创建的东西,来简化和规划工作流程。

由于卷也会被删除。因此需要完善的备份机制,或者将卷映射到主机目录。