Solaris Software Packaging and Installation Paul Foster 14/11/2000.

Slides:



Advertisements
Similar presentations
ADABAS to RDBMS UsingNatQuery. The following session will provide a high-level overview of NatQuerys ability to automatically extract ADABAS data from.
Advertisements

Utilizing the GDB debugger to analyze programs Background and application.
14.1 © 2004 Pearson Education, Inc. Exam Planning, Implementing, and Maintaining a Microsoft Windows Server 2003 Active Directory Infrastructure.
70-290: MCSE Guide to Managing a Microsoft Windows Server 2003 Environment Chapter 9: Implementing and Using Group Policy.
Guide To UNIX Using Linux Third Edition
Reproducible Environment for Scientific Applications (Lab session) Tak-Lon (Stephen) Wu.
Introduction to The Linaro Toolchain Embedded Processors Training Multicore Software Applications Literature Number: SPRPXXX 1.
1 Introduction to Tool chains. 2 Tool chain for the Sitara Family (but it is true for other ARM based devices as well) A tool chain is a collection of.
TrendReader Standard 2 This generation of TrendReader Standard software utilizes the more familiar Windows format (“tree”) views of functions and file.
Using the “CLI” Unix / Linux Preparation Course May 25 Djibouti.
Migration XenDesktop 7. © 2013 Citrix | Confidential – Do Not Distribute Migration prerequisites Set up a XenDesktop 7 Site, including the site database.
Linux Operations and Administration
Input/Output Controller (IOC) Overview Andrew Johnson Computer Scientist, AES Controls Group.
70-290: MCSE Guide to Managing a Microsoft Windows Server 2003 Environment, Enhanced Chapter 9: Implementing and Using Group Policy.
Deploying Windows Vista Lesson 2. Skills Matrix Technology SkillObjective Domain SkillDomain # Understanding Windows Vista Deployment Deploy Windows Vista.
Lesson 7-Creating and Changing Directories. Overview Using directories to create order. Managing files in directories. Using pathnames to manage files.
Chapter 2 Applying Practical Automation Speaker : Chuang-Hung Shih Date :
70-294: MCSE Guide to Microsoft Windows Server 2003 Active Directory Chapter 12: Deploying and Managing Software with Group Policy.
Introduction to Shell Script Programming
Software Engineering 2003 Jyrki Nummenmaa 1 CASE Tools CASE = Computer-Aided Software Engineering A set of tools to (optimally) assist in each.
Chapter Fourteen Windows XP Professional Fault Tolerance.
© 2012 The McGraw-Hill Companies, Inc. All rights reserved. 1 Third Edition Chapter 5 Windows XP Professional McGraw-Hill.
– Introduction to the Shell 10/1/2015 Introduction to the Shell – Session Introduction to the Shell – Session 2 · Permissions · Users.
Please Note: Information contained in this document is considered LENOVO CONFIDENTIAL For Lenovo Internal Use Only Do Not Copy or Distribute!! For Lenovo.
Apache Web Server v. 2.2 Reference Manual Chapter 1 Compiling and Installing.
Guideline: How to build AMSS source code? History: 01/02/ Make Draft 05/02/2010 – Release /02/2010 – Updated.
Introduction Use of makefiles to manage the build process Declarative, imperative and relational rules Environment variables, phony targets, automatic.
Hosted Virtualization Lab Last Update Copyright Kenneth M. Chipps Ph.D.
Installation and Upgrade Campus-Booster ID : **XXXXX Copyright © SUPINFO. All rights reserved Solaris 10 installation.
Shell Scripting AFNOG IX Rabat, Morocco May 2008.
CVS – concurrent versions system Network Management Workshop intERlab at AIT Thailand March 11-15, 2008.
1Offline Weekly Meeting May May 2006 AliRoot Build Integration and (Testing) System Peter Hristov Vagner Morais.
1 / 22 AliRoot and AliEn Build Integration and Testing System.
Roll Screen Development Debugging assistance for building Rocks Rolls with screens OSGC, May 2008 Nadya Williams University of Zurich.
Martin Sjölin LISA NT 1999, 1 State Driven Software Installation for Windows NT Martin Sjölin, WDR
Packaging for Voracity Solutions Control Panel David Turner.
Refactoring and Synchronization with the StarTeam Plug-in for Eclipse  Jim Wogulis  Principal Architect, Borland Software Corporation.
June 22, 2007USATLAS T2-T3 DQ2 0.3 SiteServices Patrick McGuigan
What is a port The Ports Collection is essentially a set of Makefiles, patches, and description files placed in /usr/ports. The port includes instructions.
Wordpress with Mina Automated Deployment Solution Jonathan Gravato DIG 4104c.
CS Capstone OS Tools for OpenBSD Overview Presentation Team Fugu.
Linux+ Guide to Linux Certification, Third Edition
WinCvs. WinCVS WinCvs is a window based version control system. Use WinCvs when  You want to save every version of your file you have ever created. CVS.
12 CVS Mauro Jaskelioff (originally by Gail Hopkins)
Page 1 of 38 Lenovo Confidential Lenovo Confidential Lenovo Confidential Lenovo Confidential Lenovo Confidential Please Note: Information contained in.
Installing Applications in FreeBSD lctseng. Computer Center, CS, NCTU 2 Before we start  Permission issue root: the super user Like administrator in.
How to configure, build and install Trilinos November 2, :30-9:30 a.m. Jim Willenbring.
Myrtle Entertainment System Scanner How to work your way to installing a program via Myrtle Entertainment System Scanner.
Package Administration 3/14/ Software package administration adds software to systems and removes software from systems Sun and its third-party.
1 Week 8 Creating Simple Shell Scripts. 2 Chapter Objectives  In this chapter, you will :  Learn how to create Shell Scripts  Commenting / Making Portable.
Tivoli Provisioning Manager V5.1 FP1 © 2006 IBM Corporation L2 GO Training Local TCA Install Przemyslaw Maciolek
INTERNET APPLICATIONS CPIT405 Install a web server and analyze packets.
Ahmadu Bello Computer Repair Training Course 6: Use of Software By Suprix Technology Nigeria ( A.B.U repair computer training.
CACI Proprietary Information | Date 1 PD² SR13 Client Upgrade Name: Semarria Rosemond Title: Systems Analyst, Lead Date: December 8, 2011.
CACI Proprietary Information | Date 1 PD² v4.2 Increment 2 SR13 and FPDS Engine v3.5 Database Upgrade Name: Semarria Rosemond Title: Systems Analyst, Lead.
IPEmotion License Management PM (V1.2).
AAF tips and tricks Arsen Hayrapetyan Yerevan Physics Institute, Armenia.
CACI Proprietary Information | Date 1 Upgrading to webMethods Product Suite Name: Semarria Rosemond Title: Systems Analyst, Lead Date: December 8,
Building programs LinuxChix-KE. What happens in your CPU? ● It executes a small set of instructions called "machine code" ● Each instruction is just a.
9/21/04 James Gallagher Server Installation and Testing: Hands-on ● Install the CGI server with the HDF and FreeForm handlers ● Link data so the server.
1 Remote Installation Service Windows 2003 Server Prof. Abdul Hameed.
bitcurator-access-webtools Quick Start Guide
Installation of the ALICE Software
Connect:Direct for UNIX v4.2.x Silent Installation
Archiving and Document Transfer Utilities
Makefile Tutorial CIS5027 Prof: Dr. Shu-Ching Chen
NextGen Purchasing Calendar Year End 1099 Process
Playing in the Devil's Playground
bitcurator-access-webtools Quick Start Guide
Periodic Processes Chapter 9.
Presentation transcript:

Solaris Software Packaging and Installation Paul Foster 14/11/2000

Overview Solaris package mechanism & related tools Building packages Preparing packages for burning on CD Sample Package

Seven Steps to a Package on CD Build Install Tree Build the pkginfo file Build the prototype file Write your post_install, pre_remove and request scripts Build the package Build an ISO Image using mkisofs Burn a CD using the ISO Image

Solaris Package Process Source Files pkginfo prototype Install Scripts pkgmk Package mkisofs ISO Image CD Package pkgproto Burn CD

Key files in a package Key Files –pkginfo : general information about the package –post_install : runs after files are extracted –pre_remove : runs prior to software removal –request : prompts installer for extra information –prototype : description of files & permissions 3 types of files: –-i installation files (/var/sadm/ ) –-f normal files –-d directories

post_install/pre_remove/request Must be Bourne Shell Scripts (/bin/sh) Scripts run as root - so use explicit paths (e.g. /bin/rm) Make parts conditional ( if HPOV installed then do x,y,z) Save modified files in a safe place to aid re-installing Modifications to files use sed - especially for delete Small progress messages / Detailed error messages Request script can be used to read license keys, etc. Can place helper scripts in /var/sadm/ if desired Exit status of 0 indicates no errors

The pkginfo file Specifies: –name of the package (short & long form) –where to install package (e.g. /opt/pfp) –revision information –contact details

Run-time Environment Settings Exported variables are the settings from your pkginfo file BASEDIR=/opt/pfp CLIENT_BASEDIR=/opt/pfp DESC=Pauls Sample Package INSTDATE=Nov :28 INST_DATADIR=/scratch1/tmp/paul/packaging/installation_package NAME=pfpEMS OAMBASE=/usr/sadm/sysadm PKG=pfp PKGINST=pfp PKGSAV=/var/sadm/pkg/pfp/save PSTAMP=pf TZ=Australia/Queensland VERSION=2.0,REV=

Making a Prototype (pkgproto ) i postinstall i preremove i request i pkginfo i preremove.sed d none bin 0755 bin bin f none bin/flex 0750 bin bin f none bin/lcc 0751 bin bin

Making a Package (pkgmk -o -d -f prototype -r ) Example: pkgmk -o -d./installation_tree -f prototype -r./prototype_tree –installation_tree : is the target package directory –prototype : describes how I want things installed –prototype_tree : is my source files copied from the build area

Installing our package (pkgadd -d ) bash# /usr/sbin/pkgadd -d /scratch/tmp/paul/packaging/installation_package pfp Processing package instance from pfpEMS (sparc) 2.0,REV= CiTR Pty Ltd. The selected base directory must exist before installation is attempted. Do you want this directory created now [y,n,?,q] y Using as the package base directory. ## Processing package information. ## Processing system information. ## Verifying disk space requirements. ## Checking for conflicts with packages already installed. ## Checking for setuid/setgid programs.

Installing our Package (cont.) This package contains scripts which will be executed with super-user permission during the process of installing this package. Do you want to continue with the installation of [y,n,?] y Installing pfpEMS as ## Installing part 1 of 1. /opt/pfp/bin/flex /opt/pfp/bin/lcc [ verifying class ] ## Executing postinstall script. Installation of was successful.

Information about our package (pkginfo -l [-d ] ) bash# /usr/bin/pkginfo -l -d /cdrom/cdrom0 pfp PKGINST: pfp NAME: pfpEMS CATEGORY: system ARCH: sparc VERSION: 2.0,REV= BASEDIR: /opt/pfp VENDOR: CiTR Pty Ltd. DESC: Pauls Sample Package PSTAMP: pf HOTLINE: Please contact your local system administrator. STATUS: spooled FILES: 8 spooled pathnames 1 directories 2 executables 5 package information files 1067 blocks used (approx)

Removing our package (pkgrm ) bash# /usr/sbin/pkgrm pfp The following package is currently installed: pfp pfpEMS (sparc) 2.0,REV= Do you want to remove this package? y ## Removing installed package instance This package contains scripts which will be executed with super-user permission during the process of removing this package. Do you want to continue with the removal of this package [y,n,?,q] y ## Verifying package dependencies. ## Processing package information. ## Executing preremove script. ## Removing pathnames in class (...Some stuff deleted...) ## Updating system information. Removal of was successful.

/var/sadm/pkg Your pre_remove script lives here until the package is removed pkginfo file determines what gets put in here If your package fails to remove cleanly: –Hand cleanup –Edit the pre_remove to exit 0 immediately –Do the pkgrm

Burning the package onto a CD mkisofs - builds an ISO9660 file system e.g. mkisofs -l -o /tmp/cd.iso -a -r -v -A “ems”./installation_package Later versions (1.12) support a -J flag (Joilet support) and tools for verification of ISO images Newer versions are downloadable off the net. cd.iso suitable for burning onto a CD (Solaris readable by default, PC readable with -J flag)

A Working Example For a very simple fully integrated/automated example –Build a prototype tree –Builds a prototype –Builds a package –Builds an ISO file system –Makefile to perform all tasks in correct order See /home/foster/tweek/solaris_package.tar.gz

Other Thoughts Alteration of Build Process to Instrument Binaries –Simple code generation of build information Release Number, Build Description, Incremental Build No, etc. Doesn’t depend on revision control strings embedded in binary (not everyone uses RCS/CVS) –Manifest of installed binaries (e.g. TP414.1 experience) Solaris JumpStart Mechanism –Automated rebuilding of test machine (TV935.3 experience)