How to create your own bootable Multi-DVD
Contents
Creating and configuring the images
For this example, I'm using an rp4440 with HPUX 11.31:
1. Determine what large (non-essential) directories can be omitted from the core-operating system archive, and included in subsequent archives. In this example, we are assuming that the /opt directory will be put into a second archive. It may require some trial and error to exclude enough data to make an archive small enough to fit on the DVD/CD. In addition, keep in mind that the LIF data on the first CD requires space.
2. Create the first core-operating system archive, use the make_sys_image command and -g option to list the files to be included.
2.a. Create a file_content file to define the volume groups and/or filesystems that you want to include or exclude from the archive.
# cat /ign/file_content inc_entire vg00 exclude /var/tmp exclude /tmp exclude /opt exclude /ign
2.b. Verify what disks or volume groups will be included in the file_list (Mark with the number 1).
# /opt/ignite/lbin/list_expander -d -f /ign/file_content In? dsk/vg name minor# Associated disks 0 v /dev/vgcores 0x01 /dev/disk/disk0 1 v /dev/vg00 0x00 /dev/disk/disk4 0 v /dev/vgignite 0x02 /dev/disk/disk2 0 v /dev/vglvm2 0x00 /dev/dsk/c3t12d0
2.c. Calculate and verify the aproximate archive size with the list_expander "-s" flag.
# /opt/ignite/lbin/list_expander -s -f /ign/file_content 4698630
2.d Create the file_list file (Some /opt files may be required and will be part of this file).
# /opt/ignite/lbin/list_expander -f /ign/file_content > /ign/file_list
2.e Create system archive.
# mkdir /ign/archives # /opt/ignite/data/scripts/make_sys_image -s local -d /ign/archives \ -R -g /ign/file_list -a 4698630 -w /ign/core_archive.log
3. Create your second archive containing the rest of the system (in this example, the /opt directory). Note that the archive content must not contain absolute paths. This is especially true for core-operating system archives, but is a good idea for other archives as well. Using pax to create the tar archive.
# cd / # pax -wx ustar -f - opt | gzip > /ign/archive2.tar.gz
4. Copy and edit the configuration file template /opt/ignite/data/examples/core11.cfg for the first core-operating system archive.
4.a Copy configuration files.
# cp /opt/ignite/data/examples/B.11.31.archives.cfg /ign # cp /opt/ignite/data/examples/noncore.cfg /ign/archive2.cfg
4.b Estimate OS and opt archive filesystems size.
# /opt/ignite/lbin/archive_impact -t -g /ign/archives/<OS_archive>.gz # /opt/ignite/lbin/archive_impact -t -g /ign/archive2.tar.gz.gz
4.c Edit configuration files.
<<< B.11.31.archives.cfg >>> sw_source "hp client archives" { description = "MultiDisk #1" load_order = 0 source_format = archive source_type = "DSK" change_media = FALSE post_load_script = "/opt/ignite/data/scripts/os_arch_post_l" post_config_script = "/opt/ignite/data/scripts/os_arch_post_c" } #----------------------------------------------------------------------- # The PA archive #----------------------------------------------------------------------- (is_hppa) { init sw_sel "MultiDisk #1" { description = "MultiDisk #1 B.11.31 PA Core" sw_source = "hp client archives" sw_category = "HPUXEnvironments" archive_type = gzip tar archive_path = "archives/delta.gz" # # Here we describe how much space is used in each of the mentioned # subdirectories. This information is obtained by running the # "archive_impact" command against an archive as follows: # /opt/ignite/lbin/archive_impact -tg B.11.31_archive_PA.gz # The output from the above command should replace the "impacts" # statements below. # impacts = "/" 918Kb impacts = "/.dt" 71Kb impacts = "/.mozilla" 2485Kb impacts = "/.sh_history" 15Kb impacts = "/.ssh" 18Kb impacts = "/.sw" 199Kb impacts = "/.swa" 11072Kb impacts = "/Mail" 31Kb impacts = "/dev" 20Kb impacts = "/etc" 213622Kb impacts = "/ignite" 1Kb impacts = "/labs" 2Kb impacts = "/opt" 227104Kb impacts = "/sbin" 111315Kb impacts = "/stand" 227837Kb impacts = "/testfs" 1Kb impacts = "/usr" 2113061Kb impacts = "/var" 1652262Kb } = TRUE }
<<< archive2.cfg >>> sw_source "Per-Discipline Packs" { description = "MultiDisk #2" source_format = archive source_type = "DSK" # Change this to be your NFS server's IP and path: # nfs_source = "14.12.99.113:/var/opt/ignite/archives" change_media = TRUE } HARDWARE_MODEL ~ "9000/*" { ###################################################### ## Software Selections ##################################################### sw_sel "MultiDisk #2" { description = "MultiDisk #2 OPT Archive" sw_source = "Per-Discipline Packs" archive_type = gzip tar archive_path = "archive2.tar.gz" sw_category = "Disciplines" impacts = "/" 1Kb impacts = "/opt" 5456872Kb } }
4.d Check configuration files integriy
# instl_adm -f /ign/B.11.31.archives.cfg # instl_adm -f /ign/archive2.cfg
5. Create LIF and ISO files, then combine:
# /opt/ignite/bin/make_medialif -o 64w -r B.11.31 \ -f /opt/ignite/data/Rel_B.11.31/config -f /ign/B.11.31.archives.cfg \ -f /ign/archive2.cfg -l /ign/bootvol.lif
# /opt/ignite/bin/instl_adm -b -F /ign/bootvol.lif
(PA-RISC) # /opt/ignite/lbin/mkisofs -U -max-iso9660-filenames -R -eltorito-alt-boot \ -no-emul-boot -b bootvol.lif -o /ign/iso/image.iso /ign
(IA64) # cp -p /opt/ignite/boot/Rel_B.11.31/EFI_CD_image /ign # /opt/ignite/lbin/mkisofs -D -R -U \ -max-iso9660-filenames \ -no-emul-boot -b EFI_CD_image \ -eltorito-alt-boot -no-emul-boot -b bootvol.lif \ -o /ign/iso/image.iso /ign
Combine the image. # /opt/ignite/lbin/instl_combine -C /ign/iso/image.iso
6. If a DVD burner is available, you can issue the following command to create the core archive:
# /opt/ignite/lbin/growisofs -Z /dev/rdsk/c0t0d0=/ign/iso/image.iso
or just copy the ISO image to a PC, then burn it with your preferred burning application.
7. Create ISO file for the second archive:
(PA-RISC) # /opt/ignite/lbin/mkisofs -U -max-iso9660-filenames -R \ -o /ign/iso/image2.iso /ign/archive2.tar.gz
(IA64) # /opt/ignite/lbin/mkisofs -U -max-iso9660-filenames -R \ -o /ign/iso/image2.iso /ign/archive2.tar.gz
8. Repeat Step #6 for the second archive.
Modifying os_arch_post_l
Instances that may require modifying os_arch_post_l There are circumstances in which you may want to modify os_arch_post_l. For example, the following excerpt is from the os_arch_post_l script:
# Networking files: # /etc/hosts # /etc/resolv.conf # /etc/rc.config.d/namesvrs # By default, these files will be constructed from the information # in the config file. The starting point for the hosts file is the # /usr/newconfig version, which just has a loopback entry. The other files # are built from scratch. To get the archive versions of these files, # uncomment only the save_file lines here and comment out the rm line. # Using save_file will restore the file as-is from the archive. Using # merge_file will allow Ignite-UX to make changes to the file based # on what the config file or changes made in the UI. # #save_file /etc/hosts #merge_file /etc/hosts rm -f /etc/resolv.conf #save_file /etc/resolv.conf #merge_file /etc/resolv.conf #save_file /etc/rc.config.d/namesvrs #merge_file /etc/rc.config.d/namesvrs:
By default, during an installation from an archive, the final versions of these files are taken from /usr/newconfig. If you have a complex configuration that needs to be preserved from the archive version of the file, you must uncomment the corresponding merge_file entry.
For example, if your /etc/hosts file contains extra entries that you need to preserve, you would uncomment the merge_file /etc/hosts line in your os_arch_post_l script. In the case of /etc/hosts, it may not be a good idea to use save_file as it means that any changes Ignite-UX made to /etc/hosts would be overwritten by the version saved from the archive.
In summary you can use:
- save_file to keep the version of the file from the Operating System archive preventing Ignite-UX from making changes to the file;
- merge_file to keep the version of the file from the Operation System archive but allow Ignite-UX to make customizations to it based upon the configuration for the installation session.
Booting off the DVD
1. Boot the server like you will normally do from the DVD. Select "Install HP-UX", "Install from Media" and "Advanced Install". At the itool interface, make sure you select the correct disk path.
+ /opt/ignite/bin/itool () + ¦ ¦ ¦ +-------++----------++--------++-------------++----------+ ¦ ¦ ¦ Basic ¦¦ Software ¦¦ System ¦¦ File System ¦¦ Advanced ¦ ¦ ¦ ¦ \-------------------------------------------------------------------+¦ ¦ ¦ ¦¦ ¦ ¦ Configurations: [ HP-UX B.11.31 Default ->] [ Description... ] ¦¦ ¦ ¦ ¦¦ ¦ ¦ Environments: [ MultiDisk #1 B.11.31 PA Co ->] (HP-UX B.11.31) ¦¦ ¦ ¦ ¦¦ ¦ ¦ [ Root Disk ] HP_36.4GST336753LC, 0/1/1/1.0x8.0x0, 347> ¦¦ ¦ ¦ ¦¦ ¦ ¦ File System: [ Logical Volume Manager (LVM) with VxFS ->] ¦¦ ¦ ¦ ¦¦ ¦ ¦ [ Root Swap (MB)... ] 2048 Physical Memory (RAM) = 2046 MB ¦¦ ¦ ¦ ¦¦ ¦ ¦ [ Languages... ] English [ Keyboards... ] [ Additional... ]¦¦ ¦ ¦ ¦¦ ¦ +---------------------------------------------------------------------------+¦ ¦ [ Show Summary... ] [ Reset Configuration ] ¦ ¦------------------------------------------------------------------------------¦ ¦ [ Go! ] [ Cancel ] [ Help ] ¦ +------------------------------------------------------------------------------+
2. Go to the software section and change "MultiDisk #2 OPT Archive" from "No" to "Yes" by pressing the spacebar. Use tab key to move around the interface.
+ /opt/ignite/bin/itool () + ¦ ¦ ¦ +-------++----------++--------++-------------++----------+ ¦ ¦ ¦ Basic ¦¦ Software ¦¦ System ¦¦ File System ¦¦ Advanced ¦ ¦ ¦ +--------/ \-------------------------------------------------------+¦ ¦ ¦ ¦¦ ¦ ¦ Category Marked ? Product Description ¦¦ ¦ ¦+-----------------+ +----------------------------------------------------+ ¦¦ ¦ ¦¦ All ^ ¦ Yes MultiDisk #2 MultiDisk #2 OPT Archive ^ ¦¦ ¦ ¦¦ Disciplines ¦ ¦¦ ¦ ¦¦ Uncategorized ¦ ¦¦ ¦ ¦¦ ¦ ¦¦ ¦ ¦¦ ¦ ¦¦ ¦ ¦¦ ¦ ¦¦ ¦ ¦¦ v ¦ v ¦¦ ¦ ¦+-----------------+ +----------------------------------------------------+ ¦¦ ¦ ¦ ¦¦ ¦ ¦ Sort by: [ Product ->] [ Change Depot Location... ] ¦¦ ¦ +---------------------------------------------------------------------------+¦ ¦ [ Show Summary... ] [ Reset Configuration ] ¦ ¦------------------------------------------------------------------------------¦ ¦ [ Go! ] [ Cancel ] [ Help ] ¦ +------------------------------------------------------------------------------+
3. You can select "Go!". The itool interface will automatically take you to the System Tab and request you to enter the hostname, IP address and Subnet mask. When finish select "Go!" again.
+ /opt/ignite/bin/itool () + ¦ ¦ ¦ +-------++----------++--------++-------------++----------+ ¦ ¦ ¦ Basic ¦¦ Software ¦¦ System ¦¦ File System ¦¦ Advanced ¦ ¦ ¦ +--------------------/ \---------------------------------------------+¦ ¦ ¦ ¦¦ ¦ ¦ Final System Parameters: [ Set parameters now ->] ¦¦ ¦ ¦ ¦¦ ¦ ¦ +------------------------------------------------------------------+ ¦¦ ¦ ¦ ¦ Hostname: ¦ ¦¦ ¦ ¦ ¦ ¦ ¦¦ ¦ ¦ ¦IP Address: Subnet Mask: ¦ ¦¦ ¦ ¦ ¦ ¦ ¦¦ ¦ ¦ ¦ Time: 16:55 Day: 30 Month: [ January ->] Year: 2009 ¦ ¦¦ ¦ ¦ +------------------------------------------------------------------+ ¦¦ ¦ ¦ [ Set Time Zone ( None )... ] [ Network Services... ] ¦¦ ¦ ¦ [ Set Root Password... ] [ Additional Interface(s)... ] ¦¦ ¦ ¦ ¦¦ ¦ +---------------------------------------------------------------------------+¦ ¦ [ Show Summary... ] [ Reset Configuration ] ¦ ¦------------------------------------------------------------------------------¦ ¦ [ Go! ] [ Cancel ] [ Help ] ¦ +------------------------------------------------------------------------------+
4. Create a new password if desired.
++ itool Confirmation ++ ¦¦ ¦¦ ¦¦ All data will be destroyed on the following disks: ¦¦ ¦¦ ¦¦ ¦¦ Addr Disk Size(MB) Description ¦¦ ¦¦ +--------------------------------------------------------------+ ¦¦ ¦¦ ¦ ^ ¦¦ ¦¦ ¦ ¦¦ ¦¦ ¦ + Confirmation + ¦¦ ¦¦ +---¦ ¦ ¦¦ ¦¦ ¦ You set the final system parameters, but did not set the root ¦ ¦¦ ¦¦ The ¦ password. Do you want to proceed with the installation? ¦ ¦¦ ¦¦ ¦---------------------------------------------------------------¦ ¦¦ ¦¦ +---¦ [[ Yes ]] [ No ] ¦ ¦¦ ¦¦ ¦ +---------------------------------------------------------------+ ¦¦ ¦¦ ¦ ¦¦ ¦¦ ¦ ¦¦ ¦¦ ¦ ¦¦ ¦¦ ¦ ¦¦ ¦¦ ¦ v ¦¦ ¦¦ +--------------------------------------------------------------+ ¦¦ ¦¦----------------------------------------------------------------------------¦¦ +¦ [ Go! ] [ < Back ] [ Help ] ¦+ +----------------------------------------------------------------------------+
5. The installation process will begin. When require the system requests the second disk:
... * Processed 80% of archive * Processed 90% of archive * Completed 100% of archive * Tue Feb 03 13:17:00 EST 2009: Completed archive load of the source (MultiDisk #1 B.11.31 PA Core). * Executing user specified script: "/opt/ignite/data/scripts/os_arch_post_l". * Relocating RAM filesystems. * Running the ioinit command ("/sbin/ioinit -c") * Creating device files via the insf command. insf: Installing special files for sdisk instance 6 address 0/0/3/0.0.0.0 insf: Installing special files for sdisk instance 0 address 0/1/1/0.1.0 insf: Installing special files for sdisk instance 1 address 0/1/1/1.0.0 insf: Installing special files for sdisk instance 2 address 0/1/1/1.8.0 insf: Installing special files for sdisk instance 3 address 0/1/1/1.10.0 insf: Installing special files for sdisk instance 4 address 0/1/1/1.12.0 insf: Installing special files for sdisk instance 5 address 0/1/1/1.14.0 insf: Installing special files for esdisk instance 7 address 64000/0xfa00/0x0 insf: Installing special files for esdisk instance 8 address 64000/0xfa00/0x1 insf: Installing special files for esdisk instance 9 address 64000/0xfa00/0x2 insf: Installing special files for esdisk instance 10 address 64000/0xfa00/0x3 insf: Installing special files for esdisk instance 11 address 64000/0xfa00/0x4 insf: Installing special files for esdisk instance 12 address 64000/0xfa00/0x5 insf: Installing special files for esdisk instance 13 address 64000/0xfa00/0x6 insf: Installing special files for pseudo driver dlpi insf: Installing special files for pseudo driver kepd insf: Installing special files for pseudo driver framebuf insf: Installing special files for pseudo driver sad * Creating the system file. Creating your system file in the file /tmp/ign_configure/tstand.system * Constructing the bootconf file. * Setting primary boot path to "/dev/rdisk/disk9". Primary boot path set to 0/1/1/1.0x8.0x0 (/dev/rdisk/disk9) * Processing the archive source (Second Archive). ======================================================================= USER INTERACTION REQUIRED: To complete the installation you must now insert the "MultiDisk #2" CD. Once this is done, press the <Return> key to continue:
References
Authors
- Ricardo Soto Vargas
- Editor Scott Marer