Antergos / Cnchi

A modern, flexible online system installer for Antergos Linux
GNU General Public License v3.0
291 stars 101 forks source link

Check UEFI setup #65

Closed karasu closed 10 years ago

karasu commented 10 years ago

UEFI setups need some love. Test that Cnchi works with UEFI+mbr and UEFI+ GPT

Edit: UEFI/MBR is working, UEFI/GPT is not. Follow new issue here: issue #112

DanRandazzo commented 10 years ago

do I need to start cnchi with efi option? can test it with testing iso on a macbook pro

karasu commented 10 years ago

Hi, Cnchi should detect that you're running it in a UEFI system. Please, test it and let us know the results.

DanRandazzo commented 10 years ago

Installation failed. Used today's iso. Manual partitioning

Installer downloads packages, installs them and at "install libdvdcss (704/704) 100% 100%, it just sits there and does nothing

EFI+GPT btw

lots0logs commented 10 years ago

Could you run another test and grab a copy of /tmp/cnchi.log after it hangs? Thanks for your help; it's difficult to test this properly without having a system using UEFI. This could actually be related to using GPT rather than UEFI. We will have to run more tests to be sure.

karasu commented 10 years ago

Hi, Thanks for your test. If you could run it again, do as Dustin (lots0logs) has asked. Also, run cnchi with the dv options like this: sudo ./cnchi.py -dv This will add debuging messages to cnchi.log Post it here when you're done. Thanks again.

lots0logs commented 10 years ago

Gustau, I had the installer stop at 100% (configuring grub) but there were no errors in the log. I then tried to chroot into the install and run the grub commands which is when I found what I believe to be what's causing cnchi to hang.

Generating grub configuration file ... Found linux image: /boot/vmlinuz-linux Found initrd image: /boot/initramfs-linux.img /run/lvm/lvmetad.socket: connect failed: No such file or directory WARNING: Failed to connect to lvmetad: No such file or directory. Falling back to internal scanning. /run/lvm/lvmetad.socket: connect failed: No such file or directory /run/lvm/lvmetad.socket: connect failed: No such file or directory No volume groups found <-----It hangs here, so I then killed some of the osprober process until it completed ----> /usr/lib/os-probes/50mounted-tests: line 72: 1654 Killed "$test" "$partition" "$tmpmnt" "$type" /usr/bin/os-prober: line 141: 1610 Killed "$test" "$partition" done

Note: NOT an LVM installation.... Once I rebooted, I was brought straight to command line. I then realized that cnchi had not setup user account, hostname, etc. (Even though the log stated installation was complete). I will update if I come up with anything useful to fix this.

karasu commented 10 years ago

From the arch wiki (https://wiki.archlinux.org/index.php/Encrypted_LVM):

Note: You may receive warnings like "/run/lvm/lvmetad.socket: connect failed: No such file or directory" or "WARNING: failed to connect to lvmetad: No such file or directory. Falling back to internal scanning" when running these commands. This because /run is not available inside the chroot. These warnings will not prevent the system from booting (provided everything has been done correctly), so you may continue with the installation.

So I'm afraid those errors are harmless...

If you still have that installation available, could you post here /etc/mkinitcpio.conf ? It shouldn't contain any lvm references (in the hooks line), just to be sure.

lots0logs commented 10 years ago

I don't know if those are harmless in this case or not but they may be clues. The install did not have any LVM partitions nor was it using encryption. As soon as I killed the osprober processes that had stalled, the grub script was able to complete. I'm thinking the issue of Cnchi hanging at 100% packages installed must be because it's waiting for grub script to exit. I will check the mkinitcpio.conf and update this....

Edit: Everything is normal in mkinitcpio.conf

Edit#2 I ran another install which also stalled but not the same as last time. I kept the log, two things I noticed right away:

  1. umount "device is busy" errors. Actually had it fail from the beginning twice because of this. Had to use gparted to wipe partition table before it would work. Should we add the "-l" option to the umount commands? That's what Alex said he had to do when building the iso images using Arch to avoid this particular error.
  2. It appears in the logs that grub it configured before mkinitcpio is executed. Is that happening or does it only appear that way because we are running concurrent processes?

cnchi.log - http://antergos.info/cnchi.log

DanRandazzo commented 10 years ago

my log https://gist.github.com/DaElsta/7879726

karasu commented 10 years ago

Thanks a million (both of you). Seeing Daniel logs it seems is a Grub setup problem. Dustin:

  1. Are these warnings happening after a failed installation? Because that's totally normal. Bear in mind that after a failed installation you'll have some file/process that's using /install (or some other directory inside install) so it can't be unmounted. Anyway I'll add the lazy unmount option just in case.
  2. Yep, as logs are written from different threads, you can't trust the order. BUT in this case I think is the same thread, so it's possible we're are configuring grub BEFORE mkinitcpio.... I'm sorry I'll have to check it because I'm not sure. So, should we setup grub after mkinitcpio?
lots0logs commented 10 years ago

I think the warnings were caused by Virtualbox automounting a folder I made for development. Once I disabled that, it seemed to work "okay" although we still have some work to do to make it better handle failures and other things that would cause this umount issue.

Yes, we need to run grub-mkconfig after mkinitcpio because grub's scripts have to be able to find the vmlinuz and initrd images in order for grub to actually boot.

karasu commented 10 years ago

"I think the warnings were caused by Virtualbox automounting a folder I made for development. Once I disabled that, it seemed to work "okay" although we still have some work to do to make it better handle failures and other things that would cause this umount issue."

I've added the -l parameter to some specific umount commands. I hope it will help.

"Yes, we need to run grub-mkconfig after mkinitcpio because grub's scripts have to be able to find the vmlinuz and initrd images in order for grub to actually boot."

We're doing just the opposite! :scream:

I'll fix it asap

DanRandazzo commented 10 years ago

so it's ready for a new test run? ;)

lots0logs commented 10 years ago

If you have the time, please feel free to test. We most certainly would appreciate any help! Just download the testing branch as a tarball/zip and overwrite the /usr/share/cnchi dir on the live iso with the contents of the tarball. Then launch cnchi like before with "sudo cnchi -dv" You will notice a lot of changes in cnchi beyond just fixing the grub issue. Please let us know of any observations or issues. Oh, and the KDE installation is not ready yet so don't select that ;-)

DanRandazzo commented 10 years ago

new fail, new log ;) this time it hang where it should have downloaded the first package. internet was running. https://gist.github.com/DaElsta/7903968

lots0logs commented 10 years ago

Sorry, looks like a change I made isnt merged, use my testing branch: http://github.com/lots0logs/Cnchi.git

Gustau, regarding the error in his logs. I came across it yesterday but I haven't the slightest idea how to fix so I just commented out the conditional until you could have a look.

DanRandazzo commented 10 years ago

ok, here we go again...went a little further this time but failed. https://gist.github.com/DaElsta/7905147

Another thing...I don't know if I should start a new issue for that. Is rankmirrors working correctly? As you can see in my log, cnchi chose a really slow server. Download took ages.

lots0logs commented 10 years ago

Seems we still need to make some adjustments to the order in which we run the processes that configure the system. Will let you know when we have made changes to test. Thanks for your help!

lots0logs commented 10 years ago

Gustau, I ran another test after merging our testing branches. It still hangs at the very end. To me it looks like still an issue with the timing of mkinitcpio and grub-mkconfig. They both have the same timestamp as if they were ran concurrently. Is there a way to set a conditional on the grub script to wait for mkinitcpio to return an exit code? I saved the log in the same place: http://antergos.info/cnchi.log ....

EDIT: I wasnt sure if you wanted to split these two issues so thats why I posted here. You decide how you want to handle keeping track of them :)

EDIT#2: Although the installer didn't exit successfully and froze at the end, it did complete ALMOST everything successfully. Grub was properly setup and the system booted, however the systemctl command to enable the display manager had not been done so it booted to command prompt.

DanRandazzo commented 10 years ago

my last log shows that cnchi tried to install grub before mkiniticpio and failed.

lots0logs commented 10 years ago

Did the failure have any error explanation? Was this on my testing branch? I was able to install and boot successfully after the changes I made today. (cnchi never exits but the install completes)

DanRandazzo commented 10 years ago
2013-12-11 05:26:06,357 - root - INFO - Installiere mozilla-common (697/699)
2013-12-11 04:26:06,551 - root - DEBUG - chroot: failed to run command ‘grub-install’: No such file or directory
2013-12-11 04:26:06,612 - root - DEBUG - sh: grub-mkconfig: command not found

and later on

2013-12-11 04:26:14,468 - root - DEBUG - ==> Building image from preset: /etc/mkinitcpio.d/linux.preset: 'default'
-> -k /boot/vmlinuz-linux -c /etc/mkinitcpio.conf -g /boot/initramfs-linux.img
==> Starting build: 3.12.3-1-ARCH
-> Running build hook: [base]
-> Running build hook: [udev]
-> Running build hook: [autodetect]
-> Running build hook: [modconf]
-> Running build hook: [block]
-> Running build hook: [filesystems]
-> Running build hook: [keyboard]
-> Running build hook: [fsck]
==> Generating module dependencies
==> Creating gzip initcpio image: /boot/initramfs-linux.img
bsdcpio: Failed to set default locale
==> Image generation successful
==> Building image from preset: /etc/mkinitcpio.d/linux.preset: 'fallback'
-> -k /boot/vmlinuz-linux -c /etc/mkinitcpio.conf -g /boot/initramfs-linux-fallback.img -S autodetect
==> Starting build: 3.12.3-1-ARCH
-> Running build hook: [base]
-> Running build hook: [udev]
-> Running build hook: [modconf]
-> Running build hook: [block]
==> WARNING: Possibly missing firmware for module: aic94xx
==> WARNING: Possibly missing firmware for module: smsmdtv
-> Running build hook: [filesystems]
-> Running build hook: [keyboard]
-> Running build hook: [fsck]
==> Generating module dependencies
==> Creating gzip initcpio image: /boot/initramfs-linux-fallback.img
bsdcpio: Failed to set default locale
==> Image generation successful

and yes, your testing branch

lots0logs commented 10 years ago

When did this occur? Just now? Are you using UEFI or legacy for these tests?

DanRandazzo commented 10 years ago

yesterday, MacBook uses EFI

lots0logs commented 10 years ago

Oh okay that's the reason. I got it working only a few hours ago :-)

DanRandazzo commented 10 years ago

ahh ok ;) give it a new try tonight...sry for the confusion then

lots0logs commented 10 years ago

no worries! i appreciate the help with testing!

DanRandazzo commented 10 years ago

no worries either...there's only one distro that get's the uefi stuff right on my macbook and that's OpenSUSE 13.1. The rest fails miserably and I always have to use boot-repair to make it work ;)

lots0logs commented 10 years ago

well with your help I'm sure you can soon add antergos to that list :-)

DanRandazzo commented 10 years ago

so it's ready for a new test?

karasu commented 10 years ago

Not yet! Manjaro guys are helping with this issue. I'll get back to you when I finished adding their changes. Thanks!

2013/12/14 Daniel Randazzo notifications@github.com

so it's ready for a new test?

— Reply to this email directly or view it on GitHubhttps://github.com/Antergos/Cnchi/issues/65#issuecomment-30580683 .

Antergos Dev Team

http://www.antergos.com

karasu commented 10 years ago

@DaElsta : Please, test it when you have the time.

DanRandazzo commented 10 years ago

https://gist.github.com/DaElsta/7968348 failed before downloading

Code1Eye commented 10 years ago

hello

i have an asus uefi desktop and i tested cnchi with todays iso

but before i go further there are 2 critical issues with the iso itself that prevents the iso from booting.

  1. on boot the uefi looks for vmlinuz in: /arch/boot/x86_64 while it is in: /arch/boot so it cant find the file and fails to load so i had to manualy create the x86_64 folder and copy the files in there.
  2. the usb name in the loader entry is to long for windows to set as the usb name and without it the boot fails because it cant find a device with that exact name so i changed it in the loader entry .conf from ANTERGOS201312 to ANT201312 so it fits.

after that the iso loads.

now for cnchi itself... it failed i was able to partition it and do the setup but as soon as i get to the part with the progress bar its instantly at 100% and says its trying to find the package list and it wont go any further than that.

log: https://gist.github.com/fpsgamer101/7976801

DanRandazzo commented 10 years ago

@fpsgamer101 Did you manually change cnchi to the testing version, or did you simply use the one provided on the iso? Maybe it would be helpful to include the actual version number with branch in the installer gui, at least as long as they are actual testing versions. I am not sure either, if today's iso uses the testing or stable branch. I think I already reported the other issues last week ;)

Code1Eye commented 10 years ago

@DaElsta i used the one in the iso. and looking at the options and the layout its definitely the testing one.

karasu commented 10 years ago

@fpsgamer101 : Hi, thanks for testing. We don't use UEFI ourselves so we really appreciate that you took the time.

1.on boot the uefi looks for vmlinuz in: /arch/boot/x86_64 while it is in: /arch/boot so it cant find the file and fails to load so i had to manualy create the x86_64 folder and copy the files in there.

As you can see here https://github.com/Antergos/antergos-iso/blob/master/configs/antergos/efiboot/loader/entries/archiso-x86_64-usb.conf I changed the directory location, so I don't really understand why is not working. I'll ask @faidoc , because it's him who creates the testing iso's.

  1. the usb name in the loader entry is to long for windows to set as the usb name and without it the boot fails because it cant find a device with that exact name so i changed it in the loader entry .conf from ANTERGOS201312 to ANT201312 so it fits.

Changed label in https://github.com/Antergos/antergos-iso/commit/2c9a5e6f40f9465ed07bb6415bded2741cbf25fc

Are you sure you're using testing branch of Cnchi? It should look like this: cnchi

I don't think that the testing ISO is using the testing branch of Cnchi, but I could be wrong as I don't make those images (@faidoc does).

Code1Eye commented 10 years ago

@karasu yes it looks exactly like that

faidoc commented 10 years ago

I've changed the script to use the testing branch this weekend. To test current development. These images were autogenerated during the night but I forgot to add the efi fix to the build script. I will manually launch the build script again El 15/12/2013 15:34, "karasu" notifications@github.com escribió:

@fpsgamer101 https://github.com/fpsgamer101 : Hi, thanks for testing. We don't use UEFI ourselves so we really appreciate that you took the time.

1.on boot the uefi looks for vmlinuz in: /arch/boot/x86_64 while it is in: /arch/boot so it cant find the file and fails to load so i had to manualy create the x86_64 folder and copy the files in there.

As you can see here https://github.com/Antergos/antergos-iso/blob/master/configs/antergos/efiboot/loader/entries/archiso-x86_64-usb.conf I changed the directory location, so I don't really understand why is not working. I'll ask @faidoc https://github.com/faidoc , because it's him who creates the testing iso's.

  1. the usb name in the loader entry is to long for windows to set as the usb name and without it the boot fails because it cant find a device with that exact name so i changed it in the loader entry .conf from ANTERGOS201312 to ANT201312 so it fits.

Changed label in Antergos/antergos-iso@2c9a5e6https://github.com/Antergos/antergos-iso/commit/2c9a5e6f40f9465ed07bb6415bded2741cbf25fc

Are you sure you're using testing branch of Cnchi? It should look like this: [image: cnchi]https://f.cloud.github.com/assets/175797/1751063/25c16f82-65c8-11e3-9530-ec888e086817.png

I don't think that the testing ISO is using the testing branch of Cnchi, but I could be wrong as I don't make those images (@faidochttps://github.com/faidocdoes).

— Reply to this email directly or view it on GitHubhttps://github.com/Antergos/Cnchi/issues/65#issuecomment-30619547 .

karasu commented 10 years ago

@faidoc :As always, great thinking.

@fpsgamer101 : Ups, then I'm not sure what's wrong... I was using reflector to do some tests and maybe it is not in our live CD. I've removed it so it doesn't bother you guys that are doing these UEFI tests... but I really don't know if this was the problem. Let me do some checks and get back to you.

lots0logs commented 10 years ago

@karasu reflector is on the livecd, I ran some tests after your changes to the mirror script in cnchi. I was using the 12/8 image though....

On Sun 08 Dec 2013 02:27:36 PM CST, Daniel Randazzo wrote:

Installation failed. Used today's iso. Manual partitioning

  • /dev/sda1 /boot/efi fat32 (already existed for macos)
  • /dev/sda2 macos
  • /dev/sda3 macos
  • /dev/sda4 / ext4
  • /dev/sda5 /home ext4

Installer downloads packages, installs them and at "install libdvdcss (704/704) 100% 100%, it just sits there and does nothing

— Reply to this email directly or view it on GitHub https://github.com/Antergos/Cnchi/issues/65#issuecomment-30091820.

Dustin Falgout Antergos Dev Team

E-Mail: dustin@falgout.us mailto:dustin@falgout.us Google/Skype: dustinfalgout IRC Chat: #antergos http://webchat.freenode.net/?channels=antergos&uio=d4

http://antergos.com/

DanRandazzo commented 10 years ago

uefi boot works with 2013-12-16, installer hangs at "getting package list"

Code1Eye commented 10 years ago

installer hangs for me to. but i already said that in my first post.

lots0logs commented 10 years ago

If one of you guys have the time, try launching cnchi from terminal (close it when it opens at startup) using this command: sudo -E cnchi -dv -p data/packages.xml I believe the issue is a version mismatch when cnchi tries to download the package list from our server. Thanks!

faidoc commented 10 years ago

I've uploaded the packages-0.5.xml file to our server and set the cnchi version in testing to 0.5 so it should work ok

2013/12/16 Dustin Falgout notifications@github.com

If one of you guys have the time, try launching cnchi from terminal (close it when it opens at startup) using this command: sudo -E cnchi -dv -p data/packages.xml I believe the issue is a version mismatch when cnchi tries to download the package list from our server. Thanks!

— Reply to this email directly or view it on GitHubhttps://github.com/Antergos/Cnchi/issues/65#issuecomment-30704058 .

Alexandre Filgueira - http://www.antergos.com

Code1Eye commented 10 years ago

i cant test the packege thing now cause i am away from my uefi pc right now but i forgot to mention that tthe uefi boot list is positioned wierd for me(the one where you select the "Antergos x86_64 UEFI USB" option) its aligned top left instead of being centered

so its

      text
      text             
      text

instead of

                                            text
                                            text
                                            text
DanRandazzo commented 10 years ago

finally had the time for another test...used iso 16.12.2013 with manually downloaded cnchi-testing.

cnchi -dv still hangs at packages.xml

so I tried

cnchi -dv -p data/packages.xml hangs at downloading antergos-testing.db

lots0logs commented 10 years ago

I ran a test as well and it looks like we've got something completely different here. I'll start a new issue to keep things organized.

lots0logs commented 10 years ago

Issue #92 fixed with commit 35a14f1

@DaElsta If you would like to test again, use my testing branch until it gets merged. I am not sure if you are interested but the KDE install could use some testing, I finished setting it up today :)

PS> use this command "sudo -E cnchi -dv -p /usr/share/cnchi/packages.xml" to launch cnchi

Code1Eye commented 10 years ago

i tested with todays iso.

Test 1: sudo cnchi -dv

Test 2: sudo -E cnchi -dv -p /usr/share/cnchi/packages.xml

here's the errors i got https://gist.github.com/fpsgamer101/7976801