Benutzer-Werkzeuge

Webseiten-Werkzeuge


solaris_services

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen gezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
Letzte Überarbeitung Beide Seiten der Revision
solaris_services [2012/07/19 21:55]
christian [-D]
solaris_services [2012/07/19 22:49]
christian [-l]
Zeile 1: Zeile 1:
-^Kommando^Verwendung^ +======Aufbau====== 
-|svcs|Statusinformationen +In Solaris 10 löste die "​Service Management Facility"​ (SMF) die klassischen und angestaubten Initskripte ab. Dadurch ergaben sich zahlreiche Vorteile, wie beispielsweise bessere Abhängigkeitsbildung und wirklich parallelisiertes Starten von Diensten. 
-|svcadm|Administrationaktivieren/deaktivieren| +In einem Fehlerfall werden Dienste neugestartetsodass Applikationen immer zur Verfügung stehen: 
-|svccfg|Konfiguration der Dienste| +<​code>​ 
-|svcprop|Anzeigen von Properties| +# svcs -p inetd 
-|inetadm|Administration von inetd-Diensten| +STATE          STIME    FMRI 
-|inetconv|inetd zu smf|+online ​        ​22:​06:​54 svc:/network/​inetd:​default 
 +               22:​06:​54 ​    1343 inetd 
 +# kill -9 1343; svcs -p inetd 
 +STATE          STIME    FMRI 
 +offline ​       22:25:29 svc:/​network/​inetd:default 
 +# svcs -p inetd 
 +STATE          STIME    FMRI 
 +online ​        ​22:​25:​29 svc:/​network/​inetd:default 
 +               ​22:​25:​29 ​    1435 inetd 
 +# tail /​var/​svc/​log/​network-inetd:​default.log 
 +[ Jul 19 22:25:29 Stopping because process received fatal signal from outside the service. ] 
 +[ Jul 19 22:25:29 Executing stop method ("/​usr/​lib/​inet/​inetd stop"​). ] 
 +[ Jul 19 22:25:29 Method "​stop"​ exited with status 0. ] 
 +[ Jul 19 22:25:29 Executing start method ("/​usr/​lib/​inet/​inetd start"​). ] 
 +[ Jul 19 22:25:29 Method "​start"​ exited with status 0. ] 
 +</​code>​
  
 +=====Stati=====
 +Alte Initskript-Dienste sind zu SMF kompatibel und können weiterhin verwendet werden. Ersichtlich ist das durch den auffälligen Dienststatus "''​legacy_run''"​. Ein Dienst kann folgende Stati haben:
 +^Status^Bedeutung^
 +|''​uninitialized''​|Dienst unkonfiguriert|
 +|''​disabled''​|deaktivierter Dienst|
 +|''​offline''​|Dienst wartet auf Ereignis|
 +|''​online''​|Dienst aktiv|
 +|''​degraded''​|(teilweise) fehlerhafter Dienst|
 +|''​maintenance''​|Dienst konnte nicht gestartet werden|
 +|''​legacy_run''​|alter init.d-Dienst|
 +
 +Ein Dienst wird immer im "​FMRI"​-Format (//Fault Managed Resource Identifier//​) angegeben: ''​svc:/​GRUPPE/​dienst:​default''​
 +z.B. ''​svc:/​network/​inetd:​default''​ für den Inetd-Superserver.
 +
 +=====Manifest und Logs=====
 +Dienste werden durch ein XML-Manifest unterhalb von ''/​lib/​svc/​manifest''​ definiert und pflegen ein eigenes Logfile unterhalb von ''/​var/​svc/​log''​.
 +Im Manifest werden beispielsweise definiert:
 +  * Name (''<​service>''​)
 +  * Standard-Status
 +  * Abhängigkeiten zu anderen Diensten (''<​dependency>''​)
 +  * Verhalten im Fehlerfall - z.B. abgestürzte Prozesse
 +  * Auszuführende Kommandos für Start/​Stop/​Refresh (''<​exec_method>''​)
 +  * Spezielle Dienst-Prozessparameter (sogenannte Properties),​ wie beispielsweise ''​tcp_keepalive''​ bei ''​inetd''​ - Properties stellen __**keine**__ Dienst-Konfiguration,​ wie beispielsweise FTP-Benutzer eines FTP-Servers,​ dar! (''<​property>''​)
 +  * Verweis zur Man-Page (''<​documentation>''​)
 +  * ...
 +
 +======Kommandos======
 +Zur Verwaltung von Diensten über das SMF stehen 4 Kommandos zur Verfügung:
 +
 +^Kommando^Verwendung^
 +|''​svcs''​|Statusinformationen|
 +|''​svcadm''​|Administration,​ aktivieren/​deaktivieren|
 +|''​svccfg''​|Konfiguration der Dienste|
 +|''​svcprop''​|Anzeigen von Properties|
  
-======svcs======+=====svcs=====
  
-=====none / -a=====+====none / -a====
 ^Parameter:​|**-a** bzw. **keine**| ^Parameter:​|**-a** bzw. **keine**|
 ^Bedeutung:​|Alle Services anzeigen| ^Bedeutung:​|Alle Services anzeigen|
Zeile 18: Zeile 67:
 </​code>​| </​code>​|
  
-=====-D=====+====-D====
 ^Parameter:​|**-D**| ^Parameter:​|**-D**|
 ^Bedeutung:​|Zeigt Dienste an, die von einem anderen (als FMRI definieren) abhängig sind.| ^Bedeutung:​|Zeigt Dienste an, die von einem anderen (als FMRI definieren) abhängig sind.|
Zeile 31: Zeile 80:
 online ​        ​21:​13:​35 svc:/​milestone/​self-assembly-complete:​default online ​        ​21:​13:​35 svc:/​milestone/​self-assembly-complete:​default
 </​code>​| </​code>​|
-^Erklärung|Die deaktivierten Dienste hotplug:​default und wusbd:​default,​ sowie die aktivierten Dienste filesystem/​minimal:​default,​ devices:​default,​ etc... sind vom Dienst device/​local abhängig.| +^Erklärung|Die deaktivierten Dienste ​''​hotplug:​default'' ​und ''​wusbd:​default''​, sowie die aktivierten Dienste ​''​filesystem/​minimal:​default''​''​devices:​default''​, etc... sind vom Dienst ​''​device/​local'' ​abhängig.| 
-=====-l===== + 
-Parameter: **-l** +====-l==== 
-Bedeutung: Zeigt Details zu einem Dienst an +^Parameter:|**-l**| 
-Beispiel: +^Bedeutung:|Zeigt Details zu einem Dienst an| 
-<​code>​+^Beispiel:|<​code>​
 # svcs -l inetd # svcs -l inetd
 fmri         ​svc:/​network/​inetd:​default fmri         ​svc:/​network/​inetd:​default
Zeile 42: Zeile 91:
 enabled ​     true enabled ​     true
 state        online state        online
-... +next_state ​  ​none 
-</​code>​+state_time ​  19Juli 2012 22:25:29 Uhr CEST 
 +logfile ​     /​var/​svc/​log/​network-inetd:​default.log 
 +restarter ​   svc:/​system/​svc/​restarter:​default 
 +contract_id ​ 132 
 +manifest ​    /​etc/​svc/​profile/​generic.xml 
 +manifest ​    /​lib/​svc/​manifest/​network/​inetd.xml 
 +dependency ​  ​require_any/​error svc:/​network/​loopback (online) 
 +dependency ​  ​require_all/​error svc:/​system/​filesystem/​local (online) 
 +dependency ​  ​optional_all/​error svc:/​milestone/​network (online) 
 +dependency ​  ​optional_all/​error svc:/​network/​rpc/​bind (online) 
 +dependency ​  ​optional_all/​none svc:/​network/​inetd-upgrade (disabled) 
 +dependency ​  ​require_all/​none svc:/​milestone/​name-services (online) 
 +</​code>​
 +^Erklärung:​|Der Dienst ''​inetd:​default''​ ist aktiv und wird automatisch beim Boot gestartet. ...|
  
-=====-n===== +====-n==== 
-Parameter: **-n** +^Parameter:|**-n**| 
-Bedeutung: Zeigt Benachrichtigungseinstellungen (z.B. SNMP) eines Dienstes an. +^Bedeutung:|Zeigt Benachrichtigungseinstellungen (z.B. SNMP) eines Dienstes an.| 
-Beispiel: +^Beispiel:|<​code>​
-<​code>​+
 # svcs -n inetd # svcs -n inetd
 Notification parameters for FMA Events Notification parameters for FMA Events
Zeile 71: Zeile 132:
         Notification Type: snmp         Notification Type: snmp
             Active: true             Active: true
-</​code>​+</​code>​
 +^Erklärung|Für den Dienst ''​inetd''​ sind detailierte Fehler-Warnungen und -Entwarnung über SNMP aktiviert. Darüber hinaus werden erkannte Fehler auch per SMTP an ''​root@localhost''​ gemeldet.| 
 + 
 +====-p==== 
 +^Parameter:​|**-p**| 
 +^Bedeutung:​|Zeigt evtl. gestartete Prozesse für einen Service bzw. eine Serviceinstanz an| 
 +^Beispiel:​|<​code>​ 
 +# svcs -p inetd 
 +STATE          STIME    FMRI 
 +online ​        ​21:​13:​34 svc:/​network/​inetd:​default 
 +               ​21:​13:​34 ​     462 inetd 
 +</​code>​| 
 +^Erklärung|Für den Dienst ''​inetd''​ ist ein Prozess ''​inetd''​ mit der PID ''​462''​ gestartet.| 
 + 
 +======Internetverweise====== 
 +  * PDF "​Solaris Service Management Facility"​ von Dipl. Chem. Rainer Orth, Technische Fakultät der Universität Bielefeld: [[http://​www.techfak.uni-bielefeld.de/​~ro/​talks/​smf.pdf]]
solaris_services.txt · Zuletzt geändert: 2012/07/19 22:50 von christian