Issue with container instance not starting; pivot_root invalid argument; permission denied for cp's

Environment: incus 6.0.1 and 6.0.2 on Debian12.

I imported a split-tarball image into incus with this metadata.yaml
architecture: i686 creation_date: 1726654765 and a linux2.6.32 rootfs respecting the required structure with an /sbin/init present and empty /proc, /dev, /sys.

After this import, trying to launch the instance with incus init or incus launch fails silently. Getting it to run the /sbin/init in the rootfs at all requires writing

echo 0 > /proc/sys/abi/vsyscall32

The logs in /var/log/incus/<container_name>/console.log are


 <code> mkdir: can't create directory 'tmpfs': File exists
cp: can't create 'tmpfs/dev/console': Operation not permitted
cp: can't create 'tmpfs/dev/ptmx': Operation not permitted
cp: can't create 'tmpfs/dev/zero': Operation not permitted
cp: can't create 'tmpfs/dev/urandom': Operation not permitted
cp: can't create 'tmpfs/dev/tty': Operation not permitted
cp: can't create 'tmpfs/dev/random': Operation not permitted
cp: can't create 'tmpfs/dev/null': Operation not permitted
cp: can't create 'tmpfs/dev/full': Operation not permitted
cp: can't create 'tmpfs/dev/net/tun': Operation not permitted
cp: can't create 'tmpfs/dev/fuse': Operation not permitted
cp: can't create 'tmpfs/dev/pts/0': Operation not permitted
cp: can't create 'tmpfs/dev/pts/ptmx': Operation not permitted
cp: can't stat 'packages': No such file or directory
cp: can't stat 'www': No such file or directory
pivot_root: Invalid argument
/sbin/init: line 32: can't open dev/console: no such file
</code>

and the expanded config is architecture: i686

config:
  volatile.base_image: 6160e4591e274e2f039f6416b36ca38a5f72ea1cd0d6221eff1b1478f7100759
  volatile.cloud-init.instance-id: 96f407b7-d8bd-40bd-b106-72256a7caa42
  volatile.eth0.hwaddr: 00:16:3e:2e:2a:9d
  volatile.idmap.base: "0"
  volatile.idmap.current: '[{"Isuid":true,"Isgid":false,"Hostid":1000000,"Nsid":0,"Maprange":1000000000},{"Isuid":false,"Isgid":true,"Hostid":1000000,"Nsid":0,"Maprange":1000000000}]'
  volatile.idmap.next: '[{"Isuid":true,"Isgid":false,"Hostid":1000000,"Nsid":0,"Maprange":1000000000},{"Isuid":false,"Isgid":true,"Hostid":1000000,"Nsid":0,"Maprange":1000000000}]'
  volatile.last_state.idmap: '[]'
  volatile.last_state.power: STOPPED
  volatile.last_state.ready: "false"
  volatile.uuid: 3130c2a8-196c-4941-ae3c-306ef5ff9521
  volatile.uuid.generation: 3130c2a8-196c-4941-ae3c-306ef5ff9521
devices:
  eth0:
    name: eth0
    network: incusbr0
    type: nic
  root:
    path: /
    pool: default
    type: disk
ephemeral: false
profiles:
- default
stateful: false
description: ""
</code>

Running incus with --debug shows no additional useful info. Dmesg does not really have any helpful debug info either. Tail of an ltrace of “incus start <faulty_container_name>” : --- SIGURG (Urgent I/O condition) ---malloc(24) - Pastebin.com .

Any help would be appreciated.

It’s not clear what is going on. Is that image a public image?