pieroproietti / penguins-eggs

On the road of Remastersys, Refracta, Systemback and father Knoppix!
https://penguins-eggs.net
394 stars 44 forks source link

Krill installer fails on actual hardware #245

Closed ChrisJackHowe closed 1 year ago

ChrisJackHowe commented 1 year ago

Hello, I am having problems using the krill installer on a certain machine. This issue occurs when the iso is being installed on actual hardware instead of a vm. The iso in question succeeds in installing on a virtual box machine. Before beginning this project, I tested penguins-eggs on the target machine by creating an iso with a VM and installing the iso on the target machine with calamares.

Configuration

I am using ubuntu 22.04

Machine

Errors I am seeing

The installation is failing at various points of the installer process. One possible problem I noticed is that krill is displaying Erase disk /dev/sda when it should be showing /dev/nvme01 A little more information that may be useful is that when trying to install from an iso created with a vm, the installation process takes almost no time and does not decompress the file system. When installing from an iso created with the target machine, the installation process gets partially through the installation process.

With an iso generated using the same hardware that it will be installed on later I get this error. eggs >>> {"errno":-28,"syscall":"write","code":"ENOSPC","name":"ShellJSInternalError"} The installation step is machineid (progress 46%)

With an iso generated from a vm being applied to the real machine I get these errors eggs >>> {"errno":-2,"syscall":"open","code":"ENOENT","path":"/temp/calamares-krill-root/etc/initramfs-tools/conf.d/resume"}. The installation step is Create hostname (progress 64%)

eggs >>> {"errno:-2,"syscall":"open","code":"ENOENT","path":"/tmp/calamares-krill-root/etc/default/grub"}/ The installation step is bootloader-config (progress 82%)

How to recreate this issue

error occurs while running/usr/bin/eggs install -un I have also tested /usr/bin/eggs install without the flags, along with attempting the installation with and without internet.

eggs.yaml is generated from this bash

version: $(eggs version | grep penguin-eggs/ | cut -c15-21)
snapshot_dir: /home/eggs/
snapshot_prefix: $prefix-
snapshot_excludes: /usr/local/share/penguins-eggs/exclude.list
snapshot_basename: $base
user_opt: $live_user  
user_opt_passwd: '$live_user_pass'
root_passwd: '$live_root_pass' 
theme: eggs 
force_installer: false
make_efi: true
make_md5sum: false
make_isohybrid: true
compression: zstd -b 256K -Xcompression-level 1
ssh_pass: true
timezone: America/New_York
locales_default: en_US.UTF-8
locales:
  - en_US.UTF-8
pmount_fixed: false
machine_id: $(cat /var/lib/dbus/machine-id)
vmlinuz: /boot/vmlinuz-$(uname -r)
initrd_img: /boot/initrd.img-$(uname -r)
EOF

krill .yaml

# Penguin's eggs
# krill.yaml
---
# welcome (put your language, example: it_IT.UTF-8)
language: 'en_US.UTF-8'

# location (put your location, example region: "Europe", zone: "Rome")
region: 'America'
zone: 'New_York'

# keyboard (put your values example: keyboardModel: "pc105", keyboardLayout: "it")
keyboardModel: 'pc105'
keyboardLayout: 'us'
keyboardVariant: ''
keyboardOption: ''

# partition (leave it unchanged)
installationDevice: ''
installationMode: 'standard'
filesystemType: 'ext4'
userSwapChoice: 'small'

# users (Here you can put your default user, password, etc)
name: 'operator'
fullname: 'operator'
password: 'operator'
rootPassword: '1234'
autologin: true
hostname: ''

# network (leave it unchanged)
iface: ""
addressType: 'dhcp'
address: ''
netmask: ''
gateway: ''
domain: ''
dns: ''
pieroproietti commented 1 year ago

Thanks for the report, I will try to investigate.

ChrisJackHowe commented 1 year ago

any news?

pieroproietti commented 1 year ago

No. Just Yesterday night i was able to emulate nvme on my proxmox VM, but Just replicate the problem not other

Il mar 13 giu 2023, 06:23 ChrisJackHowe @.***> ha scritto:

any news?

— Reply to this email directly, view it on GitHub https://github.com/pieroproietti/penguins-eggs/issues/245#issuecomment-1588504634, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAHKBFPNNFNUZB2LK5VJSC3XK7TKZANCNFSM6AAAAAAZCCGDUI . You are receiving this because you commented.Message ID: @.***>

pieroproietti commented 1 year ago

Well, with a little surprise I just installed a remastered ubuntu 22.04 with gnome on a VM and I must say its working

test1-krill-un

just: sudo eggs install -un

pieroproietti commented 1 year ago

The same with calamares, note: just freeze video and you can't see the calamares show, but still working

ubuntu-22-04-calamares-installing

pieroproietti commented 1 year ago

My problem is I can't test on real hardware...

pieroproietti commented 1 year ago

Later I will go to test NVMe on real hardware in the shop of a friend of mine, any news from your side?

pieroproietti commented 1 year ago

Well, after some testing I think I understand what is going on:

The problem arises from the fact that on a real machine I always have /dev/sda and I go to format it - or at least that happened to me in the specific case.

test-1

pieroproietti commented 1 year ago

What I have seen is that calamares, unlike krill rightly detects records that can be used... you have to find out how.

calamares-nvme-ok

pieroproietti commented 1 year ago

After a bit of trial and error, I found a buffer solution: whereas previously krill used the first drive for installation, now it asks for the selection of the drive on which to install.

It can be done better, however, at the moment it works, both on VM and on real hardware.

It will be released as version 9.5.3, already in testing.

select-installations-disk

ChrisJackHowe commented 1 year ago

Yes! I just tested out the changes you made to the newest version and when I select the correct drive, I can get a successful installation. Thank you for the quick patch!