Bare metal install fails while mounting sysroot

Hello,

I’ve installed CoreOS a handful of time but am now encountering an issue I cant figure out. I have a system with an SSD and 2 spinning HDDs, trying to install on the SSD. I have tried installing with the HDDs disconnected to ensure that didnt impact anything, and reset the BIOS.

I’m using the following ignition file:

{
  "ignition": {
    "version": "3.3.0"
  },
  "passwd": {
    "users": [
      {
        "groups": [
          "wheel",
          "sudo",
          "docker"
        ],
        "name": "core",
        "sshAuthorizedKeys": [
          "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIGVO1R/nsd+RunqbhXwzW7IQ8NYG6sAdjOMzHmu7wtsT core@<radacted>.com"
        ]
      }
    ]
  },
  "storage": {
    "directories": [
      {
        "path": "/etc/ucore-autorebase",
        "mode": 492
      }
    ],
    "files": [
      {
        "path": "/etc/hostname",
        "contents": {
          "compression": "",
          "source": "data:,chimera_backup"
        },
        "mode": 420
      }
    ]
  },
  "systemd": {
    "units": [
      {
        "contents": "[Unit]\nDescription=uCore autorebase to unsigned OCI and reboot\nConditionPathExists=!/etc/ucore-autorebase/unverified\nConditionPathExists=!/etc/ucore-autorebase/signed\nAfter=network-online.target\nWants=network-online.target\n[Service]\nType=oneshot\nStandardOutput=journal+console\nExecStart=/usr/bin/rpm-ostree rebase --bypass-driver ostree-unverified-registry:ghcr.io/ublue-os/ucore-hci:stable-nvidia\nExecStart=/usr/bin/touch /etc/ucore-autorebase/unverified\nExecStart=/usr/bin/systemctl disable ucore-unsigned-autorebase.service\nExecStart=/usr/bin/systemctl reboot\n[Install]\nWantedBy=multi-user.target\n",
        "enabled": true,
        "name": "ucore-unsigned-autorebase.service"
      },
      {
        "contents": "[Unit]\nDescription=uCore autorebase to signed OCI and reboot\nConditionPathExists=/etc/ucore-autorebase/unverified\nConditionPathExists=!/etc/ucore-autorebase/signed\nAfter=network-online.target\nWants=network-online.target\n[Service]\nType=oneshot\nStandardOutput=journal+console\nExecStart=/usr/bin/rpm-ostree rebase --bypass-driver ostree-image-signed:docker://ghcr.io/ublue-os/ucore-hci:stable-nvidia\nExecStart=/usr/bin/touch /etc/ucore-autorebase/signed\nExecStart=/usr/bin/systemctl disable ucore-signed-autorebase.service\nExecStart=/usr/bin/systemctl reboot\n[Install]\nWantedBy=multi-user.target\n",
        "enabled": true,
        "name": "ucore-signed-autorebase.service"
      },
      {
        "contents": "[Unit]\nDescription=Docker Socket for the API\nPartOf=docker.service\n\n[Socket]\nListenStream=/var/run/docker.sock\nSocketMode=0660\nSocketUser=root\nSocketGroup=docker\n\n[Install]\nWantedBy=sockets.target\n",
        "enabled": true,
        "name": "docker.socket"
      }
    ]
  }
}

I then provision the system using:

sudo coreos-installer install /dev/sdc --insecure-ignition --ignition-url http://<LAN_IP>:8000/my.ign

sudo reboot

After rebooting into FCOS I get the following:

The fsconfig() failed: /dev/disk/by-label/rot: Can't lookup blockdev. seems particularly strange…

I was able to get the rdsosreport.txt from a subsequent boot and put it here

I also found another post that looks exactly like what I’m experiencing but i tried using their solution (run wipefs -a on the disc from the live usb before installing) and that didnt work.

I also verified that I was able to mount the SSD (/dev/sdc) successfully from the live USB, which is something someone else mentioned to test.

Thanks for any help!

Edit:
Still stuck but I did find I couldnt mount /dev/sdc4 from the actual FCOS install, which seems strange…

resulting dmesg (probably ignore my accidentally trying /dev/sdc1):

Hello @monkaiju and welcome to :fedora: !

Have there been any previous successful installations with the same Ignition config?

Hello! Excited to be here i love FCOS so far!

Not with this exact one, but with one that is identical except for the sshAuthorizedKeys value, and that one had a passwordHash too

Can you try the minimum config to make sure it is valid, i.e.:

{
  "ignition": {
    "version": "3.3.0"
  },
  "passwd": {
    "users": [
      {
        "groups": [
          "wheel",
          "sudo",
          "docker"
        ],
        "name": "core",
        "sshAuthorizedKeys": [
          "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIGVO1R/nsd+RunqbhXwzW7IQ8NYG6sAdjOMzHmu7wtsT core@<radacted>.com"
        ]
      }
    ]
  }
}

Just tried, same issue unfortunately :thinking:

I did still do the wipefs -a from the live USB, just to be safe.

You mentioned that you tried installing with just the SSD, so I’m not sure what could be causing the issue, as I tried the same minimal config on a virtual machine, just in case, and it worked as expected.

I don’t know if it could be a faulty disk, but could you try a different, single one?

Yeah, i also havent tried this minimal one with just a single disk. Ill try another disk in a bit and report back.

Thanks for the help!

Oh wow, that was it!

I didn’t think the ssd was bad because it formatted and some partitions were mountable but apparently it was. Thanks so much for the help!

1 Like

Try filling it with zeros, who knows, maybe it will help.

1 Like

Also, I’m not sure what method you used, but usually sudo wipefs --all --force works for me.

EDIT: I just saw that it’s almost the same.