配置podman on Oracle Linux 8

在On OL8 上podman缺省运行模式是:rootless.

问题描述

$ docker pull <image>
...
Error: writing blob: adding layer with blob "sha256:50ab...":
processing tar file(lsetxattr /boot: operation not supported): exit status 1

原因

means that Podman is trying to apply extended file attributes (xattr) to /boot,
but your file system or storage driver doesn't support it — especially common in:

- Rootless Podman
- Certain file systems like XFS or NFS without proper support for xattr
- Running inside VMs or containers with restricted permissions

解决方案

$ diff -U 3 /etc/containers/storage.conf.old /etc/containers/storage.conf.new
--- /etc/containers/storage.conf.old    2025-06-25 16:08:59.105954207 +0000
+++ /etc/containers/storage.conf.new    2025-06-25 16:09:46.411974728 +0000
@@ -34,7 +34,7 @@

 # Storage path for rootless users
 #
-# rootless_storage_path = "$HOME/.local/share/containers/storage"
+rootless_storage_path = "/scratch/$USER/.local/containers/storage"

 # Transient store mode makes all container metadata be saved in temporary storage
 # (i.e. runroot above). This is faster, but doesn't persist across reboots.

即重新定义rootless_storage_path到一个本地支持xattr的磁盘分区.

重新运行后,如果还遇到下面问题:

Error: writing blob: adding layer with blob "sha256:50ab...":
processing tar file(potentially insufficient UIDs or GIDs available in user namespace (requested 0:22 for /run/utmp):
Check /etc/subuid and /etc/subgid if configured locally and
run "podman system migrate": lchown /run/utmp: invalid argument): exit status 1

按照提示做就行:

$ sudo /sbin/usermod --add-subuids 200000-265525 --add-subgids 200000-265535 <username>
or
$ sudo vim /etc/subuid
$ sudo vim /etc/subgid

重启 podman:

$ systemctl --user daemon-reload
$ podman system migrate

如果需要查看logs

$ podman --log-level=debug system service -t0
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容