9 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
Hi,
Please let me know how these steps are creating a lock file using echo " ".
LOCK_FILE=${LOG_DIR}/${DBNAME}_MD.lock
# create lock file
if
then
echo "Another process is running already. Will terminate this one." >> ${LOG_FILE} 2>&1
echo "If the lock file is not needed, please... (5 Replies)
Discussion started by: sandy162
5 Replies
2. Shell Programming and Scripting
Hi,
I am trying to create a lock file with the following code but for some reason after file is created it has
wrong name "PASP?.lock??"
Please let us know how to get rid of these '??' from file name and from where they are coming?
#!/bin/ksh... (6 Replies)
Discussion started by: sandy162
6 Replies
3. UNIX for Advanced & Expert Users
Hi all,
I have to test some user priviliges. The goal is to be sure that an unauthorized user can't restart some modules (ssh, mysql etc...).
I'm trying to automate it with a shell script but in same cases I got the syslog broadcast message.
Is there any way to simply get a return code... (3 Replies)
Discussion started by: Dedalus
3 Replies
4. Red Hat
Hello all,
If anyone has time, I have a few questions:
How do I do the following in Linux. We are using Red Hat and Oracle Enterprise Linux, which is based on Red Hat too.
1. How to lock the account after a few (like 3) invalid password attempts?
2. How do you lock a screen after 30... (1 Reply)
Discussion started by: nstarz
1 Replies
5. Red Hat
Hi,
I want to lock the file in linux and the file cannot be edit or modify by other .I know in perl, there is function flock , but it is not worked.
The file can be modifed and edit even if it is locked by flock .
Any other way to lock the file and so other cannot edit or modifed it ????
Any... (7 Replies)
Discussion started by: chuikingman
7 Replies
6. UNIX for Dummies Questions & Answers
Hi,
We have a lock file being created called lck8c0001 created in Unixware 2.1.2. This is locking a printer.
According to some websites, 8c0001 relates to the device name.
How does one link 8c0001 to those devices listed in the /dev folder?
I have done a ps -lp for all printers and have... (4 Replies)
Discussion started by: canman
4 Replies
7. UNIX for Dummies Questions & Answers
how can I lock my keyboard while I'm away from the computer without using lock command. What other commands gives me the option to lock keyboard device?
thanks (7 Replies)
Discussion started by: dianayun
7 Replies
8. UNIX for Dummies Questions & Answers
I found a lock file like this
lrwxrwxr-x 1 sskb apollo 16 Oct 22 22:00 lock -> hostname:2747
(pl. note that hostname is a number like 123.4.5.6)
but this was not shown in the file manager eventhough I had selected to show the hidden files.
I could not even read the... (4 Replies)
Discussion started by: sskb
4 Replies
9. UNIX for Dummies Questions & Answers
We wish to keep a sequence number in a file. When someone wants to get the next sequence number we need to lock the file, get the next number and increment it by one. How do you do that?
I know how to get the number and increment it but how do I lock the file and test that it is locked or not... (1 Reply)
Discussion started by: tammy_schmuki
1 Replies
FLOCK(2) BSD System Calls Manual FLOCK(2)
NAME
flock -- apply or remove an advisory lock on an open file
LIBRARY
Standard C Library (libc, -lc)
SYNOPSIS
#include <sys/file.h>
#define LOCK_SH 0x01 /* shared file lock */
#define LOCK_EX 0x02 /* exclusive file lock */
#define LOCK_NB 0x04 /* do not block when locking */
#define LOCK_UN 0x08 /* unlock file */
int
flock(int fd, int operation);
DESCRIPTION
The flock() system call applies or removes an advisory lock on the file associated with the file descriptor fd. A lock is applied by speci-
fying an operation argument that is one of LOCK_SH or LOCK_EX with the optional addition of LOCK_NB. To unlock an existing lock operation
should be LOCK_UN.
Advisory locks allow cooperating processes to perform consistent operations on files, but do not guarantee consistency (i.e., processes may
still access files without using advisory locks possibly resulting in inconsistencies).
The locking mechanism allows two types of locks: shared locks and exclusive locks. At any time multiple shared locks may be applied to a
file, but at no time are multiple exclusive, or both shared and exclusive, locks allowed simultaneously on a file.
A shared lock may be upgraded to an exclusive lock, and vice versa, simply by specifying the appropriate lock type; this results in the pre-
vious lock being released and the new lock applied (possibly after other processes have gained and released the lock).
Requesting a lock on an object that is already locked normally causes the caller to be blocked until the lock may be acquired. If LOCK_NB is
included in operation, then this will not happen; instead the call will fail and the error EWOULDBLOCK will be returned.
NOTES
Locks are on files, not file descriptors. That is, file descriptors duplicated through dup(2) or fork(2) do not result in multiple instances
of a lock, but rather multiple references to a single lock. If a process holding a lock on a file forks and the child explicitly unlocks the
file, the parent will lose its lock.
The flock(), fcntl(2), and lockf(3) locks are compatible. Processes using different locking interfaces can cooperate over the same file
safely. However, only one of such interfaces should be used within the same process. If a file is locked by a process through flock(), any
record within the file will be seen as locked from the viewpoint of another process using fcntl(2) or lockf(3), and vice versa.
Processes blocked awaiting a lock may be awakened by signals.
RETURN VALUES
The flock() function returns the value 0 if successful; otherwise the value -1 is returned and the global variable errno is set to indicate
the error.
ERRORS
The flock() system call fails if:
[EWOULDBLOCK] The file is locked and the LOCK_NB option was specified.
[EBADF] The argument fd is an invalid descriptor.
[EINVAL] The argument fd refers to an object other than a file.
[EOPNOTSUPP] The argument fd refers to an object that does not support file locking.
[ENOLCK] A lock was requested, but no locks are available.
SEE ALSO
close(2), dup(2), execve(2), fcntl(2), fork(2), open(2), flopen(3), lockf(3)
HISTORY
The flock() system call appeared in 4.2BSD.
BSD
November 9, 2011 BSD