FreeBSD Cron Job to run (ifconfig em0 down; ifconfig em0 up)

Eric Crist mnslinky at gmail.com
Wed Aug 29 18:32:13 PDT 2007


David, you can also run it on a single line by piping it into sh:

/bin/sh | command here

However, feel free to put it in a file.  Somethings as simple as this  
I like to make one-liners so they're easy to read in the crontab entry.

Glad I could help!

Eric


On Aug 29, 2007, at 3:16 PMAug 29, 2007, Hinkie wrote:

> Eric
>
> You are of course correct, it runs under "sh"
>
> I think that means I have to run it in a separate script file
>
> I write it as (First_Hop subs with a.b.c.1)
>
> #!/bin/sh
> if ! ping -c1 First_Hop >/dev/null 2>/dev/null
>    then
>         echo First_Hop_OK
>    else
>         ifconfig em0 down && ifconfig em0 up
>         echo Restored
> fi
>
> Save as /etc/pinger.sh
>
> Try run:
>
> pfsense-p266ii:~#  /etc/pinger.sh
> /etc/pinger.sh: Permission denied.
>
> Try fix:
>
> pfsense-p266ii:~#  chmod 777 /etc/pinger.sh
> chmod: /etc/pinger.sh: Read-only file system
>
> Hmmmm  I assume if it won't run here then crontab won't run it either?
>
> Kind regards
> David Hingston
>
> ----- Original Message -----
> From: "Eric Crist" <mnslinky at gmail.com>
> To: "Hinkie" <Hinkie at paradise.net.nz>
> Cc: <freebsd-questions at FreeBSD.ORG>
> Sent: Thursday, August 30, 2007 7:30 AM
> Subject: Re: FreeBSD Cron Job to run (ifconfig em0 down; ifconfig  
> em0 up)
>
>
> David,
>
> The script I provided assumes the sh shell.  Most shell scripts have
> been historically written for the bourne shell.  Before running the
> script I sent you, try typing sh<enter> at the command line.  Then,
> run the line I sent your way.
>
> Let me know how it works for you!
>
> Eric
>
>
> On Aug 29, 2007, at 2:16 PMAug 29, 2007, Hinkie wrote:
>
>> Hi Eric
>>
>> Thank you for that, I think I see one thing I was doing wrong
>> (putting the ping into the if!)
>>
>> Running your code in the command window I get (Following the
>> successful ping)
>>
>> TESTV=0: Command not found.
>> TESTV: Undefined variable.
>>
>> As you can tell I am learning this syntax!
>>
>> Can you help me further?
>>
>> With thanks
>>
>> David Hingston
>>
>> ----- Original Message -----
>> From: "Eric Crist" <mnslinky at gmail.com>
>> To: "Hinkie" <Hinkie at paradise.net.nz>
>> Cc: <freebsd-questions at FreeBSD.ORG>
>> Sent: Thursday, August 30, 2007 2:17 AM
>> Subject: Re: FreeBSD Cron Job to run (ifconfig em0 down; ifconfig
>> em0 up)
>>
>>
>> On Aug 29, 2007, at 8:03 AMAug 29, 2007, Hinkie wrote:
>>
>>> Hi
>>>
>>> I want to run a cron job in /etc/crontab that runs (ifconfig em0
>>> down; ifconfig em0 up) if my cables static ip gateway can't be
>>> pinged but I can't figure it out.  I can't get the syntax that runs
>>> in the command window, to then put intot the crontab....
>>>
>>> Can anyone help me?
>>
>> Here's what I'd use:
>>
>> ping -c 1 a.b.c.d; TESTV=$?; if [ $TESTV != 0 ]; then `ifconfig em0
>> down`; fi
>>
>> HTH
>> -----
>> Eric F Crist
>> Secure Computing Networks
>>
>> _______________________________________________
>> freebsd-questions at freebsd.org mailing list
>> http://lists.freebsd.org/mailman/listinfo/freebsd-questions
>> To unsubscribe, send any mail to "freebsd-questions-
>> unsubscribe at freebsd.org"
>
> -----
> Eric F Crist
> Secure Computing Networks
>

-----
Eric F Crist
Secure Computing Networks




More information about the freebsd-questions mailing list