Linux回收站文件夾大小限制的設置方法
Linux系統中,回收站(通常位于~/.local/share/Trash/files
)的大小限制并非系統原生支持的功能,需通過配置文件、桌面環境設置或第三方工具實現。以下是具體方法:
部分桌面環境提供了回收站大小限制的圖形化配置選項:
trash-cli
)管理。trash-cli
是常用的命令行回收站管理工具,可通過配置文件或腳本限制大?。?/p>
sudo apt-get install trash-cli
sudo yum install trash-cli
sudo dnf install trash-cli
~/.config/trash.conf
文件,添加以下內容:[Trash]
max_size = 10G # 設置回收站最大容量為10GB(支持K/M/G單位)
保存后,trash-cli
會自動清理超過限制的舊文件。磁盤配額可強制限制用戶回收站占用的磁盤空間,適用于多用戶系統:
sudo apt-get install quota
sudo yum install quota
/etc/fstab
文件,在目標分區(如/home
)掛載選項中添加usrquota
:/dev/sda1 /home ext4 defaults,usrquota 1 2
保存后重新掛載分區:sudo mount -o remount /home
。sudo quotacheck -cum /home
生成配額數據庫。sudo quotaon -vug /home
。sudo edquota -u username
命令編輯用戶配額,設置soft
(軟限制,如5GB)和hard
(硬限制,如10GB)值。通過編寫腳本定期檢查回收站大小,并在超過閾值時清理舊文件:
cleanup_trash.sh
):#!/bin/bash
TRASH_DIR="$HOME/.local/share/Trash/files"
MAX_SIZE=$((10 * 1024 * 1024)) # 10MB(單位:字節)
CURRENT_SIZE=$(du -sb "$TRASH_DIR" | awk '{print $1}')
if [ "$CURRENT_SIZE" -gt "$MAX_SIZE" ]; then
# 刪除最舊的文件(保留最新的10個)
find "$TRASH_DIR" -type f -printf '%T@ %p\n' | sort -n | cut -d' ' -f2- | head -n -10 | xargs rm -rf
echo "$(date): 回收站已清理(超過${MAX_SIZE}字節)" >> ~/trash_cleanup.log
fi
chmod +x cleanup_trash.sh
。crontab -e
,添加以下行(每天凌晨2點執行):0 2 * * * /path/to/cleanup_trash.sh