Netgate Discussion Forum
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Search
    • Register
    • Login

    Скрин настроек cron по умолчанию

    Scheduled Pinned Locked Moved Russian
    9 Posts 3 Posters 4.3k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • G
      garald50
      last edited by

      Покажите пожалуйста скрин настроек крона по умолчанию (тот который сразу после устнановки pf 1.2.3).
      Вот мой:

      Интересуют команды, которые каждые 5 минут.
      за что отвечает эта каждая команда?

      /usr/local/bin/checkreload.sh
      /etc/ping_hosts.sh 
      /usr/local/etc/rc.d/route_upd

      не нахожу я через wincsp ping_hosts.sh по указанному пути.
      route_upd на сколько я помню это пользовательская, сам писал для обновления маршрутов. (давно было, забыл)
      как сделать чтоб она каждый день только отрабатывала?

      1 Reply Last reply Reply Quote 0
      • G
        garald50
        last edited by

        Гляньте, есть ли у вас ping_hosts.sh в /etc?
        Что он делает и за что отвечает этот скрипт?

        1 Reply Last reply Reply Quote 0
        • D
          dvserg
          last edited by

          @garald50:

          Гляньте, есть ли у вас ping_hosts.sh в /etc?
          Что он делает и за что отвечает этот скрипт?

          У меня такое в кроне есть, а по указанному пути нет. Скорее всего осталось от какого-то пакета.

          SquidGuardDoc EN  RU Tutorial
          Localization ru_PFSense

          1 Reply Last reply Reply Quote 0
          • G
            garald50
            last edited by

            То есть эту строчку с ping_hosts.sh можно удалить без последствий из cron?
            checkreload.sh что делает?

            1 Reply Last reply Reply Quote 0
            • D
              dvserg
              last edited by

              @garald50:

              То есть эту строчку с ping_hosts.sh можно удалить без последствий из cron?
              checkreload.sh что делает?

              А checkreload.sh  нужен - монитор применения настроек.

              SquidGuardDoc EN  RU Tutorial
              Localization ru_PFSense

              1 Reply Last reply Reply Quote 0
              • E
                Eugene
                last edited by

                ping_hosts.sh - для ipsec возможно, попробуй сконфигури ipsec тоннель с указанием удалённого ip в поле "ping" (одно из последних полей на странице настройки тоннеля, не помню точно как называется). Этот файл должен появиться (создаться).

                http://ru.doc.pfsense.org

                1 Reply Last reply Reply Quote 0
                • G
                  garald50
                  last edited by

                  @dvserg:

                  А checkreload.sh  нужен - монитор применения настроек.

                  он у всех каждые 5 минут вызывается?
                  @Evgeny:

                  ping_hosts.sh - для ipsec возможно, попробуй сконфигури ipsec тоннель с указанием удалённого ip в поле "ping" (одно из последних полей на странице настройки тоннеля, не помню точно как называется). Этот файл должен появиться (создаться).

                  туннель есть, поле Automatically ping host заполнено. скрипта по указанному в cron'е пути (/etc/) нет. нашел этот скрипт в /usr/local/bin

                  1 Reply Last reply Reply Quote 0
                  • E
                    Eugene
                    last edited by

                    а что внутри ping_hosts.sh ?

                    http://ru.doc.pfsense.org

                    1 Reply Last reply Reply Quote 0
                    • G
                      garald50
                      last edited by

                      @Evgeny:

                      а что внутри ping_hosts.sh ?

                      
                      #!/bin/sh
                      
                      # pfSense ping helper
                      # written by Scott Ullrich
                      # (C)2006 Scott Ullrich
                      # All rights reserved.
                      
                      # Format of file should be deliminted by |
                      #  Field 1:  Source ip
                      #  Field 2:  Destination ip
                      #  Field 3:  Ping count
                      #  Field 4:  Script to run when service is down
                      #  Field 5:  Script to run once service is restored
                      #  Field 6:  Ping time threshold
                      #  Field 7:  Wan ping time threshold
                      
                      # Read in ipsec ping hosts and check the CARP status
                      if [ -f /var/db/ipsecpinghosts ]; then
                      	IPSECHOSTS="/var/db/ipsecpinghosts"
                      	CURRENTIPSECHOSTS="/var/db/currentipsecpinghosts"
                      	IFVPNSTATE=`ifconfig $IFVPN | grep "carp: BACKUP vhid" | wc -l`
                      	if [ $IFVPNSTATE -gt 1 ]; then
                      		echo -e "CARP interface in BACKUP (not pinging ipsec hosts)"
                      		rm -f $CURRENTIPSECHOSTS
                      		touch $CURRENTIPSECHOSTS
                      	else
                      		echo -e "CARP interface is MASTER or non CARP (pinging ipsec hosts)"
                      		cat < $IPSECHOSTS > $CURRENTIPSECHOSTS
                      	fi
                      fi
                      
                      # General file meant for user consumption
                      if [ -f /var/db/hosts ]; then
                      	HOSTS="/var/db/hosts"
                      fi
                      
                      # Package specific ping requests
                      if [ -f /var/db/pkgpinghosts ]; then
                      	PKGHOSTS="/var/db/pkgpinghosts"
                      fi
                      
                      cat $PKGHOSTS $HOSTS $IPSECHOSTS >/tmp/tmpHOSTS
                      
                      if [ ! -d /var/db/pingstatus ]; then
                      	/bin/mkdir -p /var/db/pingstatus
                      fi
                      
                      if [ ! -d /var/db/pingmsstatus ]; then
                      	/bin/mkdir -p /var/db/pingmsstatus
                      fi
                      
                      PINGHOSTS=`cat /tmp/tmpHOSTS`
                      
                      PINGHOSTCOUNT=`cat /tmp/tmpHOSTS | wc -l`
                      
                      if [ "$PINGHOSTCOUNT" -lt "1" ]; then
                      	exit
                      fi
                      
                      for TOPING in $PINGHOSTS ; do
                      	echo "PROCESSING $TOPING"
                      	SRCIP=`echo $TOPING | cut -d"|" -f1`
                      	DSTIP=`echo $TOPING | cut -d"|" -f2`
                      	COUNT=`echo $TOPING | cut -d"|" -f3`
                      	FAILURESCRIPT=`echo $TOPING | cut -d"|" -f4`
                      	SERVICERESTOREDSCRIPT=`echo $TOPING | cut -d"|" -f5`
                      	THRESHOLD=`echo $TOPING | cut -d"|" -f6`
                      	WANTHRESHOLD=`echo $TOPING | cut -d"|" -f7`
                      	echo Processing $DSTIP
                      	# Look for a service being down
                      	ping -c $COUNT -S $SRCIP $DSTIP
                      	if [ $? -eq 0 ]; then
                      		# Host is up
                      		# Read in previous status
                      		PREVIOUSSTATUS=`cat /var/db/pingstatus/$DSTIP`
                      		if [ "$PREVIOUSSTATUS" = "DOWN" ]; then
                      			# Service restored
                      			if [ "$SERVICERESTOREDSCRIPT" != "" ]; then
                      				echo "UP" > /var/db/pingstatus/$DSTIP
                      				echo "$DSTIP is UP, previous state was DOWN .. Running $SERVICERESTOREDSCRIPT"
                      				echo "$DSTIP is UP, previous state was DOWN .. Running $SERVICERESTOREDSCRIPT" | logger -p daemon.info -i -t PingMonitor
                      				sh -c $SERVICERESTOREDSCRIPT
                      			fi
                      		fi
                      		echo "UP" > /var/db/pingstatus/$DSTIP
                      	else
                      		# Host is down
                      		PREVIOUSSTATUS=`cat /var/db/pingstatus/$DSTIP`
                      		if [ "$PREVIOUSSTATUS" = "UP" ]; then
                      			# Service is down
                      			if [ "$FAILURESCRIPT" != "" ]; then
                      				echo "DOWN" > /var/db/pingstatus/$DSTIP
                      				echo "$DSTIP is DOWN, previous state was UP ..  Running $FAILURESCRIPT"
                      				echo "$DSTIP is DOWN, previous state was UP ..  Running $FAILURESCRIPT" | logger -p daemon.info -i -t PingMonitor
                      				sh -c $FAILURESCRIPT
                      			fi
                      		fi
                      		echo "DOWN" > /var/db/pingstatus/$DSTIP
                      	fi
                      	echo "Checking ping time $DSTIP"
                      	# Look at ping values themselves
                      	PINGTIME=`ping -c 1 -S $SRCIP $DSTIP | awk '{ print $7 }' | grep time | cut -d "=" -f2`
                      	echo "Ping returned $?"
                      	echo $PINGTIME > /var/db/pingmsstatus/$DSTIP
                      	if [ "$THRESHOLD" != "" ]; then
                      		if [ "$PINGTIME" -gt "$THRESHOLD" ]; then
                      			echo "$DSTIP has exceeded ping threshold $PINGTIME / $THRESHOLD .. Running $FAILURESCRIPT"
                      			echo "$DSTIP has exceeded ping threshold $PINGTIME / $THRESHOLD .. Running $FAILURESCRIPT" | logger -p daemon.info -i -t PingMonitor
                      			sh -c $FAILURESCRIPT
                      		fi
                      	fi
                      	# Wan ping time threshold
                      	WANTIME=`rrdtool fetch /var/db/rrd/wan-quality.rrd AVERAGE -r 120 -s -1min -e -1min | grep ":" | cut -f3 -d" " | cut -d"e" -f1`
                      	echo "Checking wan ping time $WANTIME"
                      	echo $WANTIME > /var/db/wanaverage
                      	if [ "$WANTHRESHOLD" != "" ]; then
                      		if [ "$WANTIME" -gt "$WANTHRESHOLD" ]; then
                      			echo "$DSTIP has exceeded wan ping threshold $WANTIME / $WANTHRESHOLD .. Running $FAILURESCRIPT"
                      			echo "$DSTIP has exceeded wan ping threshold $WANTIME / $WANTHRESHOLD .. Running $FAILURESCRIPT" | logger -p daemon.info -i -t PingMonitor
                      			sh -c $FAILURESCRIPT
                      		fi
                      	fi
                      	sleep 1
                      done
                      
                      exit 0
                      
                      
                      1 Reply Last reply Reply Quote 0
                      • First post
                        Last post
                      Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.