archlinux / archinstall

Arch Linux installer - guided, templates etc.
GNU General Public License v3.0
6.04k stars 522 forks source link

Fails when given an LVM volume for root (possibly other mountpoints). #1113

Open jamincollins opened 2 years ago

jamincollins commented 2 years ago

Fails when given an LVM volume for root (possibly other mountpoints).

Could not get PARTUUID for /dev/mapper/vgnvme-root using 'lsblk -J -o+PARTUUID /dev/mapper/vgnvme-root'

In this case, archinstall should simply use UUID.

lsblk -J -o+PARTUUID,UUID /dev/mapper/vgnvme-root
Torxed commented 2 years ago

We're aware, but it would require additional logic and we should handle these in a context and not directly.

This should be a bit easier to deal with now that BlockDevice is a class and we're migrating to dataclasses

FWIW: USB devices and most types of RAID's is not fully supported or tested yet.

i2 commented 2 years ago

So just to confirm, even by doing manual partitioning and mounting at /mnt, installing Arch on LVM is not possible using archinstall, correct?

Update: Sorry just saw the milestone for v2.4.4 !

Torxed commented 2 years ago

So just to confirm, even by doing manual partitioning and mounting at /mnt, installing Arch on LVM is not possible using archinstall, correct?

Update: Sorry just saw the milestone for v2.4.4 !

Try mounting to /mnt/archinstall, any luck?

i2 commented 2 years ago

To walk-through, how this is done, can you please correct me if I'm wrong in these steps:

When I go back to main menu, I can't proceed to install because of missing drive selection! archinstall-error-2

What do I do? Thanks!

Torxed commented 2 years ago

We'll correct that part, but for now save the chosen config and do:

# archinstall --config /path/config.json --disk-layout /path/disks.json --creds /path/creds.json --silent

That should bypass the requisits that the menu system imposes :) everything else looks good

i2 commented 2 years ago
# --disk-layout /path/disks.json

but I don't have a disk layout json file for this! I only have a mount point /mnt/archinstall .

Torxed commented 2 years ago
# --disk-layout /path/disks.json

but I don't have a disk layout json file for this! I only have a mount point /mnt/archinstall .

Yea sorry, I was about to fall asleep yesterday haha. With --silent it should mute any questions and skip --disk-layout hopefully. I can give it a try today as well but that should work.

i2 commented 2 years ago

I get this error:


Testing connectivity to the Arch Linux mirrors ...
Waiting for automatic mirror selection (reflector) to complete.
A new package mirror-list has been created: /etc/pacman.d/mirrorlist
argument of type 'NoneType' is not iterable
[!] A log file has been created here: /var/log/archinstall/install.log
    Please submit this issue (and file) to https://github.com/archlinux/archinstall/issues
Traceback (most recent call last):
  File "/root/archinstall/guided.py", line 311, in <module>
    perform_installation(archinstall.storage.get('MOUNT_POINT', '/mnt'))
  File "/root/archinstall/guided.py", line 138, in perform_installation
    with archinstall.Installer(mountpoint, kernels=archinstall.arguments.get('kernels', ['linux'])) as installation:
  File "/root/archinstall/archinstall/lib/installer.py", line 159, in __exit__
    raise args[1]
  File "/root/archinstall/guided.py", line 185, in perform_installation
    enable_testing = 'testing' in archinstall.arguments.get('additional-repositories', None)
TypeError: argument of type 'NoneType' is not iterable```

And this is from install.log:
```Testing connectivity to the Arch Linux mirrors ...
Could not get free space on /dev/sr0: ['/usr/bin/parted', '-s', '--machine', '/dev/sr0', 'print', 'free'] exited with abnormal e
xit code [256]: b"Warning: Unable to open /dev/sr0 read-write (Read-only file system).  /dev/sr0 has been opened read-only.\r\nError: Can't have a partition outside the disk!\r\nBYT;\r\n/dev/sr0:866MB:scsi:2048:2048:unknown:VBOX CD-ROM:;\r\n"
Hardware model detected: innotek GmbH VirtualBox; UEFI mode: True
Processor model detected: Intel(R) Core(TM) i3-2100 CPU @ 3.10GHz
Memory statistics: 347988 available out of 753240 total installed
Virtualization detected: oracle; is VM: True
Graphics devices detected: dict_keys(['VMware SVGA II Adapter'])
Disk states before installing: {'blockdevices': [{'name': 'loop0', 'fstype': 'squashfs', 'fsver': '4.0', 'label': None, 'uuid': None, 'fsavail': '0', 'fsuse%': '100%', 'mountpoints': ['/run/archiso/airootfs'], 'type': 'loop', 'size': '669.2M'}, {'name': 'sda', 'fstype': None, 'fsver': None, 'label': None, 'uuid': None, 'fsavail': None, 'fsuse%': None, 'mountpoints': [None], 'type':
 'disk', 'size': '2T', 'children': [{'name': 'sda1', 'fstype': 'vfat', 'fsver': 'FAT32', 'label': None, 'uuid': 'E142-9F95', 'fsavail': None, 'fsuse%': None, 'mountpoints': [None], 'type': 'part', 'size': '256M'}, {'name': 'sda2', 'fstype': 'crypto_LUKS',
'fsver': '2', 'label': None, 'uuid': '85b01737-1e64-4121-8898-0583f9e958b4', 'fsavail': None, 'fsuse%': None, 'mountpoints': [None], 'type': 'part', 'size': '2T', 'children': [{'name': 'root', 'fstype': 'LVM2_member', 'fsver': 'LVM2 001', 'label': None, 'uuid': 'B9cjG7-pxr1-XtjH-RdKq-6oUR-GCXf-nbxhGg', 'fsavail': None, 'fsuse%': None, 'mountpoints': [None], 'type': 'crypt', 'size': '2T', 'children': [{'name': 'sys-btrfs', 'fstype': 'btrfs', 'fsver': None, 'label': None, 'uuid': 'c9f6dc89-192a-4ea0-8d4b-70977d90da7f', 'fsavail': '2T', 'fsuse%': '0%', 'mountpoints': ['/mnt/archinstall'], 'type': 'lvm', 'size': '2T'}]}]}]}, {'name': 'sr0', 'fstype': 'iso9660', 'fsver': 'Joliet Extension', 'label': 'ARCH_202205', 'uuid': '2022-05-01-09-16-25-00', 'fsavail': '0', 'fsuse%': '100%', 'mountpoints': ['/run/archiso/bootmnt'], 'type': 'rom', 'size': '826.3M'}]}
Testing connectivity to the Arch Linux mirrors ...
Filtering available mounts {'/mnt/archinstall': MapperDev(mappername='sys-btrfs')} to those under /mnt/archinstall
Available partitions: {'/mnt/archinstall': MapperDev(mappername='sys-btrfs')}
Waiting for automatic mirror selection (reflector) to complete.
A new package mirror-list has been created: /etc/pacman.d/mirrorlist
argument of type 'NoneType' is not iterable```
Torxed commented 2 years ago

I'll have a look after I push the release, because LVM's isn't supported yet. But I want it to be :) I just need to spend some time on reworking some BTRFS logic and push the release first.