CentOS系统默认无图形化回收站功能,需通过命令行工具(如trash-cli)或自定义脚本+定时任务实现自动清理。以下是具体步骤:
trash-cli是命令行回收站管理工具,支持设置保留时间和自动清空。
通过yum包管理器安装:
sudo yum install trash-cli
全局配置(影响所有用户):编辑/etc/trash-cli.conf文件,添加或修改以下内容:
[Trash]
auto_empty = 60 # 每60分钟自动清空一次(单位:分钟)
trash_keep_days = 7 # 文件保留7天(可选,与auto_empty二选一)
注:
auto_empty参数需trash-cli版本支持(部分旧版本可能不兼容),若无效则改用定时任务。
用户级配置(仅影响当前用户):编辑~/.trashrc文件(不存在则创建),添加:
DELETE_DELAY = 3 # 文件保留3天(单位:天)
TRASH_DIR = ~/.local/share/Trash # 回收站存储路径(默认路径)
若auto_empty未生效,可通过crontab设置定时任务:
crontab -e
添加以下内容(每天凌晨2点清空所有用户的回收站):
0 2 * * * /usr/bin/trash-empty
保存后,系统会按计划自动清理回收站。
若trash-cli不可用,可通过自定义脚本实现自动清理。
mkdir -p ~/.local/share/Trash/{files,info} # 默认回收站路径
创建/usr/local/bin/clear_trash.sh,内容如下:
#!/bin/bash
# 删除回收站中超过7天的文件
find ~/.local/share/Trash/files -type f -mtime +7 -delete
find ~/.local/share/Trash/info -type f -mtime +7 -delete
赋予脚本执行权限:
chmod +x /usr/local/bin/clear_trash.sh
编辑当前用户的crontab:
crontab -e
添加以下内容(每天凌晨1点执行清理):
0 1 * * * /usr/local/bin/clear_trash.sh
保存后,脚本会定期清理回收站中的过期文件。
/root/.local/share/Trash,并使用sudo crontab -e编辑root的crontab。gvfs-trash(sudo yum install gvfs-trash),其回收站路径为~/.local/share/Trash,配置方法类似。trash-list(trash-cli)或ls ~/.local/share/Trash/files(自定义脚本)查看回收站内容,确认自动清理是否生效。通过以上方法,可实现CentOS回收站的自动清理,避免回收站占用过多磁盘空间。