|Skip Navigation Links|
|Exit Print View|
|Oracle Solaris 10 1/13 Installation Guide: Network-Based Installations Oracle Solaris 10 1/13 Information Library|
This example describes the steps to patch a miniroot image to create a modified miniroot.
In this example, you perform the unpacking and packing of the miniroot on a system that is running the current release.
This procedure shows how to install a Kernel Update (KU) patch on an Oracle Solaris 10 1/13 miniroot image on a system that is running the Oracle Solaris 10 OS. Note these details:
jmp-start1 – A network installation server that is running the Solaris 9 OS
v20z-1 – A system that is running the Oracle Solaris 10 OS, with GRUB implemented
v20z-1:/export/mr – The unpacked miniroot location
v20z-1:/export/u1 – The installation image that was created, so it could be modified
The network installation image is located at /net/jmpstart1/export/images/solaris_10_u1/Solaris_10/Tools.
Note - Roles contain authorizations and privileged commands. For more information about roles, see Configuring RBAC (Task Map) in System Administration Guide: Security Services.
# cd /net/server-1/export
# mkdir /export/u1 /export/mr
# cd /net/jmp-start1/export/images/solaris_10/Solaris_10/Tools
# ./setup_install_server /export/u1 Verifying target directory... Calculating the required disk space for the Solaris_10 product Calculating space required for the installation boot image Copying the CD image to disk... Copying Install Boot Image hierarchy... Copying /boot netboot hierarchy... Install Server setup complete
The installation server setup is now complete.
# /boot/solaris/bin/root_archive unpackmedia /export/u1 /export/mr
# cd /export/mr/sbin
# cp rc2 rc2.orig # cp sulogin sulogin.orig
patchadd -C /export/mr /export patch-ID
patch-ID specifies the patch ID that you want to apply.
In this example, five patches are applied to the miniroot.
# patchadd -C /export/mr /export/118344-14 # patchadd -C /export/mr /export/122035-05 # patchadd -C /export/mr /export/119043-10 # patchadd -C /export/mr /export/123840-04 # patchadd -C /export/mr /export/118855-36
# export SVCCFG_REPOSITORY=/export/mr/etc/svc/repository.db
Caution - The SVCCFG_REPOSITORY variable must point to the location of the unpacked miniroot's repository.db file. In this example, that location is the /export/mr/etc/svc directory. The repository.db file is located in the directory /etc/svc under the unpacked miniroot. Failure to export this variable results in the modification of the live repository, which prevents the live system from booting.
# svccfg -s system/manifest-import setprop start/exec = :true # svccfg -s system/filesystem/usr setprop start/exec = :true # svccfg -s system/identity:node setprop start/exec = :true # svccfg -s system/device/local setprop start/exec = :true # svccfg -s network/loopback:default setprop start/exec = :true # svccfg -s network/physical:default setprop start/exec = :true # svccfg -s milestone/multi-user setprop start/exec = :true
For more information, see the svccfg(1M) man page.
# cd /export/mr/sbin # mv rc2.orig rc2 # mv sulogin.orig sulogin
# /boot/solaris/bin/root_archive packmedia /export/u1 /export/mr
This step essentially replaces /export/u1/boot/miniroot directory, along with some other necessary files.