Solved

Delay Startup Cron

Posted on 2008-10-25
9
1,121 Views
Last Modified: 2013-12-16
We're having a problem with an Ubuntu 6.06.2 box that needs to issue a shorewall restart about 1 minute after boot.  We have the cron set to normal run on boot but this is too early as other software hasn't started yet that we have shorewall plugging into.  Need some help.
0
Comment
Question by:cybersharks1
  • 2
  • 2
  • 2
  • +3
9 Comments
 
LVL 40

Expert Comment

by:omarfarid
ID: 22805853
can you check in the crontab job to see if the other software has started or not?
0
 
LVL 12

Expert Comment

by:hfraser
ID: 22806104
If you're waiting for a process to start, you can check for the process name's existence using "ps".

If you're waiting for a process to reach some particular state (ie. accepting inbound connections), it's common to watch the process's log file for some status message like "Accepting connections".

What condition are you waiting for?
0
 
LVL 9

Expert Comment

by:chingmd
ID: 22806306
If the job needs to run at boot. but not at other times, why use cron?

Why not run a use an rc.local entry.    The first command of the script can be to sleep for X amount of time.   This will allow the rest of the programs to run and settle before continuing.

0
Master Your Team's Linux and Cloud Stack

Come see why top tech companies like Mailchimp and Media Temple use Linux Academy to build their employee training programs.

 
LVL 3

Expert Comment

by:Saranyakkali
ID: 22806552
1. check thefile permissions
2. Check the log files (cron)
3. Timezone settings.


thanks
0
 

Author Comment

by:cybersharks1
ID: 22807379
It is a wireless router and it needs to wait for the DSL connection to reach a steady state to start sending traffic otherwise it doesn't know how to route the wireless traffic in/out of the Internet.  The box boots quicker than the sync does so shorewall needs to be rebooted after the fact.  I'd be happy to use rc.local but I don't really know how to make a script or use it.  I've very basic when it comes to Linux knowledge, Google hasn't been much help on this.
0
 
LVL 12

Expert Comment

by:hfraser
ID: 22807690
OK. What problem are you seeing that you're trying to resolve? Shorewall manages firewall rules, which shouldn't care of the interface is up yet. Perhaps there's an easier way to solve this.
0
 
LVL 9

Assisted Solution

by:chingmd
chingmd earned 50 total points
ID: 22807894
If he's using a DSL card, the interface may not even exist yet.  And Shorewall may be throwing errors.

Untested Code Alert!

#!/bin/sh

/path/to/sleep 60
/path/to/and/full/command/line/to/start/shorewall

###  end of code  


0
 
LVL 7

Accepted Solution

by:
macker- earned 75 total points
ID: 22837178
Basically, look to see if you have a file named /etc/rc.d/rc.local

If you do, edit it as root in vi or pico, etc. - make sure it's a Unix text editor, and you're not FTP'ing the file to edit in Notepad

Whatever command you have in crontab, you should probably remove from there, and put in the rc.local; provide it here, so it can be reviewed.

At the end of rc.local, you'd add something like what chingmd wrote, but minus the #!/bin/sh part
0
 

Author Closing Comment

by:cybersharks1
ID: 31510036
After setting up the rc.local script it worked like a champ, thanks!
0

Featured Post

Master Your Team's Linux and Cloud Stack

Come see why top tech companies like Mailchimp and Media Temple use Linux Academy to build their employee training programs.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

If you have a server on collocation with the super-fast CPU, that doesn't mean that you get it running at full power. Here is a preamble. When doing inventory of Linux servers, that I'm administering, I've found that some of them are running on l…
SSH (Secure Shell) - Tips and Tricks As you all know SSH(Secure Shell) is a network protocol, which we use to access/transfer files securely between two networked devices. SSH was actually designed as a replacement for insecure protocols that sen…
Learn several ways to interact with files and get file information from the bash shell. ls lists the contents of a directory: Using the -a flag displays hidden files: Using the -l flag formats the output in a long list: The file command gives us mor…
This video shows how to set up a shell script to accept a positional parameter when called, pass that to a SQL script, accept the output from the statement back and then manipulate it in the Shell.

825 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question