Windows XP Windows 7 Windows 2003 Windows Vista Windows 綜合教學 Linux 系統教學
Windows 10 Windows 8 Windows 2008 Windows NT Windows Server 電腦軟體教學

Ubuntu 磁盤空間暴漲排查:.xsession-errors.old 與 chattr 不可變屬性實戰

編輯:Linux 系統常見問題解答

長期使用 Ubuntu 可能遇到根分區空間暴漲,罪魁禍首往往是隱藏文件 .xsession-errors.old。本文記錄排查過程,並深入講解 chattr 命令賦予文件“不可變”屬性,從根源杜絕日志瘋狂增長。

現象與成因

  • 現象:~/.xsession-errors.old 體積達 22GB,佔滿磁盤。
  • 成因:該文件記錄 X 會話錯誤,若客戶端與服務端通信異常,會持續寫入錯誤日志。

徹底解決方案

rm ~/.xsession-errors.old
touch ~/.xsession-errors.old
sudo chattr +i ~/.xsession-errors.old

步驟:刪除原文件 → 重建同名空文件 → 加 +i 屬性使其不可修改/刪除/重命名/鏈接。此后 X 會話嘗試寫入將失敗,不再佔用空間。

chattr / lsattr 核心屬性詳解

屬性含義典型場景
i不可修改:禁止刪除、重命名、鏈接、寫入、追加保護關鍵配置、防止日志暴增、安全加固
a僅追加:只能向文件末尾寫入,不可刪除/覆蓋(需 root 設置)服務器日志文件防篡改
S同步 I/O:寫入即同步到磁盤(類似 sync 掛載選項)關鍵數據安全
c壓縮存儲:內核自動壓縮/解壓節省空間(需文件系統支持)
d無 dump:排除在 dump 備份之外臨時文件、緩存
u可恢復刪除:刪除後數據保留磁盤,可嘗試恢復重要文件防誤刪

操作語法:chattr [+-=][屬性] 文件;查看:lsattr 文件。

注意事項

  • chattr 無法保護 /、/dev、/tmp、/var 目錄本身。
  • +i 僅 root 可設置/移除,提供極強保護。
  • 若需恢復寫入:sudo chattr -i 文件。

善用 chattr +i 可一勞永逸解決特定日志文件瘋狂增長問題,同時提升關鍵文件安全性。

Copyright © Windows教程網 All Rights Reserved