Fedora Silverblue Toolbox OCI permission issue

A bug was reported in recent Silverblue upgrade. It cause some existing containers failed to start and enter. If you try to enter the container you will get Error: unable to start container. Use podman to the error will be more detailed Error: setrlimit RLIMIT_NOFILE: Invalid argument: OCI runtime error.

It seems like the bug is related to contaienr was created with wrong hard and soft ulimit. Upstream already have that fixed.

For existing containers. We will need to recreate the container.

Steps for recreating a container in Fedora Silverblue with toolbox.

Step 1. Get the container ID.

1
toolbox list

You should see the output similar to below.

1
2
3
CONTAINER ID  CONTAINER NAME       CREATED         STATUS   IMAGE NAME
eb8defaa95be qualityology 3 weeks ago exited registry.fedoraproject.org/fedora-toolbox:38

If container status is running, stop it via

1
podman container stop qualityology

Step 2. Create an image of the container.

1
podman container commit -p eb8defaa95be  qualityology-backup

Confirm the image with toolbox list

1
toolbox list

You should see the output similar to below.

1
2
3
4
5
6
IMAGE ID      IMAGE NAME                                    CREATED
1b6982e451dd localhost/qualityology-backup:latest 2 minutes ago

CONTAINER ID CONTAINER NAME CREATED STATUS IMAGE NAME
eb8defaa95be qualityology 3 weeks ago exited registry.fedoraproject.org/fedora-toolbox:38

Step 3. Save the image to a tar archive.

1
podman save -o qualityology.tar qualityology-backup

Confirm archive file was created successfully.

1
2
3
$ ls

qualityology.tar

Step 4. Remove the backup image and container.

1
2
$ podman rmi qualityology-backup
$ toolbox rm qualityology

Step 5. Create new image from the backup file.

1
podman load -i qualityology.tar

You can confirm the image was created successfully with toolbox list

Step 6. Create toolbox container

1
toolbox create --container qualityology --image localhost/qualityology-backup:latest

You have successfully backed up and restored your toolbox container.

Syncthing In Toolbox on Fedora Silverblue with systemd

Comments