http://www.perlmonks.org?node_id=240460


in reply to Re: Re: Re: Re: Determine if script is already running
in thread Determine if script is already running

Nitrox,
Not that I know of. There are things you can do to reduce the probability that the file will be accidentally deleted - security through obscurity. These things include:

  • Changing the directory where the file resides permissions to 000.
  • Use non-typical characters in the file name such as a space, asterick, or worse.
  • Use alarm for the original script to check if the file has been deleted and re-create. * This requires a lot of overhead to try and compete with the race condition.
  • Use hard links (not symbolic) so that more than one file combined equal your lock file

    Even with these suggestions, there is not the 100% guarantee. Sometimes you need decide that the probability is an acceptable risk and move on. If you are totally against checking the process table - semaphores may be the way to go.

    Cheers - L~R