Zum Hauptinhalt springen

FAQ - Server (Fragen zum Linux-Server)

FAQ - Server (Fragen zum Linux-Server) Häufige Fragen zum Linux-Server

Wie kann der CONZEPT 16-Server über ein Script gestartet werden?

Das folgende Skript kann zum Starten, Stoppen und zur Überprüfung des Status verwendet werden. Die Variable c16_dir muss entsprechend dem Installationsverzeichnis angepasst werden. Die Kommentarzeilen # chkconfig ... und # decription ... werden bei einer RedHat-Distribution zum automatischen Starten beim Booten der Maschine benötigt.

#! /bin/sh
#
# Author: vectorsoft AG
# chkconfig: 2345 55 25
# description: start and stop CONZEPT 16-Server
#

### BEGIN INIT INFO
# Provides: c16_serv
# Required-Start: shk_usb
# Should-Start:
# Required-Stop:
# Should-Stop:
# Default-Start:
# Default-Stop:
### END INIT INFO

c16_dir=/home/support/server/56
# server for 32-bit system
# c16_prog=c16_serv_svc_l32
# server for 64-bit system
c16_prog=c16_serv_svc_l64

case "$1" in
start)
pid=`pidof $c16_prog`
if [ -n "$pid" ]
then
echo "CONZEPT 16 is already started!!"
else
echo "Starting CONZEPT 16-Server"
$c16_dir/$c16_prog -wait
fi
;;
stop)
pid=`pidof $c16_prog`
if [ -n "$pid" ]
then
echo "Shutting down CONZEPT 16-Server"
$c16_dir/$c16_prog -down -force -wait
else
echo "CONZEPT 16 ist already down!!"
fi
;;
status)
echo "Checking for CONZEPT 16-Server"
pid=`pidof $c16_prog`
if [ -n "$pid" ]
then
echo "CONZEPT 16 is running!!"
else
echo "CONZEPT 16 is down!!"
fi
;;
*)
echo "Usage: $0 {start|stop|status}"
exit 1
;;
esac
exit 0
Wie kann der CONZEPT 16-Server unter einer SUSE-Distribution beim Booten des Systems automatisch gestartet werden?

Linux-Systeme starten in verschiedenen Run-Leveln. Runlevel 2 ist dabei der Multi-User Level. Ab diesem Runlevel sollte der CONZEPT 16-Server zur Verfügung stehen. Das Starten des Servers erfolgt dabei über ein Skript (siehe oben). Dieses Skript wird in das Verzeichnis /etc/init.d kopiert. Es kann jedes andere Skript verwendet werden, solange die Übergabeparameter start und stop korrekt verarbeitet werden. Anschließend kann das Skript mit der Anweisung insserv aktiviert werden.

/sbin/insserv -d $c16_script

In diesem Beispiel wird der CONZEPT 16-Server im voreingestellten Default-Runlevel des Systems gestartet. Dem Kommando insserv können andere Parameter übergeben werden, um der Server in einem bestimmten Runlevel zu starten (siehe die entsprechenden man-Pages).

info

Vor dem Start des Servers muss der Dongle-Treiber bzw. die Verbindung zum Internet vorhanden sein. Der Server muss nach den entsprechenden Daemon gestartet werden.

Wie kann unter Linux überprüft werden, ob auf einem System CONZEPT 16-Prozesse laufen?

Unter Linux kann mit dem ps-Kommado eine Liste der laufenden Prozesse erzeugt werden. Um festzustellen, ob ein CONZEPT 16-Prozess auf der Maschine gestartet wurde, wird auf der Konsole nachfolgendes Kommando angegeben.

ps -A | grep c16*
Ab welcher Kernel-Version des Linux-Systems kann der CONZEPT 16-Server eingesetzt werden?

Der CONZEPT 16-Server-Version ab der Version 5.7 setzt mindestens die Installation der Kernel-Version 2.6.25, 3.x oder 4.x voraus. Mit diesem Kernel wird auch der 64-Bit-Dateizugriff (Datenbanken größer 2 GB) unterstützt. Zudem wird die glibc in der Version 2.10 benötigt.

  • : Ab Version 5.8.11 des CONZEPT 16-Servers wird die Kernel-Version 3.x oder 4.x vorausgesetzt. Zudem wird die glibc in der Version 2.17 benötigt.
info

Kernelversion 5.x wird ab Version 5.8.12 des CONZEPT 16-Servers unterstützt.

info

Unter Linux kann über das Kommando uname -r die Version des Kernels ermittelt werden. Die Version von der glibc kann mit dem Kommando ldd --version ausgegeben werden.

Worauf ist beim Einsatz des CONZEPT 16-Servers unter Linux bezüglich der Prozessstruktur zu achten?

Der CONZEPT 16-Server startet für jede geöffnete Datenbank einen eigenen Prozess. Innerhalb der Prozesse wird für jeden Benutzer ein eigener Thread angelegt. Daher sind die prozessspezifischen Kernel-Limits insbesondere im Hinblick auf den Speicherverbrauch und die Anzahl der Filehandles wirksam.

Das Prozesslimit von 256 Filehandles reicht für maximal 200 Benutzer pro Datenbank, da jede TCP/IP-Verbindung einen Handle benötigt. Für eine höhere Benutzeranzahl muss dieses Limit entsprechend erhöht werden.

info

Mit dem Befehl ulimit -a werden alle gesetzten Limits angezeigt.