如何鎖定 Deluge 的配置檔案以防止其被修改?

如何鎖定 Deluge 的配置檔案以防止其被修改?

我正在 Ubuntu Server 15.04 上為 3 個使用者設定種子箱。每個使用者都運行自己的 deluged 和 deluge-web 副本,並擁有存放 deluge 配置檔案的主目錄。我優化了文件的速度,現在我想鎖定它們以防止它們發生任何更改(這樣用戶就無法使用 deluge-web ui 或 deluge 用戶端更改配置)。

我嘗試的是:

我透過 root chown 這些檔案(並刪除了世界權限),但隨後它們被 deluged 刪除並被新的設定檔交換。我還為它們提供了帶有chattr 的+i 屬性,這樣即使root 也無法在不刪除“i”標誌的情況下修改/刪除文件,但隨後deluged 只會創建一個新的conf文件:core.conf. new,可以透過deluge-web ui 進行修改。

如何鎖定檔案。有沒有其他方法可以阻止用戶修改 deluge 的配置?目前,我想將 core.conf 和 ltconfig.conf 鎖定在每個用戶目錄中,並強制 deluge 使用這些配置文件,但如果有其他方法,我很樂意聽到。

答案1

Deluge 僅在啟動時讀取conf 文件,因此儘管您可以阻止將設定保存到磁碟,但它們仍將應用在程式碼中,直到下次重新啟動。諸如此類的檔案core.conf.new並不意味著應用程式已更新core.conf,它只是一個臨時檔案。

唯一的選擇是修改 ConfigManager 程式碼或使用具有多使用者支援但沒有發佈時間表的 Deluge 開發版本。

答案2

儘管我確實對多個用戶使用 deluge,但我運行多個deluged實例。每個實例都使用自己的目錄和core.conf.為此,在啟動 時deluged,您需要包含使用特定core.conf.例如:

/usr/bin/deluged -d -c /storage/delgsvr10 -L warning -l /storage/delgsvr10/deluged.log

此命令deluged使用 -d -c -L -l 選項啟動。運行deluged -h以取得每個選項的定義。請注意,指定設定檔時您只需指定目錄,而不是檔案。這至少適用於 1.3.6 版本。

相關內容