Friday, March 09, 2012

Combine Solaris Automated Install and Repository on one image. Success

Following on my last entry about Solaris 11 Automated Install with no network (Standalone) I thought I would post this update saying that I have managed to get it working, well I have managed to create a new 6.7GB ISO which can boot a VirtualBox client and installs Solaris 11 with NO network I am not sure why it was failing last time, but since then I have reinstalled Solaris 11 and added another disk to my desktop.

Copy Oracle Solaris 11 11/11 Automated Installer from ISO to disk:
# mount -F hsfs sol-11-1111-ai-x86.iso /mnt
# cd /mnt
# mkdir /var/tmp/AIboot
# find . -depth -print | cpio -pdm /var/tmp/AIboot
# cd /
# umount /mnt


Copy Oracle Solaris 11 11/11 Repository Image from ISO to disk:
# mount -F hsfs sol-11-1111-repo-full.iso /mnt
# cd /mnt
# rsync -aP /mnt/repo/ /var/tmp/AIboot/repoSolaris11
# cd /
# umount /mnt


Check it and edit default manifest so that is uses local repository:
# du -hs /var/tmp/AIboot
7.0G /var/tmp/AIboot

# ls /var/tmp/AIboot
auto_install      devices           mnt               repoSolaris11     solaris.zlib
bin               export            platform          root              solarismisc.zlib
boot              home              proc              save              system
dev               jack              reconfigure       sbin              tmp

Edit /var/tmp/AIboot/auto_install/default.xml

             <publisher name="solaris">
                     <origin name="http://pkg.oracle.com/solaris/release"/>
             </publisher>

Change to:

             <publisher name="solaris">
                     <origin name="file:///.cdrom/repoSolaris11"/>
             </publisher>


Create a new ISO:
# mkisofs -o /var/tmp/output.iso -b boot/grub/stage2_eltorito \
-c .catalog -no-emul-boot -boot-load-size 4 \
-boot-info-table -N -R -U -allow-multidot -no-iso-translate \
-cache-inodes -iso-level 4 -d -D -V Solaris11 /var/tmp/AIboot

Warning: Creating ISO-9660:1999 (version 2) filesystem.
Warning: ISO-9660 filenames longer than 31 may cause buffer overflows in the OS.
Size of boot image is 4 sectors -> No emulation
Size of boot image is 4 sectors -> No emulation
0.99% done, estimate finish Fri Mar 9 13:23:05 2012
1.13% done, estimate finish Fri Mar 9 13:22:53 2012
...
99.83% done, estimate finish Fri Mar 9 13:37:07 2012
99.97% done, estimate finish Fri Mar 9 13:37:06 2012
Total translation table size: 2048
Total rockridge attributes bytes: 36023282
Total directory bytes: 68673536
Path table size(bytes): 136082
Max brk space used 10144000
3530910 extents written (6896 MB)


The above iso then was used to install Solaris 11 on VirtaulBox.

Wednesday, March 07, 2012

Solaris 11 Automated Install with no network (Standalone)

After my last blog entry about Solaris 11 Automated Install without a network boot I was thinking that we have all the building blocks to do a true standaone install of Solaris 11 without any network connection at all.

Oracle gives us the iso's for "Oracle Solaris 11 11/11 Automated Installer" and the full "Oracle Solaris 11 11/11 Repository Image" from the Solaris download page, so why do we need a network!

The problem is that the repository is 7GB so testing it is a little difficult and trying to put the above two ISO's onto one 8GB USB is even harder. At this stage I have been unable to put the 7GB repository ISO onto a USB stick. Also, unable to combine the 2 ISO into 1 ISO which works (I end up with repository errors on install)!

But, in theory it will work and to demonstrate the idea I will use VirtualBox and a network for the manifest file (ONLY for manifest file!).  You can use my previous blog to replace the AI boot image with a modified one.
  1. Download the above iso for x86:
    • sol-11-1111-ai-x86.iso
    • sol-11-1111-repo-full.iso

  2. Create a new VirtualBox Solaris client
    • it needs to be on the network (download manifest file)
    • Storage we will add both ISO files as CD


  3. Create a manifest file for the installation and place it on a web server:
    • There is only one change required from the default manifest (download version default.xml):

                   <publisher name="solaris">
                           <origin name="http://pkg.oracle.com/solaris/release"/>
                   </publisher>

      Change to:

                   <publisher name="solaris">
                           <origin name="file:///media/SOL11REPO_FULL/repo"/>
                   </publisher>

  4. Now boot you client:
    • Pick default option Oracle Solaris 11 11/11 Automated Install custom:


    • Enter the URL for the modified manifest file:


At this point it should go off and install the software.

The perfect solution which I am happy for someone to try is to place the both AI boot and repository onto one ISO and then use no network, but I have failed so far!