2012-01-11 12 views
4

将flock或lockf工作在目录上吗? 我有另一种方法来锁定在Linux机器上的C目录?如何在Linux机器上用C锁定一个目录

+0

您需要通过锁定来定义您的意思。 – 2012-01-11 09:34:09

+1

只需将目录设置为只读;这似乎最接近“锁定”目录的概念。 – 2012-01-11 09:36:06

+1

你为什么要锁定一个目录? – 2012-01-11 09:41:18

回答

1

是的,有关使用上的文件/目录羊群更多信息,可以发现here

4

不能打开,无法写入一个目录,这样就意味着你不能得到它写锁定。

即使你可以,请记住,flockfcntl等各类POSIX的锁是咨询,所以他们实际上并不阻止不尊重,从做事锁软件。

也许你想看看像锁定整个文件系统的xfs_freeze之类的东西。尽管如此,它可能对你的用例没有用处。

+0

你不需要打开它编写得到一个排它锁: $的mkdir TESTDIR $ strace的涌向TESTDIR -c '回声富' ... 开放( “TESTDIR”,O_RDONLY | O_CREAT | O_NOCTTY, 0666)= -1 EISDIR(是一个目录) open(“testdir”,O_RDONLY | O_NOCTTY)= 3 flock(3,LOCK_EX)= 0 ... – 2016-10-19 04:07:01

+1

我正在纠正......对于'flock'风格锁。对于'fcntl'风格的锁定,你似乎需要写入权限来请求写入锁定。 – Celada 2016-10-19 21:43:45

相关问题