CentOS回收站设置调整指南
CentOS系统默认未内置图形化回收站功能,但可通过以下方法手动实现或调整回收站设置,涵盖工具安装、容量限制、保留时间等方面:
trash-cli是命令行下的回收站管理工具,支持设置回收站大小、保留时间等功能。
sudo yum install trash-cli。/etc/trash.conf文件(全局配置)或~/.config/trash/config文件(用户级配置),调整以下参数:[Trash]
trash_dir = ~/.local/share/Trash/files # 回收站文件存储路径
trash_info_dir = ~/.local/share/Trash/info # 回收站信息存储路径
trash_max_file_size = 10485760 # 单个文件最大大小(10MB)
trash_max_files = 1000 # 回收站最多容纳文件数
trash_max_folders = 100 # 回收站最多容纳文件夹数
trash_keep_days = 7 # 文件保留天数(7天后自动删除)
trash /path/to/file_or_directorytrash-listtrash-empty(可指定天数,如trash-empty 30清空30天前的文件)trash-restore(交互式恢复)。gvfs-trash是GNOME桌面环境的集成工具,依赖图形界面。
sudo yum install gvfs-trash。gvfs-trash /path/to/file_or_directorygvfs-trash-listgvfs-trash-empty。通过Shell脚本实现回收站功能,适合需要高度自定义的场景。
mkdir -p ~/.local/share/Trash/{files,info}(分别存储文件和元信息)。~/.remove.sh):#!/bin/bash
TRASH_DIR="$HOME/.local/share/Trash/files"
TIMESTAMP=$(date +%s)
for item in "$@"; do
mv "$item" "$TRASH_DIR/$(basename "$item").$TIMESTAMP"
done
~/.bashrc,添加alias rm='~/.remove.sh',使rm命令指向自定义脚本。source ~/.bashrc。trash_max_file_size(单个文件大小)和trash_max_files(文件总数)参数限制,或使用trash-empty命令定期清理(如trash-empty 30清空30天前的文件)。#!/bin/bash
TRASH_DIR="$HOME/.local/share/Trash/files"
MAX_SIZE=$((10 * 1024 * 1024 * 1024)) # 10GB
CURRENT_SIZE=$(du -sb "$TRASH_DIR" | awk '{print $1}')
if [ "$CURRENT_SIZE" -gt "$MAX_SIZE" ]; then
# 按修改时间排序,删除最旧的文件
ls -t "$TRASH_DIR" | tail -n +$(($((CURRENT_SIZE / MAX_SIZE) + 1))) | xargs rm -rf
fi
将脚本添加到cron任务(如每天凌晨运行):crontab -e,添加0 0 * * * /path/to/script.sh。trash_keep_days参数设置文件保留天数(如trash_keep_days=7表示保留7天),或使用trash-empty命令指定天数(如trash-empty 14清空14天前的文件)。find "$TRASH_DIR" -mtime +7 -exec rm -rf {} \;),删除超过7天的文件。若使用GNOME或KDE桌面环境,可通过图形界面调整回收站功能:
gsettings set org.gnome.desktop.interface enable-trash false(需重启桌面环境生效)。/etc/trash.conf)需root权限,用户级配置(如~/.bashrc)只需用户权限。rm命令别名时,建议保留-i选项(如alias rm='trash -i'),防止误删。