The UNIX and Linux Forums  

Go Back   Die UNIX-und Linux-Foren > Top Foren > UNIX for Dummies Questions & Answers > Antworten auf häufig gestellte Fragen > Tipps und Tutorials
.
Google unix.com



Tipps und Tutorials Hilfreiche Texte von unseren Nutzern.

Mehr UNIX-und Linux-Forum Themen Vielleicht finden Sie hilfreiche
Faden Thread Starter Forum Antworten Last Post
Sonntag Solaris10 quickgun SUN Solaris 2 02-16-2009 06:46 AM
Re: Crontab in solaris10 gullapalli SUN Solaris 7 05-05-2008 08:29 PM
Erkennung von NIC in Solaris10 jimthompson IP-Networking 1 12-06-2005 09:35 AM
Erkennung von NIC in Solaris10 jimthompson UNIX für Fortgeschrittene und Experten 1 12-06-2005 09:34 AM
Schaffung eines in init.d Collins UNIX für Fortgeschrittene und Experten 2 09-30-2004 11:28 AM

 
English Japanese Spanish French German Portuguese Italian Dutch Swedish Russian Norwegian Hungarian Hebrew Danish Bulgarian Greek Powered by Powered by Google
 
LinkBack Thread Tools Suche diesen Thread Rate Thread Anzeige-Modi
  #1 (permalink)  
Old 11-16-2006
Tornado's Avatar
Tornado Tornado is offline Forum Advisor  
Registrierte Nutzer
  
 

Join Date: Nov 2006
Ort: Melbourne
Beiträge: 249
Erstellen einer Solaris10 Service

Die allgemeinen Schritte erforderlich sind:
o Bestimmen Sie die für das Starten und Stoppen Sie da.
o Stellen Sie einen Namen für den Dienst, und die Kategorie dieser Dienst gehört.
o Bestimmen Sie, ob Ihr Dienst mehrere Instanzen.
o Identifizieren Sie die Abhängigkeit zwischen dieser und alle anderen Dienstleistungen.
o Wenn ein Skript benötigt, um Start-und Stopp des Prozesses, erstellen Sie das Skript und gibt sie in ein lokales Verzeichnis wie / usr / local / svc / method
o Erstellen Sie eine Service-Manifest-Datei für Ihren Service. Diese Datei beschreibt den Service und die Abhängigkeit Beziehungen. Service manifestiert gezogen werden entweder in das Projektarchiv mit svccfg Befehl oder zur Boot-Zeit.
o Die Skripte in SMF mit der svccfg Utility.

Das folgende Beispiel zeigt.
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>
Im folgenden werden die Einträge in der Datei:

o Standard-Header.
Code:
<?xml version="1.0"?>
<!DOCTYPE service_bundle SYSTEM
"/usr/share/lib/xml/dtd/service_bundle.dtd.1">
o Kommentar Abschnitt.
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 Der Name des Dienstes. die Art (offensichtlichen) zeigt eine einfache Dienstleistung und nicht als ein Meilenstein, das Paket, das den Dienst anbietet, und der Service-Name.
Code:
<service_bundle type='manifest' name='OPTnew:newservice'>
o Service-Kategorie, Typ, Namen und die Version.
Code:
<service
    name='site/newservice'
    type='service'
    version='1'
o Unabhängig davon, ob mehrere Instanzen des Dienstes wird.
Code:
<single_instance/>
o die Service-Modell zu verwenden. Der Eintrag zeigt, dass der Dienst gestartet werden, indem svc.startd. vorübergehend sind und nicht einmal neu gestartet.
Code:
<property_group name='startd' type='framework'>
                <propval name='duration' type='astring' value='transient' />
        </property_group>
o Wie der Dienst gestartet und gestoppt.
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 Definieren Sie alle Abhängigkeiten für diese Dienstleistung. Der erste Eintrag heißt es, dass die newservice erfordert das Dateisystem /-Ort-Service.
Code:
	<dependency
            name='usr'
            type='service'
            grouping='require_all'
            restart_on='none'>
                <service_fmri value='svc:/system/filesystem/local'/>
        </dependency>
o Der zweite Eintrag stellt sicher, dass Ihr Service ist in Verbindung mit der Multi-User-Meilenstein, und dass die Multi-User-Meilenstein erfordert diesen Dienst.
Code:
        <dependency
            name='newservice'
            grouping='require_all'
            restart_on='none'>
            <service_fmri value='svc:/milestone/multi-user'/>
        </dependency>
o Erstellen der Instanz.
Code:
        <instance name='default' enabled='true' />

        <stability value='Unstable' />
o Erstellen von Informationen zu beschreiben, den Dienst.
Code:
        <template>
                <common_name>
                        <loctext xml:lang='C'>
                                New Service
                        </loctext>
                </common_name>
        </template>
Der neue Service (newservice) muss nun bei der Einfuhr in SMF.
Dies geschieht, indem Sie das Dienstprogramm svccfg:
Code:
# svccfg import /var/svc/manifest/site/newservice.xml
Nach dem Gottesdienst wurde der Einfuhr in die SMF es sichtbar sein soll mit dem Befehl Svcs.
Code:
# svcs newservice
STATE		STIME	FMRI
online		8:57:35	svc:/site/newservice:default
#
Es sollte auch möglich sein, zu manipulieren, den Dienst mit 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
#
Schließlich können Sie beobachten, dass die Multiuser-Meilenstein ist die newservice, um ihre Anforderungen.
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
#

Zuletzt bearbeitet von Lötlampe; am 11-16-2006 08:12 PM.. Grund: zu beheben unvollständig XML-Tag für den Service. die Schließung ">" nicht anwesend war,
 

Lesezeichen

Tags
solaris

Thread Tools Suche diesen Thread
Suche diesen Thread:

Erweiterte Suche
Anzeige-Modi Rate this thread
Rate this thread:

Forumregeln
Du möglicherweise nicht neue Themen
Du möglicherweise nicht nach Antworten
Du möglicherweise nicht post-Anlagen
Du möglicherweise nicht bearbeiten Sie Ihre Beiträge

BB-Code ist Auf
Smilies sind Auf
[IMG] Code Auf
HTML-Code ist Aus
Trackbacks sind Auf
Pingbacks sind Auf
Refbacks sind Auf




Alle Zeiten sind GMT -4. Es ist jetzt 05:54 PM.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Ltd. Sprachliche Übersetzungen Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
Die UNIX-und Linux-Foren Content © Copyright 1993-2009. Alle Rechte Reserved.Ad Management von RedTyger

Content Relevant URLs durch vBSEO 3.2.0