I just wanted to share some info how to create a Solaris 10 10/08
SPARC DVD to deploy a flash archive.
Since 10/08 on SPARC uses boot archives during boot process, the
process to create a bootable DVD to deploy a flash archive also has
changed.
I will only highlight the steps, so you need some basic knowledge in
this area to successfully build your own DVD...
I assume you are creating this bootable DVD on a Solaris 10 10/08
SPARC installed host.
A # indicates a shell command.
=================================================
1. Download the Solaris 10 10/08 SPARC DVD iso from sun.com
2. Extract slice 0 from the DVD (From 10/08, the only slice containing
data).
# dd if=iso/sol-10-u6-ga1-sparc-dvd.iso of=<extracted_slice_0>
count=5197439
3. Create loop back device for the file created in step 2.
# lofiadm -a `<full_path_to_extraced_slice_0_file>`
(Notice the lofi device echoed on screen)
4. Mount the loop back device.
mount -o ro -F hsfs /dev/lofi/<instance> <tempdir_1>
5. Create a writable copy of the mounted filesystem in step 4.
# mkdir <tempdir_2>
# cd <tempdir_1>
# /usr/sfw/bin/gtar cf - . | (cd <tempdir_2>; /usr/sfw/bin/gtar xf -)
6. Modify/Create the rules.ok, a profile file and any Begin/Finish
scripts in <tempdir_2>/.install_config.
The profile file should point out the flash archive in step 6.5
6.5 Remove all files (packages) in <tempdir_2>/Solaris_10/Product/
Put your flash archive in the Product directory.
7. Unpack the boot.archive file (Previously slice 1 on the DVD)
#/boot/solaris/bin/root_archive unpack <tempdir_2>/boot/
sparc.miniroot <tempdir_3>
The previously command will not exit gracefully due to internal
errors. Unmount any temp directories mentioned in the output.
8. Modify <tempdir_3>/usr/sbin/install.d/profind
See page 9 in http://www.sun.com/blueprints/0404/817-6991.pdf
9. Modify/Create <tempdir_3>/sparc.miniroot_dir/etc/sysidcfg to suite
your needs.
Change attributes to 755
# chmod 755 <tempdir_3>/sparc.miniroot_dir/etc/sysidcfg
10. Create a new boot archive file
# /boot/solaris/bin/root_archive pack <tempdir_2>/sparc.miniroot
<tempdir_3>
11. Copy the CORRECT bootblock to use, to your base directory, where
you have created your temp directories.
# cp <tempdir_3>/boot/hsfs.bootblock <your base directory>
12. Create the new iso file
# mkisofs -r -omit-period -allow-leading-dots -full-iso9660-
filenames -d -sparc-boot ... -G hsfs.bootblock -o
<file_name_of_new_iso> -volid Solaris <tempdir_2>
That's It!
Hope I didn't mixed up the directories or any info!
Burn the iso file with any burning software you usually uses.
Regards,
/D
Hi /D,
thanks for sharing this interesting information with us!
I have 1 comment to step 2 and 1 question to step 12.
- To Step 1:
I was able to use
# lofiadm -a /temp/images/sol-10-u6-ga1-sparc-dvd.iso
/dev/lofi/1
# mount -o ro -F hsfs /dev/lofi/1 /mnt
So I think we can skip the creation if the image
<extracted_slice_0>.
- To Step 12:
According to "man mkisofs" the option -sparc-boot needs
a list of boot images, e.g.
-sparc-boot img_sun4c,img_sun4m,img_sun4d,img_sun4u,img_sun4v
Would you please provide the full mkisofs command with all
parameters and options. I would be also interested in how you
has created these architecture dependent boot images or how
you has extraced these boot images from Suns ISO image?
--
Thanks
Roland
From 10/08, the architecture dependent boot images are not longer
needed, since the
bootloader has been altered (my conclusions, though...)
If you print the VTOC of the iso, the slices 2-6 on the 10/08 will
look exactly as slice0.
That's why we need to use mkisofs exactly as I stated above, with -
sparc-boot ... , which which
create links from slices 2-6 to point at slice 0.
Regards,
D
>
> --
> Thanks
> Roland
I use similar method, but my problem is that profind is not an
editable script,
but some king of data file. The file begin with Zcmp, but it is not a
compress or
gzip file. In Solaris U5 profind, sysidfind and other files that were
editable scripts.
How can edit and modify these files Solaris U6?.
Regards.
Hi Manuel,
the file /usr/sbin/install.d/profind in Sol. 10 U6 is part of the
miniroot
archive /boot/sparc.miniroot. You have to use the command
/boot/solaris/bin/root_archive unpack <tempdir2>/boot/sparc.miniroot
<tempdir3>
to extract the file in <tempdir3>/usr/sbin/install.d/profind.
If I use this way I get a writable scipt <tempdir3>/usr/sbin/install.d/
profind.
# file <tempdir3>/usr/sbin/install.d/profind
<tempdir3>/usr/sbin/install.d/profind: executable /usr/bin/sh script
The permission and ownership of this file is
-rwxr-xr-x root sys
Do you have performed these steps?
What command you are using to determine the file type?
--
BR
Roland
Hi Roland,
I am working with sparc DVD 10/08 , and use this command
/boot/solaris/bin/root_archive unpack sparc.miniroot unpack
and after unpack files sysidcfg and profind
file unpack/sbin/sysidfind
sysidfind: data
file usr/sbin/install.d/profind
usr/sbin/install.d/profind: data
root_archive finish whitout errors: echo $? = 0
any idea that where is the problem?.
Hi,
I discover the problem: fiocompress tools was not
installed.
Without this tools, root_archive doesn't uncompress
file in sparc.miniroot.
regards.
D'oh!
I did the same mistake as Roland and tried to burn my modified SPARC
10/08 disk with a script containing the old mkisofs command I used
with the previous releases...
What ended up with a non bootable disc:
===
Executing last command: boot cdrom - install
Boot device: /pci@83,4000/ide@d/cdrom@0,0:f File and args: - install
Boot load failed.
The file just loaded does not appear to be executable.
===
Thanks a lot D, you made my day ;-)
nada
Hi Roland,
Thanks for the information it has taken me a lot farther in a day than
I have been for weeks on this one. However I am having a problem with
the iso I built. I can boot off the disk but then it will not mount.
Because of this it will not look at the rules or the flash archive
files. I also noticed when I viewed the disk on a windows box that
the file names and directory names were capitalized.
Any Idea what I might be doing wrong in both cases
The mkisofs command I am using is:
mkisofs -r -omit-period -allow-leading-dots -full-iso9660-filenames -d
-sparc-boot ... /scratch/ansasun14/iso/s0/hsfs.bootblock -o scratch/
ansasun14/iso/MLCOS.iso -volid MLCOS /scratch/ansasun14/iso/s0
Cheers,
Paul
Hi Paul,
see your other posting to this issue ...
--
BR
Roland