OSCam/fr/ShellCommands

Aus Streamboard Wiki
Zur Navigation springen Zur Suche springen

OSCam Übersicht OSCam Home OSCam Accueil OSCam Home

Les commandes terminal OSCam

Les commandes décrites dans cet article permettent de gérer OSCam via un terminal de commandes. Pour les plus "perfectionnistes", de créer des scripts personnalisés, adaptés à l'image utilisée et plus encore ...

Démarrer et arrêter OSCam

Paramètres de démarrage

Avec quels paramètres OSCam peut être démarré?

<PATH_TO_OSCAM>/oscam -h

Exemple:

  ___  ____   ___
 / _ \/ ___| / __|__ _ _ __ ___
| | | \___ \| |  / _` | '_ ` _ \
| |_| |___) | |_| (_| | | | | | |
 \___/|____/ \___\__,_|_| |_| |_|


OSCam cardserver v1.00-unstable_svn, build #4611 (i686-pc-linux) - (w) 2009-2011 Streamboard SVN
        see http://streamboard.gmc.to/oscam/ for more details
        based on Streamboard mp-cardserver v0.9d - (w) 2004-2007 by dukat
        This program is distributed under GPL.
        inbuilt modules: webinterface irdeto-guessing anticascading debug doublecheck loghistory smartreader pcsc gbox
        inbuilt protocols: monitor camd35-udp newcamd cccam serial
        inbuilt cardreader: nagra irdeto tongfang

oscam [-b] [-c config-dir] [-d] [-h]

        -b         : start in background
        -c <dir>   : read configuration from <dir>
                     default = /var/keys
        -t <dir>   : tmp dir <dir>
                     default = /tmp/.oscam
        -d <level> : debug level mask
                       0 = no debugging (default)
                       1 = detailed error messages
                       2 = ATR parsing info, ECM, EMM and CW dumps
                       4 = traffic from/to the reader
                       8 = traffic from/to the clients
                      16 = traffic to the reader-device on IFD layer
                      32 = traffic to the reader-device on I/O layer
                      64 = EMM logging
                     128 = DVBAPI logging
                     255 = debug all
        -r         : restart level
                       0 = disabled, restart request sets exit status 99
                       1 = restart activated, web interface can restart oscam (default)
                       2 = like 1, but also restart on SEGFAULTS
        -h         : show this help

Exemple de script de démarrage et d'arrêt

#!/bin/sh
# 2011/01/26 - OSCam Start/Stop-Example
#
# Examples *************************************************
# <PATH_TO_SCRIPT>/<SCRIPT_NAME> <PARAMETER>
# /var/emu/oscam.sh stop
# /var/emu/oscam.sh start
# /var/emu/oscam.sh reload (same as "start" or "restart")
#
# USER SETUP ###############################################
# ----------------------------------------------------------
# Path to the camd binaries - without trailing slash!
# Example: camd_path='/var/emu'
camd_path='/var/emu'
# ----------------------------------------------------------
# Path to the camd configuration files - without trailing slash!
# Example: camd_c_path='/var/keys'
camd_c_path='/var/keys'
# ----------------------------------------------------------
# CAMD PROCESS NAME
camd_ps_oscam='oscam'
# ----------------------------------------------------------
# Max time in seconds before sending killall SIGKILL to CAMD - default 5
camd_max_killtime=5
# ----------------------------------------------------------
# CAMD logfile
camd_logfile='/tmp/camd.log'
#camd_logfile='/dev/null' # <-- logging off
# ----------------------------------------------------------
# CAMD START COMMAND
camd_start_oscam="$camd_path/$camd_ps_oscam -c $camd_c_path"
# END USER SETUP ###########################################

# PRIVATE VARs *********************************************
hr='------------------------------------------------------------'

# FUNCTIONS ************************************************
fStop() {
    echo "$hr" >> $camd_logfile
    echo `date`": Stopping $1..." >> $camd_logfile
    if ! pidof $1 > /dev/null; then
        echo `date`": $1 is not running" >> $camd_logfile
    else
        echo `date`": Send kill SIGTERM to $1" >> $camd_logfile
        kill -15 $(pidof $1) >> $camd_logfile 2>&1
        sleep 1
        if pidof $1 > /dev/null; then
            i=$camd_max_killtime
            while expr $i != 0 > /dev/null; do
                if pidof $1 > /dev/null; then
                    echo `date`": Waiting max $i seconds before sending kill SIGKILL to $1..." >> $camd_logfile
                else
                    echo `date`": $1 successfully killed" >> $camd_logfile
                    break
                fi
                i=`expr $i - 1`
                sleep 1
            done
        else
            echo `date`": $1 successfully killed" >> $camd_logfile
        fi
        if pidof $1 > /dev/null; then
            echo `date`": Sending killall SIGKILL to $1!" >> $camd_logfile
            killall -9 $1 >> $camd_logfile 2>&1
        fi
    fi
}

fStart() {
    if pidof $1 > /dev/null; then
        fStop $1
    fi
    echo "$hr" >> $camd_logfile
    echo `date`": Starting $1..." >> $camd_logfile
    camd_start=$(eval echo \${"camd_start_$1"})
    echo `date`": $camd_start" >> $camd_logfile
    $camd_start > /dev/null 2>&1 &
    sleep 1
    if pidof $1 > /dev/null; then
        echo `date`": $1 successfully started" >> $camd_logfile
    else
        echo `date`": Could not start $1!" >> $camd_logfile
    fi
}

# BY PARAMETER *********************************************
case "$1" in
    'stop')
        fStop "$camd_ps_oscam"
    ;;
    'start'|'restart'|'reload')
        fStart "$camd_ps_oscam"
    ;;
    *)
        msg='UNKNWON OR MISSING PARAMETER!'
        echo "$msg"
        echo "$hr" >> $camd_logfile
        echo `date`": $msg" >> $camd_logfile
        exit 1
    ;;
esac
exit 0

Rechargements

Rechargement de la base de donnée utilisateurs:

kill -1 `pidof oscam`

Rechargement des informations sur les cartes:

killall -SIGUSR2 oscam

Autres

Etude sur les readers utilisés:

r=0
if [ -d "/tmp/.oscam" ]; then
    r=$(ls -l /tmp/.oscam/reader* | wc -l)
fi
echo $r


Diese Seite in anderen Sprachen - This page in other languages - Cette page dans d'autres langues - Queste pagine in altre Lingue

[[OSCam/de/{{#titleparts:OSCam/fr/ShellCommands|3|3}}|Deutsch]] [[OSCam/en/{{#titleparts:OSCam/fr/ShellCommands|3|3}}|English]] [[OSCam/fr/{{#titleparts:OSCam/fr/ShellCommands|3|3}}|Français]] [[OSCam/it/{{#titleparts:OSCam/fr/ShellCommands|3|3}}|Italiano]]