The UNIX and Linux Forums  
Hallo en welkom van de Verenigde Staten aan de UNIX en Linux Forum! Bedankt voor uw bezoek en Deelnemen aan onze wereldwijde gemeenschap.

Go Back   De Unix-en Linux Forum > Top Forums > UNIX voor Dummies Questions & Answers > Answers to Frequently Asked Questions > Tips en Tutorials
.
google unix.com



Tips en Tutorials Nuttige artikelen van onze gebruikers.

Meer UNIX en Linux Forum Onderwerpen Misschien vindt u Helpful
Draad Thread Starter Forum Antwoorden Last Post
Zondag Solaris10 quickgun SUN Solaris 2 02-16-2009 06:46
Re: Crontab in solaris10 gullapalli SUN Solaris 7 05-05-2008 08:29 PM
Detectiemiddel netwerkkaart in Solaris10 jimthompson IP Networking 1 12-06-2005 09:35
Detectiemiddel netwerkkaart in Solaris10 jimthompson UNIX for Advanced & Expert Gebruikers 1 12-06-2005 09:34
het creëren van een dienst in init.d collins UNIX for Advanced & Expert Gebruikers 2 09-30-2004 11:28

 
English Japanese Spanish French German Portuguese Italian Dutch Swedish Russian Norwegian Hungarian Hebrew Danish Bulgarian Greek Powered by Powered by Google
 
LinkBack Thread Tools Zoeken in deze Thread Rate Thread Display Modes
  #1 (permalink)  
Old 11-16-2006
Tornado's Avatar
Tornado Tornado is offline Forum Advisor  
Geregistreerde gebruiker
  
 

Join Date: november 2006
Locatie: Melbourne
Posts: 249
Het creëren van een Solaris10 dienst

De algemene stappen die nodig zijn:
o Bepaal het proces voor het starten en stoppen van uw dienst.
o Instelling van een naam voor de service en de categorie van deze dienst valt in.
o Bepaal of uw dienst draait meerdere exemplaren.
o Identificeer eventuele afhankelijkheid van de verhoudingen tussen deze dienst en een andere dienst.
o Als een script nodig is voor het starten en stoppen van het proces, het script en plaats deze in een lokale map als / usr / local / svc / methode
o Maak een dienst manifestbestand voor uw dienst. Dit bestand beschrijft de dienst en eventuele afhankelijkheid relaties. Service manifesten zijn getrokken in de repository, hetzij door gebruik te maken van svccfg commando of tijdens het booten.
o Nemen de scripts in SMF svccfg met behulp van het hulpprogramma.

Het volgende geeft een voorbeeld.
Code:
# vi /usr/local/svc/method/newservice
#!/sbin/sh
#
# Copyright (c) 1995, 1997-1999 by Sun Microsystems, Inc.
# All rights reserved.
#
#ident  "@(#)newservice    1.14    06/11/17 SMI"

case "$1" in
'start')
	/usr/bin/newservice &
	;;

'stop')
        /usr/bin/pkill -x -u 0 newservice
	;;

*0
	echo "Usage: $0 { start | stop }"
	;;
esac
exit 0

# chmod 544 /usr/local/svc/method/newservice

# cd /var/svc/manifest/site
# vi newservice.xml
<?xml version="1.0"?>
<!DOCTYPE service_bundle SYSTEM "/usr/share/lib/xml/dtd/service_bundle.dtd.1">
<!--
    Copyright 2004 Sun Microsystems, Inc.  All rights reserved.
    Use is subject to license terms.

    pragma ident        "@(#)newservice.xml 1.2     04/08/09 SMI"
-->

<service_bundle type='manifest' name='OPTnew:newservice'>

<service
    name='site/newservice'
    type='service'
    version='1'>

    <single_instance/>
	<dependency
            name='usr'
            type='service'
            grouping='require_all'
            restart_on='none'>
                <service_fmri value='svc:/system/filesystem/local'/>
        </dependency>

        <dependency
            name='newservice'
            grouping='require_all'
            restart_on='none'>
            <service_fmri value='svc:/milestone/multi-user'/>
        </dependency>

        <exec_method
            type='method'
            name='start'
            exec='/lib/svc/method/newservice start'
            timeout_seconds='30' />

        <exec_method
            type='method'
            name='stop'
            exec='/lib/svc/method/newservice stop'
            timeout_seconds='30' />

        <property_group name='startd' type='framework'>
                <propval name='duration' type='astring' value='transient' />
        </property_group>

        <instance name='default' enabled='true' />

        <stability value='Unstable' />

        <template>
                <common_name>
                        <loctext xml:lang='C'>
                                New Service
                        </loctext>
                </common_name>
        </template>
</service>

</service_bundle>
De volgende beschrijving van de items in het bestand:

o Standaard Header.
Code:
<?xml version="1.0"?>
<!DOCTYPE service_bundle SYSTEM
"/usr/share/lib/xml/dtd/service_bundle.dtd.1">
o Commentaar afdeling.
Code:
<!--
    Copyright 2004 Sun Microsystems, Inc.  All rights reserved.
    Use is subject to license terms.

    pragma ident        "@(#)newservice.xml 1.2     04/08/09 SMI"
-->
o De naam van de dienst. het type (kennelijk) duidt op een eenvoudige dienst in plaats van een mijlpaal, de verpakking die de dienst en de dienst naam.
Code:
<service_bundle type='manifest' name='OPTnew:newservice'>
o Service categorie, het type, de naam en versie.
Code:
<service
    name='site/newservice'
    type='service'
    version='1'
o Of meerdere exemplaren van de dienst zal worden uitgevoerd.
Code:
<single_instance/>
o de service-model te gebruiken. De binnenkomst blijkt dat de dienst zal worden gestart door svc.startd. transiënte services zijn gestart eens en niet opnieuw gestart.
Code:
<property_group name='startd' type='framework'>
                <propval name='duration' type='astring' value='transient' />
        </property_group>
o Hoe de service wordt gestart en gestopt.
Code:
        <exec_method
            type='method'
            name='start'
            exec='/lib/svc/method/newservice start'
            timeout_seconds='30' />

        <exec_method
            type='method'
            name='stop'
            exec='/lib/svc/method/newservice stop'
            timeout_seconds='30' />
o Definieer eventuele afhankelijkheden voor deze service. De eerste binnenkomst wordt gesteld dat de newservice vereist het bestandssysteem / lokale service.
Code:
	<dependency
            name='usr'
            type='service'
            grouping='require_all'
            restart_on='none'>
                <service_fmri value='svc:/system/filesystem/local'/>
        </dependency>
o Het tweede item zorgt ervoor dat uw dienst wordt in verband gebracht met de multi-user mijlpaal, en dat de multi-user mijlpaal vereist deze dienst.
Code:
        <dependency
            name='newservice'
            grouping='require_all'
            restart_on='none'>
            <service_fmri value='svc:/milestone/multi-user'/>
        </dependency>
o Het creëren van de aanleg.
Code:
        <instance name='default' enabled='true' />

        <stability value='Unstable' />
o Het creëren van informatie ter beschrijving van de dienst.
Code:
        <template>
                <common_name>
                        <loctext xml:lang='C'>
                                New Service
                        </loctext>
                </common_name>
        </template>
De nieuwe dienst (newservice) moet nu worden geïmporteerd in SMF.
Dit wordt gedaan door het uitvoeren van de svccfg nut:
Code:
# svccfg import /var/svc/manifest/site/newservice.xml
Na de dienst is ingevoerd in de SMF moet worden zichtbaar met behulp van de Svcs commando.
Code:
# svcs newservice
STATE		STIME	FMRI
online		8:57:35	svc:/site/newservice:default
#
Het moet ook mogelijk zijn om het manipuleren van de service via svcadm.
Code:
# svcadm -v disable site/newservice
site/newservice disabled.
# svcs newservice
STATE		STIME	FMRI
disabled	9:07:15	svc:/site/newservice:default
# svcadm -v enable site/newservice
site/newservice enabled.
# svcs newservice
STATE		STIME	FMRI
online		9:17:01	svc:/site/newservice:default
#
Tenslotte kunt u constateren dat de meergebruikersomgeving mijlpaal moet de newservice om haar eisen.
Code:
# svcs -d milestone/multi-user:default
STATE		STIME	FMRI
disabled	8:43:16 svc:/platform/sun4u/sf880drd:default
online		8:43:16 svc:/milestone/name-services:default
online		8:43:33 svc:/system/rmtmpfiles:default
online		8:43:42 svc:/network/rpc/bind:default
online		8:43:46 svc:/milestone/single-user:default
online		8:43:46 svc:/system/utmp:default
online		8:43:47 svc:/system/system-log:default
online		8:43:49 svc:/system/filesystem/local:default
online		8:44:01 svc:/system/mdmonitor:default
online		9:17:01 svc:/site/newservice:default
#

Laatst gewijzigd door steekvlam; op 11.16.2006 08:12 PM.. Reden: vast te stellen onvolledig xml tag voor service. de afsluitende '>' niet aanwezig was
 

Bladwijzers

Labels
solaris

Thread Tools Zoeken in deze Thread
Zoeken in deze Thread:

Uitgebreid zoeken
Display Modes Beoordeel deze draad
Beoordeel deze draad:

Posting Regels
Jij mag niet Post Nieuwe threads
Jij mag niet na antwoorden
Jij mag niet post attachments
Jij mag niet bewerk uw berichten

BB code is Aan
Smilies zijn Aan
[IMG] code Aan
HTML-code is Uit
Trackbacks zijn Aan
Pingbacks zijn Aan
Refbacks zijn Aan




Alle tijden zijn GMT -4. Het is nu 08:01.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Vertalingen Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
De Unix-en Linux Forums Copyright © 1993-2009. Alle rechten Reserved.Ad Beheer door RedTyger

Content Relevante URL's door vBSEO 3.2.0