CentOS系统默认未内置图形化回收站功能,但可通过命令行工具(如trash-cli)或自定义脚本实现回收站的容量限制。以下是具体操作步骤:
trash-cli是命令行回收站管理工具,支持通过配置文件限制回收站大小。
sudo yum install trash-cli /etc/trash.conf(影响所有用户)或用户级配置文件~/.trashrc(仅影响当前用户),添加/修改以下参数:[Trash] trash_files_directory = ~/.local/share/Trash/files # 回收站文件存储路径(默认值) trash_max_size = 10G # 设置回收站最大容量(如10GB,支持K/M/G单位) trash_keep_days = 7 # 可选:设置文件保留天数(超过则自动删除) 保存文件后,trash-cli会自动应用配置,后续使用trash命令删除的文件会受此限制。trash /path/to/filetrash-listtrash-empty(或trash-empty 3删除3天前的文件)。若不想安装额外工具,可通过truncate命令限制回收站目录大小,并通过脚本定期清理。
mkdir -p ~/.local/share/Trash/files 10G可替换为所需容量):truncate -s 10G ~/.local/share/Trash/files cleanup_trash.sh文件,内容如下:#!/bin/bash TRASH_DIR="$HOME/.local/share/Trash/files" MAX_SIZE=10G # 与truncate设置的大小一致 # 获取当前回收站大小(单位:KB) CURRENT_SIZE=$(du -sk "$TRASH_DIR" | awk '{print $1}') MAX_SIZE_KB=$(numfmt --from=iec "$MAX_SIZE") # 将G转换为KB # 若超过限制,删除最旧文件 if [ "$CURRENT_SIZE" -gt "$MAX_SIZE_KB" ]; then OLDEST_FILES=$(ls -t "$TRASH_DIR" | tail -n +$(($CURRENT_SIZE / $(numfmt --from=iec "$MAX_SIZE") + 1))) for FILE in $OLDEST_FILES; do rm -rf "$TRASH_DIR/$FILE" done fi 赋予脚本执行权限:chmod +x cleanup_trash.sh,并通过cron定期运行(如每天凌晨0点):crontab -e 添加以下行:0 0 * * * /path/to/cleanup_trash.sh ```。 若使用GNOME桌面环境,可通过gvfs-trash命令管理回收站,但需修改配置文件调整大小。
sudo yum install gvfs-trash /etc/gvfs/gvfs.conf文件,添加以下参数(需根据实际需求调整):[trash] max-size=10G # 设置回收站最大容量 重启桌面环境(如GNOME)以使更改生效:systemctl restart gdm 使用gvfs-trash命令删除文件:gvfs-trash /path/to/file,查看回收站内容:gvfs-trash-list。~/.trashrc或~/.config/trash/config)仅影响当前用户,全局配置(/etc/trash.conf)影响所有用户。/etc/trash.conf)需root权限,用户级配置需用户自身权限。通过以上方法,可灵活控制CentOS系统中回收站的存储容量,避免因回收站过大占用过多磁盘空间。