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