linux创建文件后会自动删除,linux会自动删除目录和文件的吗
該樓層疑似違規已被系統折疊?隱藏此樓查看此樓
建議不要在 /tmp 或 /var/tmp 中存放需由用戶掌握的文件
unix 系統的習慣做法是將系統運行過程中的產生的臨時文件保存在 /tmp 和 /var/tmp 中。這兩者的區別在于 /tmp 中保存的臨時文件原則上將在系統重新啟動后刪除,這樣做的好處是即使系統異常終止也不會最終留下無用的臨時文件。但在實際應用中通常不會這么做,而是通過一個 cron 腳本或者守護進程定期檢查 /tmp 下臨時文件的最后更新時間,將最后更新時間超過一段時間(通常是1-30天左右)的臨時文件予以刪除。這樣做的好處是既不會令臨時文件泛濫成災,又不會在執行一些相當耗時的工作如編譯大型軟件時,因為系統意外重啟而丟失已經生成的工作成果。
對于一些需要提高文件存取效率,同時不擔心丟失文件的場合(如普通桌面應用,或者加了UPS的服務器),通常會將 tmpfs 文件系統掛載到 /tmp 上。這樣系統一旦重啟,/tmp 下的文件立即丟失。
與 /tmp 不同的是,/var/tmp 中保存的臨時文件原則上不會被系統自動清除。清除 /var/tmp 下臨時文件的責任由用戶承擔。
從用戶的角度上講,/tmp 下的臨時文件可以稱為“短期臨時文件”。/var/tmp 下的臨時文件可以稱為“長期臨時文件”。這兩者還有個共同點,那就是雖然用戶可以在里面創建臨時文件(用戶擁有目錄的使用權),但這兩者都為系統所有(系統擁有目錄的所有權)。原則上在必要時系統可以不經用戶同意而自行刪除里面的臨時文件。所以這兩者都不適合存放需要由用戶完全掌控的文件(如用戶資料等)。
因此,用戶在創建臨時文件時,應根據實際需要選擇合適的位置來保存臨時文件。如果希望由系統自動清除,則將臨時文件保存在 /tmp 中。如果用戶希望在需要的時候自行清除臨時文件,則將臨時文件保存在 /var/tmp 中。
至于需要長期保存的有價值的資料應盡量保存在用戶自己的目錄中。因為即使 /var/tmp 下的文件不會被自動清除,也保不住那天系統管理員(root),或者哪個“垃圾清除軟件”會為了騰出磁盤空間而將 /var/tmp 下的文件“一鍋端”。到那時就麻煩了。
總結
以上是生活随笔為你收集整理的linux创建文件后会自动删除,linux会自动删除目录和文件的吗的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java性能优化方案_Java性能优化要
- 下一篇: php追加数据,php追加数据到mysq