保存在 /tmp 中並不是真正的保存?
例如從 Firefox 打開一個郵件附件(之前沒有保存它);這是一個 Libre Office 文件,您對其進行編輯,然後按下保存(不另存為)並關閉文本編輯器和瀏覽器。然後文件消失,因為它預設儲存在
/tmp
. 至少在我的 Ubuntu 12.04 上是這樣。你認為這是正確的行為嗎?該程序不應該至少提醒您您並沒有真正保存任何東西嗎?或者有什麼方法可以恢復文件(也在註銷和/或重新啟動後)?
玩弄這個我發現,當您選擇在 Firefox 中使用外部程序打開文件時,會發生什麼情況是 Firefox 將程序下載到
/tmp
,然後使用下載的文件作為參數執行所選程序(讀取 ‘opens the file with選擇的程序’)。如果您隨後
Save As
從程序中保存文件(不選擇或等效),它將使用/tmp
.Firefox 會在關閉時清理這些臨時文件。因此,如果您關閉 LibreOffice,而不是 Firefox,則可以恢復文件。但是,一旦 Firefox 關閉,該文件就會被刪除。
在大多數(全部?)發行版上,該
/tmp
文件夾也將在重新啟動時清空(其中的文件/var/tmp
應該保留更長時間)。另請注意,此行為僅適用於使用外部程序“打開”文件。如果該文件是通過外掛或其他方式在內部打開的,則它似乎
/tmp
未被使用(該文件似乎與網頁本身一起記憶體在其他地方)。更新
作為參考(除非必要,否則我不建議這樣做),您可以使用該選項
/tmp
在 firefox 關閉時禁用刪除文件。browser.helperApps.deleteTempFileOnExit
這可以通過about:config
頁面設置(只需在地址欄中輸入並按輸入鍵)。如果它存在並且是false
,只需右鍵點擊它並選擇切換。否則,通過執行Right Click->New->Boolean添加它,然後輸入選項的名稱並選擇 false。要
/tmp
在最近基於 Debian 的系統上儲存下次重新啟動後的文件,首先查看/etc/default/tmpfs
並確保 is noRAMTMP=yes
行。如果它被註釋掉(#
在開始時),這很好(如果它被設置,那麼/tmp
它將tmpfs
位於記憶體中的文件系統上並且不會儲存在磁碟上)。接下來添加或更改TMPTIME
./etc/default/rcS
要無限期儲存/tmp
文件,您可以執行以下操作:TMPTIME=infinite
或者您可以使用正數而不是
infinite
將它們保留該天數,一旦它們的時間到了,它們將在下次重新啟動時被刪除。顯然,如果此行被註釋掉,請取消註釋。