So I found a couple of really interesting reads:
I have the last two because I'm getting smarter about what is going on. I read the first and thought, "Wait, what about grub?" Sure enough, I'm pretty sure grub complicates things. Lets look at the root of the Nevada b35 DVD:
# ls -la total 946 dr-xr-xr-x 2 root sys 4096 Mar 6 15:24 . drwxr-xr-x 3 root nobody 512 Mar 16 21:30 .. -r--r--r-- 1 root root 2048 Mar 6 15:25 .catalog -r--r--r-- 1 root root 92 Feb 18 01:27 .cdtoc dr-xr-xr-x 5 root root 2048 Mar 6 15:24 .install lr-xr-xr-x 1 root root 33 Mar 6 15:23 .install_config -> ./Solaris_11/Misc/.install_config -r--r--r-- 1 root root 419 Mar 2 17:33 .slicemapfile -r--r--r-- 1 root root 15 Mar 2 17:33 .volume.inf -r--r--r-- 1 root root 17 Mar 6 14:34 .volume.inf.2 -r--r--r-- 1 root root 17 Mar 6 14:36 .volume.inf.3 -r--r--r-- 1 root root 17 Mar 6 14:37 .volume.inf.4 -r--r--r-- 1 root root 6851 Mar 2 17:33 Copyright -r--r--r-- 1 root root 459760 Mar 2 17:33 JDS-THIRDPARTYLICENSEREADME dr-xr-xr-x 8 root root 2048 Mar 6 15:24 Solaris_11 dr-xr-xr-x 3 root root 2048 Mar 6 15:24 boot -r-xr-xr-x 1 root root 257 Mar 6 14:37 installer
And lets now look at the root of a Solaris 10 CD. I think this was the first official release:
[tdh@adept cdrecorder]> ls -la total 1911 drwxr-xr-x 3 root bin 2048 Jan 22 2005 . drwxr-xr-x 3 root root 4096 Mar 15 00:29 .. -rw-r--r-- 2 root bin 1474560 Jan 22 2005 .bootimage -r--r--r-- 1 root bin 2048 Jan 22 2005 .catalog -r--r--r-- 2 root root 87 Jan 6 2005 .cdtoc -r--r--r-- 2 root root 6308 Jan 6 2005 Copyright lrwxrwxrwx 1 root bin 33 Jan 22 2005 .install_config -> ./Solaris_10/Misc/.install_config -r--r--r-- 2 root root 459760 Jan 6 2005 JDS-THIRDPARTYLICENSEREADME -r--r--r-- 2 root root 419 Jan 6 2005 .slicemapfile drwxr-xr-x 7 root root 2048 Jan 22 2005 Solaris_10 -r--r--r-- 2 root root 19 Jan 6 2005 .volume.inf [tdh@adept cdrecorder]> more .slicemapfile # # @(#) i386.dot.slicemapfile 1.4@(#) # # # # a slice map file for install CD boot slices - maps platform (or not) # or karch to an install boot slice. # # entries are one of: # x "" <`uname -i`> exclude platform (must preceed "m" entries) # used if the platform is not really in a karch # p<`uname -i`> platform token entry (must preceed "m" entries) # m <`uname -m`> karch entry # m 0 i86pc
If you've been paying attention, you might realize that adept is my Linux desktop. If I put this CD in wont, my Nevada b35 system, it will consistently panic. I've got a core file to submit a bug later.
Right off the bat, we can see that the Solaris 10 system has a .bootimage file and the Nevada b35 does not. According to Creating a Customized Boot CD/DVD for the Solaris Operating System for x86 Platforms, there should be a .bootimage file. Since there is not, I'm going to skip the experiment of creating one.
I think I've got to use installgrub to make the DVD bootable.
I think my options are to either:
I've done a lot of googling and I should have gone to the source: Making a GRUB bootable CD-ROM. And I can find the stage2_eltorito file here:
# cd /boot/grub/ # ls -la total 1246 drwxr-xr-x 3 root sys 512 Mar 16 00:08 . drwxr-xr-x 5 root sys 512 Mar 16 00:08 .. drwxr-xr-x 2 root sys 512 Mar 15 23:33 bin -r--r--r-- 1 root sys 10 Mar 3 15:11 default -rw-r--r-- 1 root sys 8500 Mar 3 15:11 e2fs_stage1_5 -rw-r--r-- 1 root sys 8228 Mar 3 15:11 fat_stage1_5 -rw-r--r-- 1 root sys 7508 Mar 3 15:11 ffs_stage1_5 -rw-r--r-- 1 root sys 496 Mar 3 15:11 install_menu -rw-r--r-- 1 root sys 7608 Mar 3 15:11 iso9660_stage1_5 -rw-r--r-- 1 root sys 8996 Mar 3 15:11 jfs_stage1_5 -rw-r--r-- 1 root sys 1633 Mar 16 00:08 menu.lst -rw-r--r-- 1 root sys 7700 Mar 3 15:11 minix_stage1_5 -rw-r--r-- 1 root sys 118288 Mar 3 15:11 nbgrub -rw-r--r-- 1 root sys 119312 Mar 3 15:11 pxegrub -rw-r--r-- 1 root sys 9940 Mar 3 15:11 reiserfs_stage1_5 -rw-r--r-- 1 root sys 8772 Mar 3 15:11 splash.xpm.gz -rw-r--r-- 1 root sys 512 Mar 3 15:11 stage1 -rw-r--r-- 1 root sys 118896 Mar 3 15:11 stage2 -rw-r--r-- 1 root sys 118896 Mar 3 15:11 stage2_eltorito -rw-r--r-- 1 root sys 7784 Mar 3 15:11 ufs2_stage1_5 -rw-r--r-- 1 root sys 7380 Mar 3 15:11 ufs_stage1_5 -rw-r--r-- 1 root sys 7124 Mar 3 15:11 vstafs_stage1_5 -rw-r--r-- 1 root sys 9820 Mar 3 15:11 xfs_stage1_5
Note: From the BigAdmin articles, I want to use Sun supplied files, they have made changes to grub which may not yet be back-ported.
# mkisofs -R -b boot/grub/stage2_eltorito -no-emul-boot -boot-load-size 4 -R -d -L -l -r -D -U -boot-info-table -o /isos/kanigix.iso /kanigix Using ".mkisofsrc" mkisofs: The option '-L' is reserved by POSIX.1-2001. mkisofs: The option '-L' means 'follow all symbolic links'. mkisofs: Mkisofs-2.02 will introduce POSIX semantics for '-L'. mkisofs: Use -allow-leading-dots in future to get old mkisofs behavior. Warning: creating filesystem that does not conform to ISO-9660. Using TopicSelectors$Subscri000.class for /kanigix/Solaris_11/Product/SUNWiqdoc/reloc/usr/demo/imq/jms/TopicSelectors$Subscriber$MultipleListener.class (TopicSelectors$Subscriber.class) Using MessageHeadersTopic$He000.class for /kanigix/Solaris_11/Product/SUNWiqdoc/reloc/usr/demo/imq/jms/MessageHeadersTopic$HeaderPublisher.class (MessageHeadersTopic$HeaderSubscriber.class) Using DurableSubscriberExamp000.class for /kanigix/Solaris_11/Product/SUNWiqdoc/reloc/usr/demo/imq/jms/DurableSubscriberExample$1.class (DurableSubscriberExample$DurableSubscriber$TextListener.class) Using DurableSubscriberExamp001.class for /kanigix/Solaris_11/Product/SUNWiqdoc/reloc/usr/demo/imq/jms/DurableSubscriberExample$DurableSubscriber$TextListener.class (DurableSubscriberExample$DurableSubscriber.class) Using DurableSubscriberExamp002.class for /kanigix/Solaris_11/Product/SUNWiqdoc/reloc/usr/demo/imq/jms/DurableSubscriberExample$DurableSubscriber.class (DurableSubscriberExample$MultiplePublisher.class) Using AsynchTopicExample$Asy000.class for /kanigix/Solaris_11/Product/SUNWiqdoc/reloc/usr/demo/imq/jms/AsynchTopicExample$AsynchSubscriber$TextListener.class (AsynchTopicExample$AsynchSubscriber.class) Using AckEquivExample$Asynch000.class for /kanigix/Solaris_11/Product/SUNWiqdoc/reloc/usr/demo/imq/jms/AckEquivExample$AsynchSubscriber$TextListener.class (AckEquivExample$AsynchSubscriber.class) Using NamedPipeSocketFactory000.class for /kanigix/companion/Solaris_sparc/components/sparc/Packages/SFWmyjdb/reloc/sfw/mysql/share/jdbc/com/mysql/jdbc/NamedPipeSocketFactory$RandomAccessFileOutputStream.class (NamedPipeSocketFactory$RandomAccessFileInputStream.class) Using NamedPipeSocketFactory000.class for /kanigix/companion/Solaris_x86/components/i386/Packages/SFWmyjdb/reloc/sfw/mysql/share/jdbc/com/mysql/jdbc/NamedPipeSocketFactory$RandomAccessFileOutputStream.class (NamedPipeSocketFactory$RandomAccessFileInputStream.class) Size of boot image is 4 sectors -> No emulation 3.30% done, estimate finish Thu Mar 16 23:49:50 2006 3.60% done, estimate finish Thu Mar 16 23:50:25 2006 3.90% done, estimate finish Thu Mar 16 23:50:55 2006 4.20% done, estimate finish Thu Mar 16 23:50:57 2006 4.50% done, estimate finish Thu Mar 16 23:51:21 2006 4.80% done, estimate finish Thu Mar 16 23:51:21 2006 ... 99.82% done, estimate finish Thu Mar 16 23:55:21 2006 Total translation table size: 2048 Total rockridge attributes bytes: 12099008 Total directory bytes: 106348544 Path table size(bytes): 772046 Max brk space used 6aba000 1667923 extents written (3257 MB) # ls -la /isos/kanigix.iso -rw-r--r-- 1 root root 3415906304 Mar 16 23:55 /isos/kanigix.iso
Okay, it booted - which is what I wanted to accomplish. Lets see if it will install. I've gotten it past doing the layout of the disk and now it is putting packages on. The key will be some of the Java class stuff, i.e., the translation warnings I got from mkisofs.
And it installed and then booted again. (Next goal is to be able to install the Solaris Software Companion Stuff before this reboot.) Hmm, I guess I also need to get some branding in place.
So the Solaris Software Companion bits are installing okay. My next step is to put together a script to automate this creation. I'll be putting that up on kanigix.org. By the way, the DVD has fancy artwork - I'll try to capture an image with the diffuse day light sometime in the day.
Posted by stevel on March 22, 2006 at 07:56 PM CST #