Skip to content

Unable to delete Linux machine due to read-only file system #461

@keyrm10

Description

@keyrm10

Describe the bug

I'm unable to delete a Linux machine using orbctl. When I run the following command:

$ orbctl delete ubuntu --force

I get the following error:

[-32098] delete rootfs: remove all: unlinkat /data/scon/containers/01H4TAYHCRPT4QR190KH912936/rootfs/var/snap/lxd/common/lxd/storage-pools/default/images/4166efc1661cc063b26cedb7fabc1aa9a1c2d814b4acb20b5b7d317a53f995f3/metadata.yaml: read-only file system

This bug only affects a specific machine after attempting to delete it for the first time. Although it appears to have been removed successfully, OrbStack continues to recognise it as if it were still present:

$ orbctl list
NAME    STATE    DISTRO  VERSION  ARCH
----    -----    ------  -------  ----
ubuntu  stopped  ubuntu  lunar    arm64

In the OrbStack directory it doesn't exist the directory for this Linux machine:

$ ls -la ~/OrbStack/
total 2
drwxr-xr-x   4 key         staff   160 Jul 19 15:47 .
drwxr-x---+ 54 key         staff  1728 Jul 19 15:47 ..
drwxr-xr-x   2 root        wheel    60 Jul 19 15:47 .fseventsd
-rw-r--r--   1 root        wheel     0 Jul 19 15:47 .metadata-never-index
-rw-r--r--   1 root        wheel     0 Jul 19 15:47 .metadata_never_index
-rw-r--r--   1 root        wheel     0 Jul 19 15:47 .metadata_never_index_unless_rootfs
-rw-r--r--   1 root        wheel   762 Jul 19 15:47 README.txt
drwxr-xr-x   3 root        wheel    60 Jul 19 15:47 docker

I'm able to delete other machines without any issues.

To Reproduce

I'm unable to reproduce this bug, since it only affects a specific machine after trying to delete it, and I don't know the events that have triggered this state.

Expected behavior

The machine deletion process must be successful, ensuring that it does not appear in the orbctl list output.

Logs

🌲 vmgr | time="07-16 14:07:54" level=info msg="configuring VM"
🌲 vmgr | time="07-16 14:07:54" level=info msg="forwarding SSH agent" sock=/private/tmp/com.apple.launchd.QsN59I4xjT/Listeners
🌲 vmgr | time="07-16 14:07:54" level=info msg="starting VM"
🌲 vmgr | time="07-16 14:07:54" level=info msg="using proxy: none"
🌲 vmgr | time="07-16 14:07:54" level=info msg="starting host services"
🌲 vmgr | time="07-16 14:07:54" level=info msg="reading user account info"
🌲 vmgr | time="07-16 14:07:54" level=info msg="reading user environment variables"
🌲 vmgr | time="07-16 14:07:54" level=info msg="waiting for VM to start"
🌲 vmgr | time="07-16 14:07:54" level=info msg="[VM] starting"
🌲 vmgr | time="07-16 14:07:54" level=info msg="[VM] started"
🐧 system |  [*] Booting OrbStack  (+0ms)
🐧 system |  [*] Set basic environment  (+0ms)
🐧 system |  [*] Pivot to overlayfs  (+0ms)
🐧 system |  [*] Mount pseudo filesystems  (+0ms)
🐧 system |   -  Kernel version: 6.3.12-orbstack-00210-ga4f4fae8883e
🐧 system |  [*] Set up network  (+2ms)
🐧 system |  [*] Start control server  (+2ms)
🐧 system |  [*] Set clock  (+0ms)
🐧 system |  [*] Apply system settings  (+0ms)
🐧 system |  [*] Late tasks  (+0ms)
🐧 system |      [*] Set up binfmt
🐧 system |      [*] Mount data
👾 kernel | [    0.174753] virtio-fs: tag <r     [*] Set up memoryosetta> not foun
🐧 system | d
🐧 system |   -  Using QEMU[    0.174960] B
🐧 system | TRFS: device label user-data-fs devid 1 transid 4757 /dev/vdb1 scanned by vinit (136)
👾 kernel | [    0.175354] BTRFS info (device vdb1): using crc32c (crc32c-generic) checksum algorithm
👾 kernel | [    0.175443] BTRFS info (device vdb1): turning on sync discard
👾 kernel | [    0.175497] BTRFS info (device vdb1): enabling ssd optimizations
👾 kernel | [    0.175605] BTRFS info (device vdb1): setting nodatacow, compression disabled
👾 kernel | [    0.175672] BTRFS info (device vdb1): using free space tree
👾 kernel | [    0.180966] zram: setup backing device /dev/vdc1
🐧 system |  [*] Initialize data  (+6ms)
🐧 system |  [*] Start services  (+0ms)
🐧 system |  [*] Booted!  (+0ms)
🐧 system |   -  Total boot time: 13ms
👾 kernel | [    0.187911] udevd[159]: starting version 3.2.12
👾 kernel | [    0.189626] zram0: detected capacity change from 0 to 18294720
👾 kernel | [    0.190727] udevd[159]: starting eudev-3.2.12
📦 scon | time="07-16 12:07:55" level=info msg=starting
🌲 vmgr | time="07-16 14:07:55" level=info msg="Data FS ready"
👾 kernel | [    0.208977] conbr0: port 1(eth1) entered blocking state
👾 kernel | [    0.209208] conbr0: port 1(eth1) entered disabled state
👾 kernel | [    0.209336] virtio_net virtio1 eth1: entered allmulticast mode
👾 kernel | [    0.209423] virtio_net virtio1 eth1: entered promiscuous mode
👾 kernel | [    0.209596] conbr0: port 1(eth1) entered blocking state
👾 kernel | [    0.209634] conbr0: port 1(eth1) entered forwarding state
👾 kernel | [    0.223164] Adding 9147356k swap on /dev/zram0.  Priority:32767 extents:1 across:9147356k SSDsc
👾 kernel | [    0.224014] Adding 2097148k swap on /dev/vdc2.  Priority:1 extents:1 across:2097148k Dsc
📦 scon | time="07-16 12:07:55" level=info msg=started
📦 scon | time="07-16 12:07:55" level=info msg="starting container" container=docker
👾 kernel | [    0.244178] conbr0: port 2(vethVXsjTD) entered blocking state
👾 kernel | [    0.244337] conbr0: port 2(vethVXsjTD) entered disabled state
👾 kernel | [    0.244404] vethVXsjTD: entered allmulticast mode
👾 kernel | [    0.244479] vethVXsjTD: entered promiscuous mode
👾 kernel | [    0.244597] conbr0: port 2(vethVXsjTD) entered blocking state
👾 kernel | [    0.244647] conbr0: port 2(vethVXsjTD) entered forwarding state
👾 kernel | [    0.244801] memfd_create() without MFD_EXEC nor MFD_NOEXEC_SEAL, pid=204 'scon'
👾 kernel | [    0.244958] eth0: renamed from vethsdlNgN
👾 kernel | [    0.245271] IPv6: ADDRCONF(NETDEV_CHANGE): vethVXsjTD: link becomes ready
📦 scon | time="07-16 12:07:55" level=info msg="container started" container=docker
🌸 agent:docker | �[36mINFO�[0m[07-16 12:07:55] adding Docker network                         �[36mconfig�[0m="{192.168.215.0/24 192.168.215.1 invalid Prefix docker0}" �[36mname�[0m=bridge
👾 kernel | [    0.696918] docker0: port 1(.orbmirror0) entered blocking state
👾 kernel | [    0.696969] docker0: port 1(.orbmirror0) entered disabled state
👾 kernel | [    0.696998] .orbmirror0: entered allmulticast mode
👾 kernel | [    0.697035] .orbmirror0: entered promiscuous mode
👾 kernel | [    0.697081] virtio_net virtio2 eth2: entered allmulticast mode
👾 kernel | [    0.697103] virtio_net virtio2 eth2: entered promiscuous mode
👾 kernel | [    0.697150] docker0: port 1(.orbmirror0) entered blocking state
👾 kernel | [    0.697178] docker0: port 1(.orbmirror0) entered forwarding state
👾 kernel | [    0.697269] IPv6: ADDRCONF(NETDEV_CHANGE): docker0: link becomes ready
🌲 vmgr | time="07-16 14:07:56" level=info msg="target command path" dir=/Users/trung.dang/.local/bin requiresRoot=false
🌲 vmgr | time="07-16 14:07:56" level=info msg="setup done"
👾 kernel | [    1.158997] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
👾 kernel | [    1.279529] NFSD: Using /var/lib/nfs/v4recovery as the NFSv4 state recovery directory
👾 kernel | [    1.279686] NFSD: Using legacy client tracking operations.
👾 kernel | [    1.279822] NFSD: starting 1-second grace period (net f0000000)
🌲 vmgr | time="07-16 14:07:56" level=info msg="Mounting NFS..."
🌲 vmgr | time="07-16 14:07:56" level=info msg="NFS mounted"

Metadata

Metadata

Assignees

No one assigned

    Labels

    t/bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions