Gut....kannst du mal versuchen per WinSCP in das Optware Verzeichnis auf dem NAS zu wechseln (.QPKG)dort müßte der Daemon laufen (nzbget ohne Endung).
Führe dann in dem Verzeichnis mal nzbget aus und poste das Ergebnis.
[QPKG] SHUTDOWN - ua. wenn kein Client erreichbar ist
- Eraser-EMC2-
- Geschlossen
- Erledigt
-
-
Der Daemon liegt bei mir hier: /share/MD0_DATA/.qpkg/Optware/bin
Allerdings kriege ich auch dort das Feedback: Command not found
-
tipp mal in diesem Verzeichnis ./nzbget ein
Siehst du denn die nzbget datei? Dürfte was um die 330kb haben -
Mit dem ./nzbget Command sehe ich die Schalter, die Datei in dem bin-verz. hat 283kb
-
ok..dann tipp mal im Terminal ein:
export PATH=/opt/bin:/opt/sbin:$PATHund probier danach von einer anderen stelle, ob jetzt nzbget als command gefunden wird.
Kannst du mir dann bitte mal die wait4pc.sh als code posten bzw. den Abschnitt wo nzbget abgefragt wird?
-
Nach dem Export klappt es, d.h. ich kriege die Schalter auch angezeigt, wenn ich nzbget im root aufrufe.
Wo liegt die wait4pc.sh?
-
wenn du das auch per QPKG Installiert hast im selben Verzeichnis (.QPKG/Wait4PC) wie Optware.
-
Zitat von "dolly0190"
wenn du das auch per QPKG Installiert hast im selben Verzeichnis (.QPKG/Wait4PC) wie Optware.
Ja,sorry, bin heute noch nicht richtig wach :roll:
Da kommt aber so wie ich das sehe nix vor...
Bash
Alles anzeigen#!/bin/sh # CMD_GETCFG="/sbin/getcfg" # QPKG_NAME="Wait4PC" SYS_SBIN_DIR="/sbin" SYS_QPKG_CONFIG_FILE="/etc/config/qpkg.conf" #qpkg infomation file QPKG_DIR=`${CMD_GETCFG} ${QPKG_NAME} Install_Path -f ${SYS_QPKG_CONFIG_FILE}` # source ${QPKG_DIR}/lib.sh # func_get_log func_get_nas func_get_shutdown_cmd while getopts "?cb:d:ims:tuhp:f:l:r:" OPTION do case ${OPTION} in \?|h) usage exit 1 ;; p) COMMAND="ping"; ACTION=${OPTARG} ;; d) COMMAND="qdownload"; ACTION=${OPTARG};; f) COMMAND="samba"; ACTION=${OPTARG} ;; r) COMMAND="rsync"; ACTION=${OPTARG} ;; b) COMMAND="hdcopy"; ACTION=${OPTARG} ;; s) COMMAND="shutdown"; ACTION=${OPTARG} ;; l) COMMAND="scriptlog"; ACTION=${OPTARG};; i) COMMAND="install" ;; u) COMMAND="uninstall" ;; t) COMMAND="status" ;; c) COMMAND="check" ;; m) COMMAND="menu" ;; esac done case ${COMMAND} in "ping") case ${ACTION} in "start"|"on"|"y"|"Y") func_set_ping_on ;; "stop"|"off"|"n"|"N") func_set_ping_off ;; esac ;; "qdownload") case ${ACTION} in "start"|"on"|"y"|"Y") func_set_qdownload_on ;; "stop"|"off"|"n"|"N") func_set_qdownload_off ;; esac ;; "samba") case ${ACTION} in "start"|"on"|"y"|"Y") func_set_samba_on ;; "stop"|"off"|"n"|"N") func_set_samba_off ;; esac ;; "rsync") case ${ACTION} in "start"|"on"|"y"|"Y") func_set_rsync_on ;; "stop"|"off"|"n"|"N") func_set_rsync_off ;; esac ;; "rsyncd") case ${ACTION} in "start"|"on"|"y"|"Y") func_set_rsyncd_on ;; "stop"|"off"|"n"|"N") func_set_rsyncd_off ;; esac ;; "hdcopy") case ${ACTION} in "start"|"on"|"y"|"Y") func_set_hdcopy_on ;; "stop"|"off"|"n"|"N") func_set_hdcopy_off ;; esac ;; "shutdown") case ${ACTION} in "start"|"on"|"y"|"Y") func_set_shutdown_on ;; "stop"|"off"|"n"|"N") func_set_shutdown_off ;; esac ;; "scriptlog") case ${ACTION} in "start"|"on"|"y"|"Y") func_set_log_on ;; "stop"|"off"|"n"|"N") func_set_log_off;; esac ;; "status") echo "-" func_get_check case ${bCHECK} in "Y") echo "[ on ] automatic shutdown" ;; "N") echo "[ off ] automatic shutdown" ;; esac echo "-" func_get_ping case ${bPING} in "Y") echo "[ on ] Host - check" ;; "N") echo "[ off ] Host - check" ;; esac echo "-" func_get_qdownload case ${bQDOWNLOAD} in "Y") echo "[ on ] Qdownload - check" ;; "N") echo "[ off ] Qdownload - check" ;; esac echo "-" func_get_samba case ${bSAMBA} in "Y") echo "[ on ] Samba - check" func_get_sessions echo "[ ${iSESSIONS/* /} ] number of open connections" ;; "N") echo "[ off ] Samba - check" ;; esac echo "-" func_get_rsync case ${bRSYNC} in "Y") echo "[ on ] Rsync - check" ;; "N") echo "[ off ] Rsync - check" ;; esac echo "-" func_get_rsyncd case ${bRSYNCD} in "Y") echo "[ on ] Rsyncd - check" ;; "N") echo "[ off ] Rsyncd - check" ;; esac echo "-" func_get_hdcopy case ${bHDCOPY} in "Y") echo "[ on ] HDusb-Copy - check" ;; "N") echo "[ off ] HDusb-Copy - check" ;; esac echo "-" func_get_log case ${bWATCHLOG} in "Y") echo "[ on ] Script-Log" ;; "N") echo "[ off ] Script-Log" ;; esac echo "-" RSYNC=`${CMD_GETCFG} System "Rsync Support" -f ${CONF_ULINUX} -d FALSE` if [ "x${RSYNC}" = "xTRUE" ]; then COUNT2=`${CMD_PS} | ${CMD_GREP} "rsyncd" | ${CMD_WC} -l` COUNT2=`expr ${COUNT2} - 2` echo "[ on ] Rsync " echo "[ ${COUNT2} ] rsync-Process(es) ( without Rsync-Server )" echo "-" fi ;; "check") func_check ;; "uninstall") func_uninstall ;; "install") func_install ;; "menu") func_menu ;; *) if [ ! -f "${CONF_WAIT4PC}" ]; then func_install func_menu fi func_run ;; esac
-
hmm übel....
sieh mal hier nach:
/etc/config/qpkg.confAnsonsten muss "Eraser-EMC2-" was dazu sagen.
Im Prinzip habe ich bei mir (Skript, kein QPKG) vor die Abfrage nzbet -L S den Pfad gesetzt:/share/MD0_DATA/.qpkg/Optware/bin/nzbget -L S
da ich vergeblich versucht habe den Optware Path-Bug http://wiki.qnap.com/wiki/Install_Optware_IPKG in den Griff zu kriegen. Nach jedem Neustart war die Path Variable /opt/bin weg und nur mit dem fixen Pfad habe ich das nzbget Script wieder ans laufen gekriegt.
Anmerkung an Eraser-EMC2-: Seit Version 0.70 muss man für das nzbget qpkg zusätzlich optware ipkg installieren. Bei 0.6 brauchte man das noch nicht.
edit:
[quote="Eraser-EMC2-"]In der "lib.sh" ist ein fehler bzw. es fehlt ein "fi" vor dem "else":
Codeif [ "x${bNZBGET}" = "xY" ]; then if [ "`nzbget -L S | grep Stand`" = "Server state: Stand-By" ]; then func_set_nzbget_status_on ((COUNT1++)) fi else
Da haben wirs ja....jetzt mußt du nur noch die lib.sh finden
-
Okay, das "fi" habe ich ergänzt. Wozu ist der 2.Code gut? Was muss ich damit machen?
-
Stop!
in dem aktuellen QPKG von Eraser-EMC2- ist das "fi" schon korrigiert.
Die 2. Zeile soll dir zeigen, wie dein nzbget Befehl aussehen muss, damit er richtig funktioniert. -
Alles klar.
-
Zitat
Norbert hat folgendes geschrieben:
@Raleigh&Senseohasser
Welche Version von NZBGET setzt ihr ein? 0.70 (inkl. Optware IPKG) oder 0.60 und welche QNAP Firmware Version ist installiert?Ich hatte beim Upgrade auf 0.7 und Firmware 3.4 das Problem, dass die Path Variable nicht richtig funktioniert und der NZBGET Daemon in /opt/bin nicht gefunden wird.
Probiert bitte mal folgendes aus:
WinSCP runterladen und mit dem QNAP verbinden. In das Terminal (schwarze Eingabebox) tipt Ihr einfach nur nzbget ein. Entweder wird jetzt gesagt, dass der Befehl nicht bekannt ist, oder alle "Schalter" werden euch angezeit.Hi,
den Thread habe ich ja ganz verschlafen, Sorry.
Ich hatte bis letzter Woche noch die NAS Firmware 3.3.9 Build0105 drauf. Upgedatet wurde die Tage auf 3.4.0 Build0212. NZBGet Version ist die 0.7.0.
Unten mein Ergebnis mit der Konsole.
Der Daemon liegt bei mir unter: /share/HDA_DATA/.qpkg/Optware/bin.
Wenn ich dann die Konsole mit "nzbget" ausführe kommt die gleiche Fehlermeldung.
Also bis jetzt annähernd das gleiche wie bei Senseohasser.
Meine lib.sh sieht so aus:Bash
Alles anzeigen#!/bin/sh # DATUM=`date '+%Y-%m-%d_%H-%M'`; SHUTDOWN="shutdown.sh" # CMD_GETCFG="/sbin/getcfg" CMD_SETCFG="/sbin/setcfg" CMD_ECHO="/bin/echo" CMD_WLOG="/sbin/write_log" CMD_CUT="/bin/cut" CMD_LN="/bin/ln" CMD_UPPERCASE=`which uppercase` CMD_LOWERCASE=`which lowercase` CMD_PS=`which ps` CMD_GREP=`which grep` CMD_WC=`which wc` CMD_PING=`which ping` CMD_SMBNET="/usr/local/samba/bin/net" CMD_SED="/bin/sed" # PATH_CONFIG="/etc/config" CONF_WAIT4PC="${PATH_CONFIG}/wait4pc.conf" CONF_ULINUX="${PATH_CONFIG}/uLinux.conf" CONF_QPKG="${PATH_CONFIG}/qpkg.conf" FILE_DOWNLOADLIST="${PATH_CONFIG}/downloadlist" FILE_CRONTAB="${PATH_CONFIG}/crontab" FILE_CRONTAB_NEW="/tmp/crontab" log () { [ "x${bWATCHLOG}" = "xY" ] && ${CMD_WLOG} "$1" 4; echo "$1" } func_set_nzbget_on() { ${CMD_SETCFG} GENERAL NZBGET Y -f ${CONF_WAIT4PC} log "NZBGET-Check activated" } func_set_nzbget_off() { ${CMD_SETCFG} GENERAL NZBGET N -f ${CONF_WAIT4PC} log "NZBGET-Check deactivated" } func_set_ping_on() { ${CMD_SETCFG} GENERAL PING Y -f ${CONF_WAIT4PC} log "Host-Check activated" } func_set_ping_off() { ${CMD_SETCFG} GENERAL PING N -f ${CONF_WAIT4PC} log "Host-Check deactivated" } func_set_instping_on() { ${CMD_SETCFG} GENERAL INSTPING Y -f ${CONF_WAIT4PC} log "Host-Check activated" } func_set_instping_off() { ${CMD_SETCFG} GENERAL INSTPING N -f ${CONF_WAIT4PC} log "Host-Check deactivated" } func_set_nzbget_status_on () { ${CMD_SETCFG} STATUS NZBGET Y -f ${CONF_WAIT4PC} } func_set_nzbget_status_off () { ${CMD_SETCFG} STATUS NZBGET N -f ${CONF_WAIT4PC} } func_set_ping_status_on () { ${CMD_SETCFG} STATUS PING Y -f ${CONF_WAIT4PC} } func_set_ping_status_off () { ${CMD_SETCFG} STATUS PING N -f ${CONF_WAIT4PC} } func_set_qdownload_on () { ${CMD_SETCFG} GENERAL QDOWNLOAD Y -f ${CONF_WAIT4PC} log "Qdownload-Check activated" } func_set_qdownload_off () { ${CMD_SETCFG} GENERAL QDOWNLOAD N -f ${CONF_WAIT4PC} log "Qdownload-Check deactivated" } func_set_qdownload_status_on () { ${CMD_SETCFG} STATUS QDOWNLOAD Y -f ${CONF_WAIT4PC} } func_set_qdownload_status_off () { ${CMD_SETCFG} STATUS QDOWNLOAD N -f ${CONF_WAIT4PC} } func_set_samba_on () { ${CMD_SETCFG} GENERAL SAMBA Y -f ${CONF_WAIT4PC} log "Samba-Check activated" } func_set_samba_off () { ${CMD_SETCFG} GENERAL SAMBA N -f ${CONF_WAIT4PC} log "Samba-Check deactivated" } func_set_samba_status_on () { ${CMD_SETCFG} STATUS SAMBA Y -f ${CONF_WAIT4PC} } func_set_samba_status_off () { ${CMD_SETCFG} STATUS SAMBA N -f ${CONF_WAIT4PC} } func_set_rsync_on () { ${CMD_SETCFG} GENERAL RSYNC Y -f ${CONF_WAIT4PC} log "rsync-Check activated" } func_set_rsync_off () { ${CMD_SETCFG} GENERAL RSYNC N -f ${CONF_WAIT4PC} log "rsync-Check deactivated" } func_set_rsync_status_on () { ${CMD_SETCFG} STATUS RSYNC Y -f ${CONF_WAIT4PC} } func_set_rsync_status_off () { ${CMD_SETCFG} STATUS RSYNC N -f ${CONF_WAIT4PC} } func_set_rsyncd_on () { ${CMD_SETCFG} GENERAL RSYNCD Y -f ${CONF_WAIT4PC} log "rsyncd-Check activated" } func_set_rsyncd_off () { ${CMD_SETCFG} GENERAL RSYNCD N -f ${CONF_WAIT4PC} log "rsyncd-Check deactivated" } func_set_rsyncd_status_on () { ${CMD_SETCFG} STATUS RSYNCD Y -f ${CONF_WAIT4PC} } func_set_rsyncd_status_off () { ${CMD_SETCFG} STATUS RSYNCD N -f ${CONF_WAIT4PC} } func_set_hdcopy_on () { ${CMD_SETCFG} GENERAL HDCOPY Y -f ${CONF_WAIT4PC} log "HDdusbCopy Check activated" } func_set_hdcopy_off () { ${CMD_SETCFG} GENERAL HDCOPY N -f ${CONF_WAIT4PC} log "HDusbCopy Check deactivated" } func_set_hdcopy_status_on () { ${CMD_SETCFG} STATUS HDCOPY Y -f ${CONF_WAIT4PC} } func_set_hdcopy_status_off () { ${CMD_SETCFG} STATUS HDCOPY N -f ${CONF_WAIT4PC} } func_set_shutdown_on () { ${CMD_SETCFG} GENERAL CHECK Y -f ${CONF_WAIT4PC} log "automatic Shutdown activated" } func_set_shutdown_off () { ${CMD_SETCFG} GENERAL CHECK N -f ${CONF_WAIT4PC} log "automatic Shutdown deactivated" } func_set_standby_on () { ${CMD_SETCFG} GENERAL STANDBY Y -f ${CONF_WAIT4PC} log "always automatic Shutdown activated" } func_set_standby_off () { ${CMD_SETCFG} GENERAL STANDBY N -f ${CONF_WAIT4PC} log "always automatic Shutdown deactivated" } func_set_log_on () { ${CMD_SETCFG} GENERAL LOG Y -f ${CONF_WAIT4PC} log "Script-Log activated" } func_set_log_off () { ${CMD_SETCFG} GENERAL LOG N -f ${CONF_WAIT4PC} log "Script-Log deactivated" } func_set_hosts () { ${CMD_SETCFG} GENERAL HOSTS $1 -f ${CONF_WAIT4PC} } func_set_host_status_on () { ${CMD_SETCFG} STATUS "HOST.${HOST}" ON -f ${CONF_WAIT4PC} } func_set_host_status_off () { ${CMD_SETCFG} STATUS "HOST.${HOST}" OFF -f ${CONF_WAIT4PC} } func_set_lastlog () { ${CMD_SETCFG} GENERAL LASTLOG `date '+%H:%M'` -f ${CONF_WAIT4PC} } func_get_path_optware () { sPATH_OPTWARE=`${CMD_GETCFG} Optware Install_Path -f ${CONF_QPKG} -d N` } func_get_activate_samba() { bSTANDBY=`${CMD_GETCFG} Samba Enable -f ${CONF_ULINUX} -d N` } func_get_activate_qget() { bSTANDBY=`${CMD_GETCFG} BTDownload Qget_Support -f ${CONF_ULINUX} -d N` } func_get_lastlog () { bLASTLOG=`${CMD_GETCFG} GENERAL LASTLOG -f ${CONF_WAIT4PC} -d Never` } func_get_check() { bCHECK=`${CMD_GETCFG} GENERAL CHECK -f ${CONF_WAIT4PC} -d N` } func_get_standby() { bSTANDBY=`${CMD_GETCFG} GENERAL STANDBY -f ${CONF_WAIT4PC} -d N` } func_get_nzbget() { bNZBGET=`${CMD_GETCFG} GENERAL NZBGET -f ${CONF_WAIT4PC} -d N` } func_get_ping() { bPING=`${CMD_GETCFG} GENERAL PING -f ${CONF_WAIT4PC} -d N` } func_get_instping() { bINSTPING=`${CMD_GETCFG} GENERAL INSTPING -f ${CONF_WAIT4PC} -d N` } func_get_qdownload() { bQDOWNLOAD=`${CMD_GETCFG} GENERAL QDOWNLOAD -f ${CONF_WAIT4PC} -d N` } func_get_samba() { bSAMBA=`${CMD_GETCFG} GENERAL SAMBA -f ${CONF_WAIT4PC} -d N` } func_get_rsync() { bRSYNCD=`${CMD_GETCFG} GENERAL RSYNC -f ${CONF_WAIT4PC} -d N` } func_get_rsyncd() { bRSYNC=`${CMD_GETCFG} GENERAL RSYNCD -f ${CONF_WAIT4PC} -d N` } func_get_hdcopy() { bHDCOPY=`${CMD_GETCFG} GENERAL HDCOPY -f ${CONF_WAIT4PC} -d N` } func_get_log() { bWATCHLOG=`${CMD_GETCFG} GENERAL LOG -f ${CONF_WAIT4PC} -d N` } func_get_sessions() { iSESSIONS=`${CMD_SMBNET} status sessions parseable | ${CMD_WC} -l` } func_get_subnet() { sSUBNET=`${CMD_GETCFG} GENERAL SUBNET -f ${CONF_WAIT4PC}` } func_get_hosts() { sHOSTS=`${CMD_GETCFG} GENERAL HOSTS -f ${CONF_WAIT4PC}` } func_get_nas() { sNAS_MODEL=`${CMD_GETCFG} System Model -f ${CONF_ULINUX}` } func_get_shutdown_cmd () { echo "Model :${sNAS_MODEL}" # SHUTDOWN="/etc/init.d/poweroff" SHUTDOWN=`${CMD_GETCFG} GENERAL SHUTDOWN -f ${CONF_ULINUX} -d "/etc/init.d/poweroff"` } func_check() { cp ${FILE_CRONTAB} ${FILE_CRONTAB}.${DATUM} func_crontab "MODIFY" "${SHUTDOWN}" "${QPKG_DIR}/wait4pc.sh -s on" echo "crontab for new shutdown-entries checked" } func_install() { cp ${FILE_CRONTAB} ${FILE_CRONTAB}.${DATUM} echo "A backup of the 'crontab'-file created" touch ${CONF_WAIT4PC} func_set_ping_on func_set_instping_on func_set_shutdown_off func_set_standby_off func_set_qdownload_off func_set_samba_off func_set_rsync_off func_set_rsyncd_off func_set_hdcopy_off func_set_log_off func_create_symlinks SYS_IP=`${CMD_IFCONFIG} eth0 | ${CMD_GREP} 'inet addr:'| ${CMD_GREP} -v '127.0.0.1' | ${CMD_CUT} -d: -f2 | ${CMD_CUT} -d " " -f1` ${CMD_SETCFG} GENERAL LOCALIP ${SYS_IP} -f ${CONF_WAIT4PC} WAITHOST=`${CMD_ECHO} ${SYS_IP} | ${CMD_CUT} -d '.' -f 4` ${CMD_SETCFG} GENERAL SUBNET "${SYS_IP/.$WAITHOST/.}" -f ${CONF_WAIT4PC} ${CMD_SETCFG} GENERAL HOSTS ${WAITHOST} -f ${CONF_WAIT4PC} func_crontab "MODIFY" "${SHUTDOWN}" "${QPKG_DIR}/wait4pc.sh -s on" func_crontab "ADD" "*/5 * * * * ${QPKG_DIR}/wait4pc.sh" echo "Wait4pc was successful installed" } func_uninstall() { cp ${FILE_CRONTAB} ${FILE_CRONTAB}.${DATUM} func_crontab "MODIFY" "${QPKG_DIR}/wait4pc.sh -s on" "${SHUTDOWN}" func_crontab "REMOVE" "${QPKG_DIR}/wait4pc.sh" } func_crontab() { OPTION=$1 SEARCH=$2 REPLACE=$3 if [ "x${OPTION}" != "x" ] && [ "x${SEARCH}" != "x" ]; then if [ "x${OPTION}" = "xADD" ]; then echo "${SEARCH}" >> ${FILE_CRONTAB} else touch "${FILE_CRONTAB_NEW}" while read MINUTE HOUR DAYOFMONTH MONTH DAYOFWEEK COMMAND do case ${OPTION} in "MODIFY") if [ "x${COMMAND}" = "x${SEARCH}" ]; then echo "${MINUTE} ${HOUR} ${DAYOFMONTH} ${MONTH} ${DAYOFWEEK} ${REPLACE}" >> ${FILE_CRONTAB_NEW} else echo "${MINUTE} ${HOUR} ${DAYOFMONTH} ${MONTH} ${DAYOFWEEK} ${COMMAND}" >> ${FILE_CRONTAB_NEW} fi ;; "REMOVE") if [ "x${COMMAND}" = "x${SEARCH}" ]; then echo "command removed" else echo "${MINUTE} ${HOUR} ${DAYOFMONTH} ${MONTH} ${DAYOFWEEK} ${COMMAND}" >> ${FILE_CRONTAB_NEW} fi ;; esac done < ${FILE_CRONTAB} mv ${FILE_CRONTAB_NEW} ${FILE_CRONTAB} fi fi crontab ${FILE_CRONTAB} } usage() { cat << EOF usage: $0 options OPTIONS: -h Show this message -p on|off Host ueberwachen (ping) -d on|off Downloads ueberwachen -s on|off Shutdown de/aktivieren -f on|off SAMBA beruecksichtigen -l on|off Script-Log de/aktivieren -r on|off Rsync ueberwachen -b on|off HDUsb-Copy ueberwachen -i Basiskonfiguration einrichten -u Ursprungszustand der crontab herstellen -t Status -c crontab ueberpruefen -m Konfigurationsmenue -w Erstellt Symlinks EOF } func_menu() { clear while [ "$CHOICE" != "x" ]&&[ "$CHOICE" != "X" ]; do func_get_check echo "-----------------------------------------------------" if [ "x${bCHECK}" = "xY" ]; then echo " [ 1 ] automatic Shutdown [ on ] " else echo " [ 1 ] automatic Shutdown [ off ]" fi func_get_ping if [ "x${bPING}" = "xY" ]; then echo " [ 2 ] Host-Check ( ping ) [ on ]" else echo " [ 2 ] Host-Check ( ping ) [ off ]" fi func_get_qdownload if [ "x${bQDOWNLOAD}" = "xY" ]; then echo " [ 3 ] QDownload check [ on ]" else echo " [ 3 ] QDownload check [ off ]" fi func_get_samba if [ "x${bSAMBA}" = "xY" ]; then echo " [ 4 ] Samba check [ on ]" else echo " [ 4 ] Samba check [ off ]" fi func_get_rsync if [ "x${bRSYNC}" = "xY" ]; then echo " [ 5 ] rsync check [ on ]" else echo " [ 5 ] rsync check [ off ]" fi func_get_rsyncd if [ "x${bRSYNCD}" = "xY" ]; then echo " [ 6 ] rsyncd check [ on ]" else echo " [ 6 ] rsyncd check [ off ]" fi func_get_hdcopy if [ "x${bHDCOPY}" = "xY" ]; then echo " [ 7 ] hdusb-copy check [ on ]" else echo " [ 7 ] hdusb-copy check [ off ]" fi func_get_log if [ "x${bWATCHLOG}" = "xY" ]; then echo " [ 8 ] Script-Log deactivate [ on ]" else echo " [ 8 ] Script-Log activate [ off ] " fi echo " " echo " [ p ] Crontab-entries check [ x ]" echo " " func_get_subnet echo " IP-Bereich : [ ${sSUBNET} ] " func_get_hosts echo " Host-Adressen : [ ${sHOSTS} ]" func_get_sessions echo " SAMBA-Verbindungen : ["${iSESSIONS}" ] " RSYNC=`${CMD_GETCFG} System "Rsync Support" -f ${CONF_ULINUX} -d FALSE` if [ "x${RSYNC}" = "xTRUE" ]; then COUNT2=`${CMD_PS} | ${CMD_GREP} "rsync " | ${CMD_WC} -l` COUNT2=`expr ${COUNT2} - 2` echo " Rsync-Prozcesse : [ ${COUNT2} ]" COUNT2=`${CMD_PS} | ${CMD_GREP} "rsyncd" | ${CMD_WC} -l` COUNT2=`expr ${COUNT2} - 2` echo " Rsyncd-Prozcesse : [ ${COUNT2} ]" fi echo " " echo " [ u ] Wait4pc remove [ x ]" echo " " echo " [ x ] Exit " echo "-----------------------------------------------------" read CHOICE clear case ${CHOICE} in 1) echo "---> " case ${bCHECK} in "N") func_set_shutdown_on ;; "Y") func_set_shutdown_off ;; esac echo "---> Done" ;; 2) echo "---> " case ${bPING} in "N") func_set_ping_on ;; "Y") func_set_ping_off ;; esac echo "---> Done" ;; 3) echo "---> " case ${bQDOWNLOAD} in "N") func_set_qdownload_on ;; "Y") func_set_qdownload_off ;; esac echo "---> Done" ;; 4) echo "---> " case ${bSAMBA} in "N") func_set_samba_on ;; "Y") func_set_samba_off ;; esac echo "---> Done" ;; 5) echo "---> " case ${bRSYNC} in "N") func_set_rsync_on ;; "Y") func_set_rsync_off ;; esac echo "---> Done" ;; 6) echo "---> " case ${bRSYNCD} in "N") func_set_rsyncd_on ;; "Y") func_set_rsyncd_off ;; esac echo "---> Done" ;; 7) echo "---> " case ${bHDCOPY} in "N") func_set_hdcopy_on ;; "Y") func_set_hdcopy_off ;; esac echo "---> Done" ;; 8) echo "---> " case ${bWATCHLOG} in "N") func_set_log_on ;; "Y") func_set_log_off ;; esac echo "---> Done" ;; p) echo "---> " func_check echo "---> Done" ;; i) echo "---> " func_install echo "---> Done" ;; u) echo "---> " func_uninstall echo "---> Done" ;; x|X) echo "---> Done" ;; esac done } func_run() { func_get_path_optware func_get_check func_get_instping func_get_subnet func_get_hosts if [ "x${bINSTPING}" = "xY" ]&&[ "x${bCHECK}" = "xN" ]; then echo "${bINSTPING} ${bCHECK}" COUNT1=0 COUNT2=0 for HOST in ${sHOSTS} do ${CMD_PING} -q -c 1 "${sSUBNET}${HOST}" &> /dev/null if [ "$?" -eq 0 ]; then func_set_host_status_on log "${sSUBNET}${HOST} is still reachable" ((COUNT2++)) else func_set_host_status_off fi done if [ ${COUNT2} -gt 0 ]; then func_set_ping_status_on COUNT1=`expr ${COUNT1} + ${COUNT2}` else func_set_ping_status_off fi func_set_lastlog else func_set_ping_status_off fi if [ "${bCHECK}" = "Y" ]; then COUNT1=0 func_get_standby func_get_qdownload func_get_samba func_get_rsync func_get_rsyncd func_get_hdcopy func_get_ping func_get_nzbget if [ "x${bQDOWNLOAD}" = "xY" ]; then COUNT2=0 while read URL STATUS PCID UNKOWN1 DATEEND DLID UNKOWN2 do if [ "x${URL}" != "x" ]; then case ${STATUS} in "run"|"pause") ((COUNT2++)) ;; esac fi done < ${FILE_DOWNLOADLIST} if [ ${COUNT2} -gt 0 ]; then log "it is a minimum of 1 download(s) active" func_set_qdownload_status_on COUNT1=`expr ${COUNT1} + ${COUNT2}` else func_set_qdownload_status_off fi else func_set_qdownload_status_off fi if [ "x${bSAMBA}" = "xY" ]; then func_get_sessions COUNT2=${iSESSIONS} log "Number of open connections : ${COUNT2}" if [ ${COUNT2} -gt 0 ]; then func_set_samba_status_on COUNT1=`expr ${COUNT1} + ${COUNT2}` else func_set_samba_status_off fi else func_set_samba_status_off fi if [ "x${bRSYNC}" = "xY" ]; then COUNT2=`${CMD_PS} | ${CMD_GREP} "rsync " | ${CMD_WC} -l` COUNT2=`expr ${COUNT2} - 1` log "Number of running rsync processes : ${COUNT2}" if [ ${COUNT2} -gt 0 ]; then func_set_rsync_status_on COUNT1=`expr ${COUNT1} + ${COUNT2}` else func_set_rsync_status_off fi else func_set_rsync_status_off fi if [ "x${bRSYNCD}" = "xY" ]; then COUNT2=`${CMD_PS} | ${CMD_GREP} "rsyncd" | ${CMD_WC} -l` COUNT2=`expr ${COUNT2} - 2` log "Number of running rsyncd processes : ${COUNT2}" if [ ${COUNT2} -gt 0 ]; then func_set_rsyncd_status_on COUNT1=`expr ${COUNT1} + ${COUNT2}` else func_set_rsyncd_status_off fi else func_set_rsyncd_status_off fi if [ "x${bHDCOPY}" = "xY" ]; then COUNT2=`${CMD_PS} | ${CMD_GREP} hdusb_copy | ${CMD_WC} -l` COUNT2=`expr ${COUNT2} - 1` log "Number of running hdusb_copy processes : ${COUNT2}" if [ ${COUNT2} -gt 0 ]; then func_set_hdcopy_status_on COUNT1=`expr ${COUNT1} + ${COUNT2}` else func_set_hdcopy_status_off fi else func_set_hdcopy_status_off fi if [ "x${bPING}" = "xY" ]; then COUNT2=0 for HOST in ${sHOSTS} do ${CMD_PING} -q -c 1 "${sSUBNET}${HOST}" &> /dev/null if [ "$?" -eq 0 ]; then func_set_host_status_on log "${sSUBNET}${HOST} is still reachable" ((COUNT2++)) # break; else func_set_host_status_off # log "${sSUBNET}${HOST} is offline" fi done if [ ${COUNT2} -gt 0 ]; then func_set_ping_status_on COUNT1=`expr ${COUNT1} + ${COUNT2}` else func_set_ping_status_off fi else func_set_ping_status_off fi if [ "x${bNZBGET}" = "xY" ]; then if [ "`${sPATH_OPTWARE}/bin/nzbget -L S | grep Stand`" = "Server state: Stand-By" ]; then func_set_nzbget_status_off ((COUNT1++)) else func_set_nzbget_status_on fi else func_set_nzbget_status_off fi if [ "${bCHECK}" = "Y" ]&&[ ${COUNT1} = 0 ]; then log "No clients found" log "Server will shutdown now : ${NAS}" [ "${bSTANDBY}" = "N" ] && func_set_shutdown_off ${SHUTDOWN} fi func_set_lastlog else # echo "automatischer Shutdown deaktiviert" func_set_qdownload_status_off func_set_samba_status_off func_set_rsync_status_off func_set_rsyncd_status_off func_set_hdcopy_status_off func_set_ping_status_off fi }
Fehlt da am Ende "else"?
Das mit der zweiten Zeile habe ich imer noch nicht begriffen. :?
Was mache ich damit?Grüße
Raleigh -
Hmm bei dir wird eine Pfadvariable abgefragt:
Codeif [ "x${bNZBGET}" = "xY" ]; then if [ "`${sPATH_OPTWARE}/bin/nzbget -L S | grep Stand`" = "Server state: Stand-By" ]; then func_set_nzbget_status_off ((COUNT1++)) else func_set_nzbget_status_on fi
${sPATH_OPTWARE}
mach dir mal ne Kopie der lib.sh und ändere die Zeile in:
Codeif [ "x${bNZBGET}" = "xY" ]; then if [ "`/share/HDA_DATA/.qpkg/Optware/bin/nzbget -L S | grep Stand`" = "Server state: Stand-By" ]; then func_set_nzbget_status_off ((COUNT1++)) else func_set_nzbget_status_on fi
Poste mal, ob deine Probleme damit dann behoben sind.
mfG Norbert -
Das problem von Raleigh ist eigentlich laut dem Screenshot, wie es auch später festgestellt habe und ich den Pfad vom Optware mit an die nzbget angefügt habe, dass die PATH-Variable für das Optware-Paket bzw. NZBGet nicht gesetzt wird, so dass man nzbget mit dem vollen Pfad aufrufen muß.
Zitat von "dolly0190"
Code: Alles auswählen
if [ "x${bNZBGET}" = "xY" ]; then
if [ "`/share/HDA_DATA/.qpkg/Optware/bin/nzbget -L S | grep Stand`" = "Server state: Stand-By" ]; then
func_set_nzbget_status_off
((COUNT1++))
else
func_set_nzbget_status_on
fi
Dabei muß man aber aufpassen, wenn man ein RAIDx eingerichtet hat, dann heißt es nicht "HDA_DATA" sondern "MD0_DATA",
oder wenn das QPKG nicht auf die erste Festplatte bei Singledisks, sondern auf die zweite oder eine andere Festplatte installiert wurde.zudem mußte ich feststellen, das mit der neuen Firmware die Überwachung vom QGet nicht mehr funktioniert,
da die aktive/wartende Downloadliste nicht mehr genutzt wird. -
Hallo Eraser-EMC2- ,
meine "Tipps" sollten auch im speziellen nur die Beiden erreichen. Danke, dass du so rege an der Entwicklung des Scripts arbeitest und die Wünsche der User regelmäßig in dein Projekt einfließen läßt. Weiter so....!
mfG Norbert -
Es gibt wieder schlechte Nachrichten.
Das NAS fährt nach 5 Minuten wieder runter, trotz Downloads mit NZBGet.Hier noch mal den Teil der lib.sh so wie ich den Inhalt geändert habe.
Code
Alles anzeigenif [ ${COUNT2} -gt 0 ]; then func_set_ping_status_on COUNT1=`expr ${COUNT1} + ${COUNT2}` else func_set_ping_status_off fi else func_set_ping_status_off fi if [ "x${bNZBGET}" = "xY" ]; then if [ "`/share/HDA_DATA/.qpkg/Optware/bin/nzbget -L S | grep Stand`" = "Server state: Stand-By" ]; then func_set_nzbget_status_off ((COUNT1++)) else func_set_nzbget_status_on fi else func_set_nzbget_status_off fi if [ "${bCHECK}" = "Y" ]&&[ ${COUNT1} = 0 ]; then log "No clients found" log "Server will shutdown now : ${NAS}" [ "${bSTANDBY}" = "N" ] && func_set_shutdown_off ${SHUTDOWN} fi func_set_lastlog else # echo "automatischer Shutdown deaktiviert" func_set_qdownload_status_off func_set_samba_status_off func_set_rsync_status_off func_set_rsyncd_status_off func_set_hdcopy_status_off func_set_ping_status_off fi }
Grüße
Raleigh -
Ich habe wohl gerade meinen Fehler im Script gefunden:
Zitat von "Raleigh"if [ "x${bNZBGET}" = "xY" ]; then
if [ "`/share/HDA_DATA/.qpkg/Optware/bin/nzbget -L S | grep Stand`" = "Server state: Stand-By" ]; then
func_set_nzbget_status_off
((COUNT1++))
else
func_set_nzbget_status_on
fi
else
func_set_nzbget_status_off
fi
Wenn ich mir das nun anschaue, sollte daseine Zeile weiter unten unterhalb vom "else" stehen.
Da das NAS bei "COUNT1 = 0" herunterfährt und damit es bei einem Download vom NZBGet nicht macht, muß der Zähler "COUNT1" um eins hochgezählt werden, wobei es eigentlich ausreichen sollte "COUNT1" auf 1 zu setzen.
Somit müßte das Script so geändert werden:Zitatif [ "x${bNZBGET}" = "xY" ]; then
if [ "`/share/HDA_DATA/.qpkg/Optware/bin/nzbget -L S | grep Stand`" = "Server state: Stand-By" ]; then
func_set_nzbget_status_off
else
func_set_nzbget_status_on
((COUNT1++))
fi
else
func_set_nzbget_status_off
fi
Sieht das jemand genauso ?Wünsche eine gute Nacht,
Stefan -
Frag mich nicht, ob das stimmt.
"Also - er fragt nach, ob NZBget im STANDBY ist - wenn NZBget im Standby ist, darf er ja runterfahren.
Wenn also NZBget im standby ist, darf COUNT nicht erhöht werden, da COUNT sonst UNGLEICH null ist.
Ergo muß das COUNT1++ auf jeden Fall aus der THEN anweisung raus." -
@ Stefan
Ich glaube du hast den Fehler gefunden.
Das NAS lief jetzt über 15 Minuten durch, beim runterladen mit NZBGet. Erst als ich den Download pausierte, schaltete das NAS nach 5 Minuten aus. :thumb:
Nur mal so als Vergleich, so wie es jetzt bei mir in der lib.sh aussieht.
Codeif [ "x${bNZBGET}" = "xY" ]; then if [ "`/share/HDA_DATA/.qpkg/Optware/bin/nzbget -L S | grep Stand`" = "Server state: Stand-By" ]; then func_set_nzbget_status_off else func_set_nzbget_status_on ((COUNT1++)) fi else func_set_nzbget_status_off fi
Ein Frage fällt mir da noch ein. Was meinst du mit "Continuous Ping"? :oops:
Grüße
Raleigh