OSCam/it/ShellCommands

Aus Streamboard Wiki
Zur Navigation springen Zur Suche springen

LanguageDE S.png OSCam Übersicht LanguageEN S.png OSCam Home LanguageFR S.png OSCam Accueil LanguageIT S.png OSCam Home

WarningS.png Attenzione: Il contenuto della traduzione in italiano e parzialmente in tedesco. Registrati e aiutaci a complementare e tradurre!

OSCam Comandi via Shell

Le informazioni seguenti non sono unicamente per i developers. Possono essere sicuramente utili anche per che scrive scripts ma non solo.

OSCam start e stop

Parametri da linea di comando

Con quali parametri si può eseguire OSCam ? <syntaxhighlight lang="bash"> <PATH_TO_OSCAM>/oscam -h </syntaxhighlight>

Esempio di output:

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


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
        -w <seconds>: time waiting for system time to be set correctly
        -h         : show this help

Script di Esempio per Start e Stop

<syntaxhighlight lang="bash">

  1. !/bin/sh
  2. 2011/01/26 - OSCam Start/Stop-Example
  3. Examples *************************************************
  4. <PATH_TO_SCRIPT>/<SCRIPT_NAME> <PARAMETER>
  5. /var/emu/oscam.sh stop
  6. /var/emu/oscam.sh start
  7. /var/emu/oscam.sh reload (same as "start" or "restart")
  8. USER SETUP ###############################################
  9. ----------------------------------------------------------
  10. Path to the camd binaries - without trailing slash!
  11. Example: camd_path='/var/emu'

camd_path='/var/emu'

  1. ----------------------------------------------------------
  2. Path to the camd configuration files - without trailing slash!
  3. Example: camd_c_path='/var/keys'

camd_c_path='/var/keys'

  1. ----------------------------------------------------------
  2. CAMD PROCESS NAME

camd_ps_oscam='oscam'

  1. ----------------------------------------------------------
  2. Max time in seconds before sending killall SIGKILL to CAMD - default 5

camd_max_killtime=5

  1. ----------------------------------------------------------
  2. CAMD logfile

camd_logfile='/tmp/camd.log'

  1. camd_logfile='/dev/null' # <-- logging off
  2. ----------------------------------------------------------
  3. CAMD START COMMAND

camd_start_oscam="$camd_path/$camd_ps_oscam -c $camd_c_path"

  1. END USER SETUP ###########################################
  1. PRIVATE VARs *********************************************

hr='------------------------------------------------------------'

  1. 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

}

  1. 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 </syntaxhighlight>

Ricaricare i Settings senza interrompere il servizio

<syntaxhighlight lang="bash">

  1. Ricarica il DB degli utenti:

kill -1 `pidof oscam`

  1. Ricarica le informazioni delle smartcards:

killall -SIGUSR2 oscam </syntaxhighlight>

Extra

Script per determinare il numero dei lettori di smartcard: <syntaxhighlight lang="bash"> r=0 if [ -d "/tmp/.oscam" ]; then

   r=$(ls -l /tmp/.oscam/reader* | wc -l)

fi echo $r </syntaxhighlight>


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

LanguageDE S.png [[OSCam/de/{{#titleparts:OSCam/it/ShellCommands|3|3}}|Deutsch]] LanguageEN S.png [[OSCam/en/{{#titleparts:OSCam/it/ShellCommands|3|3}}|English]] LanguageFR S.png [[OSCam/fr/{{#titleparts:OSCam/it/ShellCommands|3|3}}|Français]] LanguageIT S.png [[OSCam/it/{{#titleparts:OSCam/it/ShellCommands|3|3}}|Italiano]]