For an overview of custom bootable Solaris 8 CD creation process, see http://www.sun.com/solutions/blueprints/0802/816-7587-10.pdf
The instructions below assume that Sun V240 running Solaris 9 or 10 is used for this process.
/etc/init.d/volmgt stop
prtvtoc /dev/dsk/c0t0d0s0
Allow about 8GB of space for it. To simplify the commands, the working directory is created under /. Usually this should not be the case.
mkdir /sol_10_01-06_dvd cd /sol_10_01-06_dvd
dd if=/dev/dsk/c0t0d0s0 of=s0.orig bs=512 dd if=/dev/dsk/c0t0d0s1 of=s1.orig bs=512 dd if=/dev/dsk/c0t0d0s2 of=s2 bs=512 dd if=/dev/dsk/c0t0d0s3 of=s3 bs=512 dd if=/dev/dsk/c0t0d0s4 of=s4 bs=512 dd if=/dev/dsk/c0t0d0s5 of=s5 bs=512 dd if=/dev/dsk/c0t0d0s6 of=s6 bs=512
Estimate the size for the new slice s1 taking into account the added contents such as flash archive size, for instance
dd if=/dev/zero of=s1 bs=512 count=8000000
lofiadm -a s0.orig /dev/lofi/1 lofiadm -a s1.orig /dev/lofi/2 lofiadm -a s1 /dev/lofi/3
newfs /dev/lofi/3
mount -F hsfs /dev/lofi/1 /mnt mkdir /mnt1 mount /dev/lofi/2 /mnt1 mkdir /mnt2 mount /dev/lofi/3 /mnt2
mkdir s0
cd /mnt find . -print|cpio -pdm /sol_10-01-06_dvd/s0
cd /mnt1 find . -print|cpio -pdm /mnt2
For jumpstart installation put jumpstart.tar into
/mnt2/.tmp_proto/root/etc
Files under /.tmp_proto will be copied into /tmp during the install.
If Solaris installation type is set to flash and archive location is set to local file in the profile file, ie,
install_type flash_install archive_location local_file /archives/invidihost.flar
then create archives directory in /mnt2 and copy invidihost.flar into this folder.
Remove Doc, !ExtraValue, Patches, Product and !UpgradePatches from Solaris_10 folder in s0 to free some space for the iso image to fit single 4.7GB (4,700,000,000 bytes) DVD
cd /sol_10_01-06_dvd/s0/Solaris_10 rm -rf Doc ExtraValue Patches Product UpgradePatches
Commented out “for i do…done” block in /mnt2/sbin/install-discovery that tries to autoconfigure network interfaces via reverse arp. It speeds up the installation process by about 5 minutes.
cd /sol_10_01-06_dvd umount /mnt umount /mnt1 umount /mnt2
lofiadm -d /dev/lofi/1 lofiadm -d /dev/lofi/2 lofiadm -d /dev/lofi/3
/etc/init.d/volmgt start
mkisofs -N -r -d -D -L -l -J -V Sol-XXXX-xxx -B s1,s2,s3,s4,s5,s6 -o sol-XXXX-xxx.iso s0
or with mkisofs-2.02 or higher
mkisofs -N -r -d -D -l -J -V Sol-XXXX-xxx -allow-leading-dots -B s1,s2,s3,s4,s5,s6 -o sol-XXXX-xxx.iso s0
When creating ala Solaris 10 10/08 “partitionless” DVD, the procedure is different:
1. Obtain Solaris 10 10/08 iso image sol-10-u6-ga1-sparc-dvd.iso
2. Mount the image via loopback, copy its contest into a new directory and remove unnecessary folders
lofiadm sol-10-u6-ga1-sparc-dvd.iso /dev/lofi/1 mount -o ro -F hsfs /dev/lofi/1 /mnt mkdir /sol-10-dvd cd /mnt find . -print | cpio -pdm /sol-10-dvd cd Solaris_10 rm -rf Doc Patches Product
3. Unpack miniroot
mkdir /miniroot /boot/solaris/bin/root_archive unpack /sol-10-dvd/boot/sparc.miniroot /miniroot
4. Copy jumpstart.tar into miniroot/.tmp_proto/root/etc
The jumpstart profiles have archive_location parameter changed from
archive_location local_file /archives/host.flar
to
archive_location local_device cXt0d0s0 /archives/host.flar hsfs
where X depends on which scsi controller the hard disks are. For example, if the disk drives are on c1, then X should be 0.
5. Pack the miniroot
/boot/solaris/bin/root_archive pack /sol-10-dvd/boot/sparc.miniroot /miniroot
6. Copy the flash archive host.flar (platform dependent: x maybe u or v - see below) into /sol-10-dvd/archives
mkdir /sol-10-dvd/archives cp host-sun4x.flar /sol-10-dvd/archives/host.flar
7. Make an iso image
mkisofs -N -r -d -D -l -J -V SOL-10-sun4x -allow-leading-dots -G /sol-10-dvd/boot/hsfs.bootblock -B ... -o sol-10-sun4x.iso sol-10-dvd
nice -10 cdrw -i -d /dev/rdsk/c0t0d0s2 sol-10-sun4x.iso
{1} ok boot cdrom - install file://127.0.0.1/tmp/root/etc/jumpstart.tar