Logs

將 /var/logs 掛載為 tmpfs,有時在 overlayfs 的幫助下保存更改

  • August 27, 2021

/var/log我想使用overlayfs ,而不僅僅是安裝tmpfs 。

  1. /var/log 是可寫的 tmpfs,但在 tmpfs 掛載之前包含文件。這些舊文件不在 tmpfs 的記憶體中,而是在較低層。
  2. 只有更改儲存在 tmpfs 中,而舊的和未修改的文件儲存在 SSD 中
  3. 有時應該可以將更改寫入 SSD,例如通過 cron。這應該釋放 tmpfs 記憶體

因此,結果應該是:寫入 RAM 的日誌,可通過相同路徑訪問的新舊引導日誌。有時通過腳本將更改寫入磁碟。

重點是加快一點速度,並從許多寫入中保護 SSD。

我在puppy linux中看到了類似的東西,不是日誌,而是對root的所有更改,但如果不安裝它就不能這樣做,文件沒有幫助)

我會根據答案對瀏覽器 cookie/記憶體做同樣的事情。但是持久寫入將在瀏覽器關閉時完成。無法關閉瀏覽器記憶體,至少需要小的記憶體才能在我的 Web 開發中出現與使用者由於記憶體而可能出現的相同的錯誤。

設法使 /var/log 覆蓋,它顯示 SSD 日誌文件和更改。所有更改都保存在 RAM 中。稍後我會進行同步,通過將上層複製到下層,每小時更改一次。

#prepare layers
sudo mkdir -p /var/log.tmpfs
sudo mount -t tmpfs -o rw,nosuid,nodev,noexec,relatime,size=512m,mode=0775 tmpfs /var/log.tmpfs
sudo mkdir -p /var/log.tmpfs/upper
sudo mkdir -p /var/log.tmpfs/work
sudo chown -R root:syslog /var/log.tmpfs
sudo chmod -R u=rwX,g=rwX,o=rX /var/log.tmpfs

#prepare overlay
sudo mkdir -p /var/log.overlay
sudo chown root:syslog /var/log.overlay
sudo chmod u=rwX,g=rwX,o=rX /var/log.overlay

#start overlay
sudo mount -t overlay -o rw,lowerdir=/var/log,upperdir=/var/log.tmpfs/upper,workdir=/var/log.tmpfs/work overlay /var/log.overlay
sudo mount --bind /var/log.overlay /var/log

要使更改持久化,需要解除安裝綁定 /var/log,複製文件,然後再次綁定。

引用自:https://unix.stackexchange.com/questions/424341