2010-08-30 101 views
10

我正試圖實現一個文件。每個事件只是將一行添加到文件中。到目前爲止,這是毫無疑問的。困難的部分是幾個用戶應該能夠向該文件添加條目,但是沒有人應該能夠修改或刪除現有的條目。我能以某種方式使用文件訪問權限執行此操作嗎?我正在使用Linux。僅追加文件

Thx

+0

我認爲這是一個有點出乎'chmod':○ – Aren 2010-08-30 23:55:37

+0

相關鏈接:http://unix.stackexchange.com/questions/ 59864 /限制文件訪問附加只 – nha 2014-12-16 21:34:57

回答

1

傳統的權限,讀取,寫入和執行不會讓你在那裏。如果您有寫入權限,則可以刪除該文件及其中的所有行。

您需要某種程序來仲裁文件訪問。一種方法是打開一個fifo並讓生產者寫入fifo。如果寫入不太大(4k寫入在我的Linux機器上是原子的),不同的寫入不會混雜在一起。通過讓消費者過程擁有生產者沒有的特權,生產者將無法看到最終結果。

你可以使用像syslog這樣的事情來做到這一點。

15

在linux上,您可以選擇使用系統附加標誌。這在所有文件系統上都不可用。

該屬性是使用chattr實用程序設置的,您應該查看手冊頁。只有root可以設置這個屬性。

在Ubuntu上你可能最終做: 須藤chattr命令+文件名

+0

試圖通過首先刪除文件並重新創建它,哪些不同(即截斷)內容,這是不可能的(即使我擁有該文件所在的目錄),可以確認這種行爲? – humanityANDpeace 2016-08-14 09:00:07