无法锁定文件 linux
Unable to lock file linux
我正在尝试锁定一个文件,显然我遗漏了一些东西,因为尽管它看起来已被锁定,但我仍然可以使用 vim 编辑器访问和编辑它。
锁定文件:
flock -x lock2.txt sleep 30
使用 lslocks 检查:
COMMAND PID TYPE SIZE MODE M START END PATH
flock 5417 FLOCK 10B WRITE 0 0 0 /home/lock2.txt
但仍然能够使用不同的终端访问它并进行编辑(我相信是不同的过程)。
我在这里尝试了文件描述符的解决方案
Linux flock, how to "just" lock a file?
但是结果还是一样
flock
命令使用flock(2)
锁定文件。正如 documentation 所说
flock()
places advisory locks only; given suitable permissions on a file, a process is free to ignore the use of flock()
and perform I/O on the file.
一般来说,应用程序不检查建议锁。它们旨在用于特定应用程序中以协调多个进程。
flock
命令最常被单个应用程序使用,只是为了防止自己同时 运行 多次。
我正在尝试锁定一个文件,显然我遗漏了一些东西,因为尽管它看起来已被锁定,但我仍然可以使用 vim 编辑器访问和编辑它。
锁定文件:
flock -x lock2.txt sleep 30
使用 lslocks 检查:
COMMAND PID TYPE SIZE MODE M START END PATH
flock 5417 FLOCK 10B WRITE 0 0 0 /home/lock2.txt
但仍然能够使用不同的终端访问它并进行编辑(我相信是不同的过程)。 我在这里尝试了文件描述符的解决方案 Linux flock, how to "just" lock a file? 但是结果还是一样
flock
命令使用flock(2)
锁定文件。正如 documentation 所说
flock()
places advisory locks only; given suitable permissions on a file, a process is free to ignore the use offlock()
and perform I/O on the file.
一般来说,应用程序不检查建议锁。它们旨在用于特定应用程序中以协调多个进程。
flock
命令最常被单个应用程序使用,只是为了防止自己同时 运行 多次。