Vanilla-OS / Albius

A Linux installer backend with support for SquashFS and OCI installations
GNU General Public License v3.0
18 stars 7 forks source link

[Orchid] LVM error 'insufficient free space' #73

Open SandalChannel opened 5 months ago

SandalChannel commented 5 months ago

I tried to install on an external 1TB SSD, and kept getting a Volume group error when selecting to install on the entire drive:

Volume group "vos-root" has insufficient free space (253 extents): 256 required.

sometimes it says 252 extents instead of 253, but it's always the same result. When I assign the partitions myself in the installer, I also get the same result.

The drive I'm using is an M.2 NVME SK Hynix 1024.2GB drive in a Sabrent USB-C enclosure. I tried to install from different hardware (onto the same drive) and also get the same issue. However, a different 240GB drive worked fine. Testing other distributions worked fine too, so I don't think it's an issue with the drive...

Let me know if I can provide more info!

mirkobrombin commented 5 months ago

I think this is an issue with Albius instead of the installer. Need further investigation

SandalChannel commented 5 months ago

Yeah, that does seem more likely. I thought this repo also included the partition manager, my bad.

If there is any more troubleshooting I can do to get more info, I'd be glad to help!

mirkobrombin commented 5 months ago

Issued moved to the proper repo. For the details currently I have no idea, I'll leave it to other contributors more involved to Albius, like @matbme which is also the maintainer

matbme commented 4 months ago

@SandalChannel can you provide a couple more details?

Volume group "vos-root" has insufficient free space (253 extents): 256 required.

There should be a previous message showing what step it was executing when it failed. Can you inform which one?

Also, what's the disk's name when you run lsblk? Is it /dev/nvme0nX or something else?

SandalChannel commented 4 months ago

The previous few lines were: Setup [12/20]: lvcreate Setup [13/20]: lvcreate Setup [14/20]: make-thin-pool panic: failed to run setup operation make-thin-pool: lvm.RunCommand: WARNING: Converting vos-root/root and vos-root/root-meta to thin pool's data and metadata volumes with metadata wiping THIS WILL DESTROY CONTENT OF LOGICAL VOLUME (filesystem etc.)

the next line is the 'insufficient free space' error: Volume group "vos-root" has insufficient free space (253 extents): 256 required.

there were also a few lines after: goroutine 1 [running]: main.main() github.com/vanilla-os/albius/albius.go:22 +0x106

Also, what's the disk's name when you run lsblk? Is it /dev/nvme0nX or something else?

The disk is not listed as /dev/nvme0n1 but /dev/sda instead. I think this might be the USB enclosure. I could try the drive in an M.2 slot in a different PC directly to see if that works, but that would have to wait a few days, as I currently don't have another PC to test on where I am.

matbme commented 4 months ago

I've exhausted almost every possibility. The only hypothesis I have left is that maybe your drive has some specific alignment offset that is causing LVM to create a PV smaller than necessary. According to the lvm.conf documentation:

Certain 4KiB sector drives that compensate for windows partitioning will have an alignment_offset of 3584 bytes (sector 7 is the lowest aligned logical block, the 4KiB sectors start at LBA -1, and consequently sector 63 is aligned on a 4KiB boundary).

From what I could find, one way to check if that's the case is cating the output of /sys/block/<drive_label>/alignment_offset. Can you do that? No need to be on Vanilla OS, should be the same on any distro.

SandalChannel commented 4 months ago

Running cat sys/block/sda/alignment_offset just returns 0. I'm guessing that means there is no offset. By this point I have no clue what it could be either...

I also checked the drive with smartctl for any corrupt blocks but it doesn't report any issues. I guess there must be something wrong with the drive or enclosure, but I have no clue what it could be.