【发布时间】:2010-11-05 15:57:11
【问题描述】:
我想阻止我的某个根进程删除某个文件。所以我遇到了flock 命令,它似乎符合我的需要,但我没有得到它的语法。
如果我只表示共享锁,它不起作用:
flock -s "./file.xml"
如果我加了超时参数,还是不行:
flock -s -w5 "./file.xml"
似乎是这样,它符合flock [-sxun][-w #] fd# 的方式。
(这个fd#参数是什么?)
所以,我尝试了:
flock [-sxon][-w #] file [-c] command
使用flock -s -w5 "./file.xml" -c "tail -3 ./file.xml" 并且它起作用了,./file.xml 的尾部命令被执行。
但我想知道,锁定是在命令后结束还是在命令执行结束后持续 5 秒?我的主要问题是,如何防止另一个 root 进程删除 linux 中的文件?
【问题讨论】:
标签: linux bash file-locking flock