Annotation of embedaddon/quagga/solaris/README.txt, revision 1.1
1.1 ! misho 1: To build packages for Solaris 10:
! 2:
! 3: Requirements:
! 4: -------------
! 5:
! 6: - Development environment including gcc (eg as shipped with Solaris 10)
! 7:
! 8: - The Package tools from Solaris 10 or Solaris Nevada/Express.
! 9:
! 10: - i.manifest and r.manifest scripts as supplied with Solaris Express
! 11: in /usr/sadm/install/scripts/ or from OpenSolaris.org:
! 12:
! 13: http://cvs.opensolaris.org/source/xref/usr/src/pkgdefs/common_files/i.manifest
! 14: http://cvs.opensolaris.org/source/xref/usr/src/pkgdefs/common_files/r.manifest
! 15:
! 16: i.manifest must be at least version 1.5. Place these scripts in
! 17: this directory if you are using Solaris 10 GA (which does not ship with
! 18: these scripts), or in the solaris/ directory in the Quagga source.
! 19:
! 20:
! 21: Package creation instructions:
! 22: ------------------------------
! 23:
! 24: 1. Configure and build Quagga in the top level build directory as per
! 25: normal, eg:
! 26:
! 27: ./configure --prefix=/usr/local/quagga \
! 28: --localstatedir=/var/run/quagga
! 29: --enable-gcc-rdynamic --enable-opaque-lsa --enable-ospf-te \
! 30: --enable-multipath=64 --enable-user=quagga \
! 31: --enable-ospfclient=yes --enable-ospfapi=yes \
! 32: --enable-group=quagga --enable-nssa --enable-opaque-lsa
! 33:
! 34: You will need /usr/sfw/bin and /usr/ccs/bin in your path.
! 35:
! 36: 2. make install in the top-level build directory, it's a good idea to make
! 37: use of DESTDIR to install to an alternate root, eg:
! 38:
! 39: gmake DESTDIR=/var/tmp/qroot install
! 40:
! 41: 3. In this directory (solaris/), run make packages, specifying DESTDIR if
! 42: appropriate, eg:
! 43:
! 44: gmake DESTDIR=/var/tmp/qroot packages
! 45:
! 46: This should result in 4 packages being created:
! 47:
! 48: quagga-libs-...-$ARCH.pkg - QUAGGAlibs
! 49: quagga-daemons-...-$ARCH.pkg - QUAGGAdaemons
! 50: quagga-doc-...-$ARCH.pkg - QUAGGAdoc
! 51: quagga-dev-...-$ARCH.pkg - QUAGGAdev
! 52: quagga-smf-...-$ARCH.pkg - QUAGGAsmf
! 53:
! 54: QUAGGAlibs and QUAGGAdaemons are needed for daemon runtime. QUAGGAsmf
! 55: provides the required bits for Solaris 10+ SMF support.
! 56:
! 57:
! 58: Install and post-install configuration notes:
! 59: ---------------------------------------------
! 60:
! 61: - If you specified a user/group which does not exist per default on Solaris
! 62: (eg quagga/quagga) you *must* create these before installing these on a
! 63: system. The packages do *not* create the users.
! 64:
! 65: - The configuration files are not created. You must create the configuration
! 66: file yourself, either with your complete desired configuration, or else if
! 67: you wish to use the telnet interface for further configuration you must
! 68: create them containing at least:
! 69:
! 70: password whatever
! 71:
! 72: The user which quagga runs as must have write permissions on this file, no
! 73: other user should have read permissions, and you would also have to enable
! 74: the telnet interface (see below).
! 75:
! 76: - SMF notes:
! 77:
! 78: - QUAGGAsmf installs a svc:/network/routing/quagga service, with an
! 79: instance for each daemon
! 80:
! 81: - The state of all instances of quagga service can be inspected with:
! 82:
! 83: svcs -l svc:/network/routing/quagga
! 84:
! 85: or typically just with a shortcut of 'quagga':
! 86:
! 87: svcs -l quagga
! 88:
! 89: - A specific instance of the quagga service can be inspected by specifying
! 90: the daemon name as the instance, ie quagga:<daemon>:
! 91:
! 92: svcs -l svc:/network/routing/quagga:zebra
! 93: svcs -l svc:/network/routing/quagga:ospfd
! 94: <etc>
! 95:
! 96: or typically just with the shortcut of 'quagga:<daemon>' or even
! 97: <daemon>:
! 98:
! 99: svcs -l quagga:zebra
! 100: svcs -l ospfd
! 101:
! 102: Eg:
! 103:
! 104: # # svcs -l ripd
! 105: fmri svc:/network/routing/quagga:ripd
! 106: name Quagga: ripd, RIPv1/2 IPv4 routing protocol daemon.
! 107: enabled true
! 108: state online
! 109: next_state none
! 110: state_time Wed Jun 15 16:21:02 2005
! 111: logfile /var/svc/log/network-routing-quagga:ripd.log
! 112: restarter svc:/system/svc/restarter:default
! 113: contract_id 93
! 114: dependency require_all/restart svc:/network/routing/quagga:zebra (online)
! 115: dependency require_all/restart file://localhost//usr/local/quagga/etc/ripd.conf (online)
! 116: dependency require_all/none svc:/system/filesystem/usr:default (online)
! 117: dependency require_all/none svc:/network/loopback (online)
! 118:
! 119: - Configuration of startup options is by way of SMF properties in a
! 120: property group named 'quagga'. The defaults should automatically be
! 121: inline with how you configured Quagga in Step 1 above.
! 122:
! 123: - By default the VTY interface is disabled. To change this, see below for
! 124: how to set the 'quagga/vty_port' property as appropriate for
! 125: /each/ service. Also, the VTY is set to listen only to localhost by
! 126: default, you may change the 'quagga/vty_addr' property as appropriate
! 127: for both of the 'quagga' service and specific individual instances of
! 128: the 'quagga' service (ie quagga:zebra, quagga:ospfd, etc..).
! 129:
! 130: - Properties belonging to the 'quagga' service are inherited by all
! 131: instances. Eg:
! 132:
! 133: # svcprop -p quagga svc:/network/routing/quagga
! 134: quagga/group astring root
! 135: quagga/retain boolean false
! 136: quagga/user astring root
! 137: quagga/vty_addr astring 127.1
! 138: quagga/vty_port integer 0
! 139:
! 140: # svcprop -p quagga svc:/network/routing/quagga:ospfd
! 141: quagga/retain_routes boolean false
! 142: quagga/group astring root
! 143: quagga/retain boolean false
! 144: quagga/user astring root
! 145: quagga/vty_addr astring 127.1
! 146: quagga/vty_port integer 0
! 147:
! 148: All instances will inherit these properties, unless the instance itself
! 149: overrides these defaults. This also implies one can modify properties of
! 150: the 'quagga' service and have them apply to all daemons.
! 151:
! 152: # svccfg -s svc:/network/routing/quagga \
! 153: setprop quagga/vty_addr = astring: ::1
! 154:
! 155: # svcprop -p quagga svc:/network/routing/quagga
! 156: quagga/group astring root
! 157: quagga/retain boolean false
! 158: quagga/user astring root
! 159: quagga/vty_port integer 0
! 160: quagga/vty_addr astring ::1
! 161:
! 162: # # You *must* refresh instances to have the property change
! 163: # # take affect for the 'running snapshot' of service state.
! 164: # svcadm refresh quagga:ospfd
! 165:
! 166: # svcprop -p quagga svc:/network/routing/quagga:ospfd
! 167: quagga/retain_routes boolean false
! 168: quagga/group astring root
! 169: quagga/retain boolean false
! 170: quagga/user astring root
! 171: quagga/vty_port integer 0
! 172: quagga/vty_addr astring ::1
! 173:
! 174: Other daemon-specific options/properties may be available, however they
! 175: are not yet honoured/used (eg ospfd/apiserver on svc:/network/ospf).
! 176:
! 177: - As SMF is dependency aware, restarting network/zebra will restart all the
! 178: other daemons.
! 179:
! 180: - To upgrade from one set of Quagga packages to a newer release, one must
! 181: first pkgrm the installed packages. When one pkgrm's QUAGGAsmf all
! 182: property configuration will be lost, and any customisations will have to
! 183: redone after installing the updated QUAGGAsmf package.
! 184:
! 185: - These packages are not supported by Sun Microsystems, report bugs via the
! 186: usual Quagga channels, ie Bugzilla. Improvements/contributions of course
! 187: would be greatly appreciated.
! 188:
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>