** Description changed:

+ === Begin SRU Template ===
+ [Description]
+ Installing a node configured to boot in EFI/UEFI mode results in Ubuntu 
registering GRUB with the firmware, thus overriding the node's original 
PXE-boot setting. This can be seen via efibootmgr after the node has been 
started by running 'efibootmgr -v'. 
+ 
+ The solution is to invoke grub-install with '--no-nvram'.  That
+ instructs grub to not update the PXE boot setting.
+ 
+ Curtin code detects if the --no-nvram flag is available and uses it if
+ it is.
+ 
+ [Impact] 
+ MAAS generally works by expecting a system to always request boot from the 
network.  MAAS then instructs it to boot from the local disk when it is 
installed, and feeds it network boot information for install or commissioning 
or enlistment.
+ 
+ The issue here is that we would install to the system and configure the
+ system to boot from the local disk.  The end result is that installation
+ works once, but when the system is returned to maas, a subsequent
+ installation will fail.
+ 
+ [Test Case]
+ a.) enlist a EFI/UEFI system into maas with network boot configured
+ b.) acquire and start system to install 14.04
+ c.) release system
+ d.) acquire and start system to install 14.04
+ 
+ Currently step 'd' will boot from local disk.  After fix is applied,
+ system will boot from network and perform install correctly.
+ 
+ [Regression Potential]
+ Seems fairly unlikely for regression.  I can't think of a specific case that 
would fail that previously succeeded.
+ 
+ [Other]
+ As grub in 12.04 does not support the --no-nvram flag, installation of 12.04 
will still cause this failure path.
+ 
+ === End SRU Template ===
+ 
  Installing a node configured to boot in EFI/UEFI mode results in Ubuntu
  registering GRUB with the firmware, thus overriding the node's original
  PXE-boot setting. This can be seen via efibootmgr after the node has
  been started:
  
  $ sudo efibootmgr -v
  BootCurrent: 0006
  Timeout: 0 seconds
  BootOrder: 0006,000E,0007,0008,0009,000A,000B,000C,000D
- Boot0000  Setup       
- Boot0001  Boot Menu   
- Boot0002  Diagnostic Splash Screen    
- Boot0003  Lenovo Diagnostics  
- Boot0004  Startup Interrupt Menu      
- Boot0005  ME Configuration Menu       
+ Boot0000  Setup
+ Boot0001  Boot Menu
+ Boot0002  Diagnostic Splash Screen
+ Boot0003  Lenovo Diagnostics
+ Boot0004  Startup Interrupt Menu
+ Boot0005  ME Configuration Menu
  Boot0006* ubuntu      
HD(1,800,100000,2017753f-1b99-424d-811b-91c2e8c3c816)File(\EFI\ubuntu\shimx64.efi)
  Boot0007* USB CD      
030a2400d23878bc820f604d8316c068ee79d25b86701296aa5a7848b66cd49dd3ba6a55
  Boot0008* USB FDD     
030a2400d23878bc820f604d8316c068ee79d25b6ff015a28830b543a8b8641009461e49
  Boot0009* ATAPI CD0   
030a2500d23878bc820f604d8316c068ee79d25baea2090adfde214e8b3a5e471856a35401
  Boot000A* ATA HDD0    
030a2500d23878bc820f604d8316c068ee79d25b91af625956449f41a7b91f4f892ab0f600
  Boot000B* ATA HDD1    
030a2500d23878bc820f604d8316c068ee79d25b91af625956449f41a7b91f4f892ab0f601
  Boot000C* ATA HDD2    
030a2500d23878bc820f604d8316c068ee79d25b91af625956449f41a7b91f4f892ab0f602
  Boot000D* USB HDD     
030a2400d23878bc820f604d8316c068ee79d25b33e821aaaf33bc4789bd419f88c50803
  Boot000E* PCI LAN     
030a2400d23878bc820f604d8316c068ee79d25b78a84aaf2b2afc4ea79cf5cc8f3d3803
  Boot000F* IDER BOOT CDROM     ACPI(a0341d0,0)PCI(16,2)ATAPI(0,1,0)
  Boot0010* IDER BOOT Floppy    ACPI(a0341d0,0)PCI(16,2)ATAPI(0,0,0)
  Boot0012  Rescue and Recovery
  
  Note that the system's BootOrder is set to load \EFI\ubuntu\shimx64.efi
  (which in turn launches GRUB; item Boot0006) from the hard disk, and to
  PXE-boot (item Boot000E) second. When the process began, it was set to
  PXE-boot first.
  
  This works fine for bringing up a node initially, but it's different
  from the way a BIOS-mode installation works, in which the system is left
  PXE-booting by default. The UEFI approach will result in an inability to
  delete the node and re-enlist it, or even to stop the node and then re-
  start it and have Ubuntu re-installed, without either manually running
  efibootmgr or delete the file or partition to which the boot manager
  entry points.
  
  I'm attaching my MAAS log files. The UEFI-booting system is
  192.168.0.56.
  
  Here's the MAAS server version information:
  
  $ dpkg -l '*maas*'|cat
  Desired=Unknown/Install/Remove/Purge/Hold
  | Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
  |/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
  ||/ Name                                                  Version             
                                Architecture Description
  
+++-=====================================================-===================================================-============-===============================================================================
  ii  maas                                                  
1.5+bzr2252-0ubuntu1                                all          MAAS server 
all-in-one metapackage
  ii  maas-cli                                              
1.5+bzr2252-0ubuntu1                                all          MAAS command 
line API tool
  ii  maas-cluster-controller                               
1.5+bzr2252-0ubuntu1                                all          MAAS server 
cluster controller
  ii  maas-common                                           
1.5+bzr2252-0ubuntu1                                all          MAAS server 
common files
  ii  maas-dhcp                                             
1.5+bzr2252-0ubuntu1                                all          MAAS DHCP 
server
  ii  maas-dns                                              
1.5+bzr2252-0ubuntu1                                all          MAAS DNS server
  ii  maas-region-controller                                
1.5+bzr2252-0ubuntu1                                all          MAAS server 
complete region controller
  ii  maas-region-controller-min                            
1.5+bzr2252-0ubuntu1                                all          MAAS Server 
minimum region controller
  ii  python-django-maas                                    
1.5+bzr2252-0ubuntu1                                all          MAAS server 
Django web framework
  ii  python-maas-client                                    
1.5+bzr2252-0ubuntu1                                all          MAAS python 
API client
- ii  python-maas-provisioningserver                        
1.5+bzr2252-0ubuntu1                                all          MAAS server 
provisioning libraries
+ ii  python-maas-provisioningserver                        
1.5+bzr2252-0ubuntu1                                all          MAAS server

-- 
You received this bug notification because you are a member of Ubuntu
Server Team, which is subscribed to curtin in Ubuntu.
https://bugs.launchpad.net/bugs/1311827

Title:
  UEFI installation overrides firmware PXE-boot settings

To manage notifications about this bug go to:
https://bugs.launchpad.net/curtin/+bug/1311827/+subscriptions

-- 
Ubuntu-server-bugs mailing list
[email protected]
Modify settings or unsubscribe at: 
https://lists.ubuntu.com/mailman/listinfo/ubuntu-server-bugs

Reply via email to