Project

General

Profile

action #33682

Updated by nicksinger almost 6 years ago

#33223 showed us how to setup a SCSI-drive to kickstart a SLES installation from the initramfs by using kexec to chain-load several "bootloader" steps. 
 This knowledge now needs to be preserved for future in form of documentation. This includes ( **ACs** ): 

 * How to setup the "magic" bootstrap SCSI-disk 
   * Partitioning 
   * `zipl` installation 
 * How to use qnipl (partly done in https://github.com/nicksinger/dracut-qnipl/blob/master/README.md) 
 * Limitations/Pitfalls/Improvements 
 * Reproduce the setup 

 Notes: 

 * https://progress.opensuse.org/projects/openqav3/wiki#s390x-Test-Organisation would be maybe a good place to put all the info 
 * Move dracut-qnipl into a non-private repo (maybe openQA org?) 
 * bootstrap SCSI-disk is a shared medium between several LPARs and Infra/gschlotter is needed to link LPAR <-> SCSI-bootstrap-disk 
 * Example cmd to start an LPAR remote (e.g. from a x86_64 host): `snipl -f ./snipl.conf -s P0069A27-LP3 -A fa00 --wwpn_scsiload 500507630713d3b3 --lun_scsiload 4001401100000000 --ossparms_scsiload "install=http://openqa.suse.de/assets/repo/SLE-15-Installer-DVD-s390x-Build533.2-Media1 hostip=10.161.159.3/20 gateway=10.161.159.254 Nameserver=10.160.0.1 Domain=suse.de ssh=1 regurl=http://all-533.2.proxy.scc.suse.de"` 

 Notes about the "magic" bootstrap disk: 

 ``` 
 linux-kboz:/boot/zipl # sfdisk -d /dev/sda  
 label: dos 
 label-id: 0x1323e80f 
 device: /dev/sda 
 unit: sectors 

 /dev/sda1 : start=          2048, size=      20969472, type=83 
 ``` 

 ``` 
 linux-kboz:/tmp/test # mount /dev/mapper/36005076307ffd3b30000000000000111-part1 /tmp/test 
 linux-kboz:/tmp/test # find . 
 . 
 ./zipl 
 ./zipl/bootmap 
 ./image_installer 
 ./lost+found 
 ./initrd_installer 
 ./zipl.conf 
 ./initrd_zipl 
 ./image_4.12.14-16.2 
 ./image_zipl 
 ./custom_initramfs 
 ./image_4.12.14-11.2 
 ``` 

 ``` 
 linux-kboz:/tmp/test # find . 
 . 
 ./zipl 
 ./zipl/bootmap 
 ./image_installer 
 ./lost+found 
 ./initrd_installer 
 ./zipl.conf 
 ./initrd_zipl 
 ./image_4.12.14-16.2 
 ./image_zipl 
 ./custom_initramfs 
 ./image_4.12.14-11.2 
 linux-kboz:/tmp/test # file * 
 custom_initramfs:     XZ compressed data      <- generated by dracut with qnipl-module enabled 
 image_4.12.14-11.2: Linux S390 
 image_4.12.14-16.2: Linux S390 
 image_installer:      Linux S390 
 image_zipl:           Linux S390 
 initrd_installer:     XZ compressed data 
 initrd_zipl:          XZ compressed data 
 lost+found:           directory 
 zipl:                 directory 
 zipl.conf:            ASCII text               <- IIRC needed for `zipl` to generate/write the z-bootloader 
 ``` 

 ``` 
 linux-kboz:/tmp/test # cat zipl.conf  
 ## This file was written by 'grub2-install/grub2-zipl-setup' 
 ## filling '/etc/default/zipl2grub.conf.in' as template 
 ## with values from '/etc/default/grub'. 
 ## In-place modifications will eventually go missing! 

 [defaultboot] 
 defaultmenu = menu 

 [custom] 
     target = /mnt/network_boot/zipl 
     ramdisk = /mnt/network_boot/custom_initramfs 
     image = /mnt/network_boot/image_4.12.14-16.2 
     parameters = "rd.break=initqueue TERM=dumb plymouth.enable=0 " 

 :menu 
     target = /mnt/network_boot/zipl 
     timeout = 0 
     default = 1 
     prompt = 1 
     1 = custom 
 ```

Back