Virtual Guru's Blog – Home of Virtualization Workshops

April 16, 2009

Home No-Network needed OpenSolaris Live-CD IPS REPO full mirror

Filed under: best_practices, ips, opensolaris, Virtualization, virtual_appliances — natiku @ 11:34 am

One time my child was sick I need to work from home for longer time, unfortunately I was in this time assigned to project required a IPS repository access.
My network a home is not enough stable to use IPS remote mirror, so I as workaround use this script to create:

Home No-Network needed OpenSolaris Live-CD IPS REPO full mirror

I think you can find this approach and script helpful in home Virtual Appliances prototyping.

I customize direct mirror script , see IPS repo mirror script (attached) by Andrzej Szeszo , local copy

There can be also used pkgrecv/pkgsend approach, but this will for no not perverse time stamps, so will not be able to get SAME FMRIs. See for example Building a custom OpenSolaris LiveCD (attached) in Kohsuke Kawaguchi blog

Update: This issue with new timestamps was reported as 6356 PKGsend mut allow to specify FMRI (timestamp) so we can clone package and is fixed in iPKG relesed as part of DEV builds for OpenSolaris 200102 release.

1. Use script to get needed 555+1 OpenSolaris 200811 IPS packages.

– Create a ZFS poo for IPS data

zfs create rpool/export/ips

– Run the script

2. Check size for downloaded repo

df -h
Filesystem            Size  Used Avail Use% Mounted on
19G  662M   18G   4% /
swap                  661M  224K  661M   1% /etc/svc/volatile
19G  662M   18G   4% /lib/
swap                  662M  1.5M  661M   1% /tmp
swap                  661M   32K  661M   1% /var/run
rpool/export           18G  276M   18G   2% /export
rpool/export/home      18G   19K   18G   1% /export/home
18G   24K   18G   1% /export/home/osol
rpool                  18G   72K   18G   1% /rpool
zfs list
rpool                   1.92G  17.6G    72K  /rpool
rpool/ROOT               661M  17.6G    18K  legacy
rpool/ROOT/opensolaris   661M  17.6G   661M  /
rpool/dump               512M  17.6G   512M  -
rpool/export             276M  17.6G   276M  /export
rpool/export/home       42.5K  17.6G    19K  /export/home
rpool/export/home/osol  23.5K  17.6G  23.5K  /export/home/osol
rpool/swap               512M  18.1G    16K  -

Start local IPS repo on port 80 with SMF service

ls /export/ips/opensolaris200811
file  pkg
svccfg -s application/pkg/server setprop pkg/port=80
svccfg -s application/pkg/server setprop pkg/inst_root=opensolaris200811
svcadm refresh application/pkg/server
svcadm enable application/pkg/server
tail -f  /var/svc/log/application-pkg-server:default.log
[13/Dec/2008:11:43:36] ENGINE Listening for SIGTERM.
[13/Dec/2008:11:43:36] ENGINE Listening for SIGUSR1.
[13/Dec/2008:11:43:36] ENGINE Bus STARTING
[13/Dec/2008:11:43:36] ENGINE Started monitor thread '_TimeoutMonitor'.
[13/Dec/2008:11:43:36] ENGINE Serving on
[13/Dec/2008:11:43:36] ENGINE Bus STARTED
[13/Dec/2008:11:43:36] INDEX Updating search indices
[13/Dec/2008:11:43:59] INDEX Search indexes updated and available.
ls /export/ips/opensolaris200811
catalog file pkg search.dir search.pag trans updatelog

2. Check then repository is working

wget localhost:80
Number of packages: 556
Number of in-flight transactions: 0
Number of catalogs served: 0
Number of manifests served: 0
Number of files served: 0
Number of flists requested: 0
Number of files served by flist: 0
Number of packages renamed: 0


1 Comment »

  1. […] Home No-Network needed OpenSolaris Live-CD IPS REPO full mirror Blogs: Updated script for fully local IPS mirror for faster DC and AI […]

    Pingback by OpenSolaris 200906 Virtualization Assistant Live-CD Proof of Concept « Virtual Guru's Blog – Home of Virtualization Workshops — February 1, 2010 @ 6:14 pm

RSS feed for comments on this post. TrackBack URI

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s

Blog at

%d bloggers like this: