locking mechanism


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting locking mechanism
# 1  
Old 09-23-2008
locking mechanism

I have a shell script.
How can use some kind of locking mechanism to ensure that the script is not being executed by two people
at the same time?
# 2  
Old 09-23-2008
You can use setfacl command to set acl on the file that what user can run it.That what i think maby be some other have better idea
# 3  
Old 09-23-2008
Code:
#!/bin/ksh

lockit()
{
     [[ -w /tmp/lockfile ]] ||  > /tmp/lockfile
     let count=0
     echo 'checking lock...'
     while [[ -s /tmp/lockfile ]]
     do
           sleep 30           
           count=#(( count  + 1 ))
           if [[ count -eq 10 ]] ; then
                  echo 'cannot obtain lock'
                  exit 1
           fi
     done
      echo "$$" > /tmp/lockfile
     echo 'got lock'
}

unlock()
{
      > /tmp/lockfile

}
# main --------------------------
lockit

trap '> /tmp/lockfile; kill -9 $$ ' EXIT  HUP  INT

.  /path/to/myscript.sh
STATUS=$?

unlock
trap ' ' EXIT
exit $STATUS

Put your scriptname inside this type of script. If your script has trap commands they may override the ones here. This is just meant as a simple starting point.
# 4  
Old 09-23-2008
That is really helpful

Thanks a lot
Login or Register to Ask a Question

Previous Thread | Next Thread

8 More Discussions You Might Find Interesting

1. Programming

Best IPC mechanism to be used

Suppose I have 5 independent process divided in two imaginay sets: set1 set2 --------------------- p1 p3 | | p2 p4 | p5 The processes inside each set communicate mutually quite often. I mean p1 and p2 communicate mutually quite often Similarly p3, p4 and p5 communicate mutually... (2 Replies)
Discussion started by: rupeshkp728
2 Replies

2. Shell Programming and Scripting

An alternative to IPC mechanism

What if the operating systems would not use any ipc mechanism in order to exchange the datas with each other,which technique could be an alternative for messaging between the processes?Do you guys think using the vfork () system call to duplicate processes is a logical solution for this problem? (4 Replies)
Discussion started by: helltrex
4 Replies

3. Shell Programming and Scripting

"Need progress mechanism for copy process"

Hello Folks, I got an issue to be solved. I need to show the user a progress bar while executing an process using shell script Example: While updating firmware lets assume this will take 2 min to upgrade i need the shell script to show the progress bar as (0%) and at the end it should... (13 Replies)
Discussion started by: phanivarma
13 Replies

4. Programming

Open source my OIOIC, a completely new object-oriented mechanism for the C.

OIOIC is a completely new object-oriented mechanism for the C programming language. Please download the "OIOIC-Primer-2nd-Edition-English.tar.gz". (the English version of << OIOIC Primer >> ) http://code.google.com/p/oioic/downloads/list Welcome your advice! Using OIOIC, you can describe... (7 Replies)
Discussion started by: pervise.zhao
7 Replies

5. Solaris

Best possible communication mechanism between a Solaris machine and a windows machine

hi, I have some windows client machines which require a signal to be sent by a Solaris machine( SunOS 5.6) when ever a particular event occurs on that Solaris machine. What are possible communication mechanisms by which i can do this. the constraints are > the windows machines have to... (7 Replies)
Discussion started by: Krsh
7 Replies

6. AIX

mechanism of AIX ?

Hi all, on aix,whether have udev or devfs mechanism? thanks! (4 Replies)
Discussion started by: anonys
4 Replies

7. UNIX for Dummies Questions & Answers

A mechanism like "batch file of windows" in Unix

Hi all, Like in windows OS we have in unix something called "jobs"-term me if i am wrong- to run a sequence of steps which we can exceute at our own will without scheduling like corntab scheduling. can any one tell me what is the structure of this file and provide me with some info with this... (5 Replies)
Discussion started by: aixjadoo
5 Replies

8. Programming

Mechanism reqd for knowing TCP buffer occupancy level

Hi, The description and the context of the mechanism that i require is as follows: There is an application communicating with a protocol stack binary. There is a TCP socket communication between the two. Now, the stack is pumping up data to the Application such that the receiving buffer of... (2 Replies)
Discussion started by: saptarshi
2 Replies
Login or Register to Ask a Question