Linux.systemd: Unterschied zwischen den Versionen

Aus OrgaMon Wiki
Zur Navigation springen Zur Suche springen
Keine Bearbeitungszusammenfassung
Zeile 72: Zeile 72:
== VirtualBox für GUI-OrgaMon ==
== VirtualBox für GUI-OrgaMon ==
== vor openSuSe 12.1 ==
== vor openSuSe 12.1 ==
Nehmen wir an, Du hast ein Skript <i>deindienst.sh</i> das deinen Dienst startet, dies soll ab sofort auch nach einem Neustart des Server erfolgen. Das geht so:


* in /etc/init.d
* in /etc/init.d

Version vom 1. März 2012, 18:10 Uhr

"systemd" ist ein Linux Programm das den Boot-Prozess eines Linux-System durchführt. Zu startende Dienste sind von anderen abhängig so dass dieser Boot-Prozess nicht ganz einfach ist. Infos zu systemd:


cOrgaMon

Sicherstellen des Laufwerkes I:\

/etc/systemd/system/root-.wine-drive_i.mount
#
# cOrgaMon.service depends on
#  

[Unit]
Description=/root/.wine/drive_i
After=network.target

[Mount]
What=//raib91/i$
Where=/root/.wine/drive_i
Type=cifs
Options=-o guest

[Install]
WantedBy=orgamon.service

Der cOrgaMon-Service

/etc/systemd/system/orgamon.service
#
# cOrgaMon XML RPC Server Start Up
#

[Unit]
Description=cOrgaMon.exe XML-RPC-Server under wine
Requires=root-.wine-drive_i.mount
After=root-.wine-drive_i.mount

[Service]
Environment=LANG=de_DE.UTF-8
ExecStart=/usr/bin/wine "C:\\Program Files\\OrgaMon\\cOrgaMon.exe"
User=root

#
# In case of a restart
#
Restart=always
RestartSec=25s

#
# Logs go to Syslog
#
StandardOutput=syslog
StandardError=syslog
SyslogIdentifier=cOrgaMon.exe

[Install]
WantedBy=multi-user.target

#

Start

systemctl enable orgamon.service
systemctl start orgamon.service

aqbd

VirtualBox für GUI-OrgaMon

vor openSuSe 12.1

Nehmen wir an, Du hast ein Skript deindienst.sh das deinen Dienst startet, dies soll ab sofort auch nach einem Neustart des Server erfolgen. Das geht so:

  • in /etc/init.d
cp skeleton deindienst
ln -s deindienst /usr/sbin/rcdeindienst
  • nun deinen Dienst anpassen
joe deindienst
# Provides:          deindienst
# Required-Start:    $ALL
  • den ganzen Vorcheck wegmachen
-- snip

# Check for missing binaries (stale symlinks should not happen)
# Note: Special treatment of stop for LSB conformance
FOO_BIN=/usr/sbin/FOO
test -x $FOO_BIN || { echo "$FOO_BIN not installed";
        if [ "$1" = "stop" ]; then exit 0;
        else exit 5; fi; } 

# Check for existence of needed config file and read it
FOO_CONFIG=/etc/sysconfig/FOO
test -r $FOO_CONFIG || { echo "$FOO_CONFIG not existing";
       if [ "$1" = "stop" ]; then exit 0;
       else exit 6; fi; }

# Read config
. $FOO_CONFIG

-- snap --


  • im Startbereich einfach Dein Skript eintragen
       ## Start daemon with startproc(8). If this fails
       ## the return value is set appropriately by startproc.
       /sbin/startproc /etc/deindienst.sh
  • nun den Autostart sicherstellen
chkconfig --add deindienst
  • willst du jetzt schon starten?
rcdeindienst start