结论与原理 在 Ubuntu/GNOME 等常见桌面环境中,回收站没有统一的系统级“容量上限”开关。每个用户的回收站位于其家目录的 ~/.local/share/Trash/files 与 ~/.local/share/Trash/info,其可用空间受所在磁盘分区剩余空间限制。部分桌面环境(如 GNOME、KDE)在设置或文件管理器首选项中提供回收站/存储相关项(例如最大容量或自动清理),不同版本与发行版的可选项名称与位置可能不同;若未找到图形选项,可通过命令行工具或配额机制间接控制占用。
可行方案
图形界面设置(若可用)
命令行与脚本控制(推荐)
#!/usr/bin/env bash
TRASH="$HOME/.local/share/Trash"
find "$TRASH/files" -type f -atime +7 -delete
find "$TRASH/info" -type f -atime +7 -delete
#!/usr/bin/env bash
TRASH="$HOME/.local/share/Trash"
MAX=104857600 # 100MB
size=$(du -sb "$TRASH/files" 2>/dev/null | awk '{print $1}')
if [ "$size" -gt "$MAX" ]; then
find "$TRASH/files" -type f -printf '%T@ %p\n' | sort -n | cut -d' ' -f2- | head -n 1 | xargs rm -f
fi
chmod +x ~/clean_trash.sh
crontab -e
0 2 * * * /home/你的用户名/clean_trash.sh
用磁盘配额限制用户最大占用(系统级“硬上限”)
sudo apt-get install quota
# 编辑 /etc/fstab,为目标分区添加 usrquota,grpquota(示例为对根分区)
# /dev/sda1 / ext4 defaults,usrquota,grpquota 1 1
sudo mount -o remount /
sudo quotacheck -cum /
sudo quotaon -vug /
sudo edquota -u username # 设置 blocks/inodes 的软/硬限制
快速排查与常用命令