1<?xml version="1.0"?> 2<!DOCTYPE service_bundle SYSTEM "/usr/share/lib/xml/dtd/service_bundle.dtd.1"> 3<!-- 4 5 CDDL HEADER START 6 7 The contents of this file are subject to the terms of the 8 Common Development and Distribution License (the "License"). 9 You may not use this file except in compliance with the License. 10 11 You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 12 or http://www.opensolaris.org/os/licensing. 13 See the License for the specific language governing permissions 14 and limitations under the License. 15 16 When distributing Covered Code, include this CDDL HEADER in each 17 file and include the License file at usr/src/OPENSOLARIS.LICENSE. 18 If applicable, add the following below this CDDL HEADER, with the 19 fields enclosed by brackets "[]" replaced with your own identifying 20 information: Portions Copyright [yyyy] [name of copyright owner] 21 22 CDDL HEADER END 23 24 Copyright (c) 2004, 2010, Oracle and/or its affiliates. All rights reserved. 25 26 NOTE: This service manifest is not editable; its contents will 27 be overwritten by package or patch operations, including 28 operating system upgrade. Make customizations in a different 29 file. 30 31 Note: if this service is modified to consist of anything other 32 than a single instance named 'default', you must make changes to 33 $SRC/head/rpcsvc/daemon_utils.h and libnsl:open_daemon_lock(). 34--> 35 36<service_bundle type='manifest' name='SUNWnfssr:nfs-server'> 37 38<service 39 name='network/nfs/server' 40 type='service' 41 version='1'> 42 43 <dependency name='network' 44 grouping='require_any' 45 restart_on='error' 46 type='service'> 47 <service_fmri value='svc:/milestone/network' /> 48 </dependency> 49 50 <dependency name='nlockmgr' 51 grouping='require_all' 52 restart_on='error' 53 type='service'> 54 <service_fmri value='svc:/network/nfs/nlockmgr' /> 55 </dependency> 56 57 <dependency name='mapid' 58 grouping='optional_all' 59 restart_on='error' 60 type='service'> 61 <service_fmri value='svc:/network/nfs/mapid' /> 62 </dependency> 63 64 <dependency name='rpcbind' 65 grouping='require_all' 66 restart_on='restart' 67 type='service'> 68 <service_fmri value='svc:/network/rpc/bind' /> 69 </dependency> 70 71 <dependency name='keyserv' 72 grouping='optional_all' 73 restart_on='none' 74 type='service'> 75 <service_fmri value='svc:/network/rpc/keyserv' /> 76 </dependency> 77 78 <dependency name='gss' 79 grouping='optional_all' 80 restart_on='none' 81 type='service'> 82 <service_fmri value='svc:/network/rpc/gss' /> 83 </dependency> 84 85 <dependency name='share-group' 86 grouping='optional_all' 87 restart_on='none' 88 type='service'> 89 <service_fmri value='svc:/network/shares/group' /> 90 </dependency> 91 92 <dependency name='reparse' 93 grouping='optional_all' 94 restart_on='none' 95 type='service'> 96 <service_fmri value='svc:/system/filesystem/reparse' /> 97 </dependency> 98 99 <!-- Must have all local filesystems mounted before we share them --> 100 <dependency name='filesystem-local' 101 grouping='require_all' 102 restart_on='error' 103 type='service'> 104 <service_fmri value='svc:/system/filesystem/local' /> 105 </dependency> 106 107 <dependent 108 name='nfs-server_multi-user-server' 109 grouping='optional_all' 110 restart_on='none'> 111 <service_fmri value='svc:/milestone/multi-user-server' /> 112 </dependent> 113 114 <!-- 115 The shareall done as part of the nfs-server method may take a 116 long time, as the contents of dfstab can be arbitrarily large. 117 Set the timeout appropriately for both 'start' and 'refresh'. 118 --> 119 <exec_method 120 type='method' 121 name='start' 122 exec='/lib/svc/method/nfs-server %m' 123 timeout_seconds='3600' /> 124 125 <exec_method 126 type='method' 127 name='refresh' 128 exec='/lib/svc/method/nfs-server %m' 129 timeout_seconds='3600' /> 130 131 <!-- 132 The stop method runs unshareall as well as up to a 10 second 133 sleep to do graceful versus forceful shutdown of daemons. Set 134 the timeout appropriately. 135 --> 136 <exec_method 137 type='method' 138 name='stop' 139 exec='/lib/svc/method/nfs-server %m %{restarter/contract}' 140 timeout_seconds='3600' /> 141 142 <property_group name='application' type='framework'> 143 <stability value='Evolving' /> 144 <propval name='auto_enable' type='boolean' value='true' /> 145 </property_group> 146 147 <property_group name='firewall_context' type='com.sun,fw_definition'> 148 <propval name='name' type='astring' value='nfsd' /> 149 <propval name='ipf_method' type='astring' 150 value='/lib/svc/method/nfs-server ipfilter' /> 151 </property_group> 152 153 <property_group name='firewall_config' type='com.sun,fw_configuration'> 154 <propval name='policy' type='astring' value='use_global' /> 155 <propval name='apply_to' type='astring' value='' /> 156 <propval name='exceptions' type='astring' value='' /> 157 <propval name='value_authorization' type='astring' 158 value='solaris.smf.value.firewall.config' /> 159 </property_group> 160 <instance name='default' enabled='false'> 161 <property_group name='nfs-props' type='com.oracle.nfs,props'> 162 <propval name='device' type='astring' value=''/> 163 <propval name='listen_backlog' type='integer' value='32'/> 164 <propval name='max_connections' type='integer' value='-1'/> 165 <propval name='protocol' type='astring' value='ALL'/> 166 <propval name='server_delegation' type='astring' value='on'/> 167 <propval name='server_versmax' type='integer' value='4'/> 168 <propval name='server_versmin' type='integer' value='2'/> 169 <propval name='servers' type='integer' value='16'/> 170 </property_group> 171 </instance> 172 173 <stability value='Stable' /> 174 175 <template> 176 <common_name> 177 <loctext xml:lang='C'> 178 NFS server 179 </loctext> 180 </common_name> 181 <documentation> 182 <manpage title='nfsd' section='1M' 183 manpath='/usr/share/man' /> 184 </documentation> 185 </template> 186</service> 187 188</service_bundle> 189