CentOS回收站怎么设置容量
导读:CentOS 回收站容量设置指南 前置说明 CentOS 服务器版默认没有图形化回收站;命令行下的 rm 会直接删除文件。常见做法是使用 trash-cli 提供“回收站”语义,或用 磁盘配额 从底层限制用户可用空间,亦可通过 自定义脚本...
CentOS 回收站容量设置指南
前置说明
- CentOS 服务器版默认没有图形化回收站;命令行下的 rm 会直接删除文件。常见做法是使用 trash-cli 提供“回收站”语义,或用 磁盘配额 从底层限制用户可用空间,亦可通过 自定义脚本 + cron 定期清理回收站目录。桌面环境(如 GNOME)可用 gvfs-trash,但其容量通常由桌面配置管理,服务器场景较少使用。
方案一 使用 trash-cli 并配合配额或定时清理(推荐)
- 安装与基本用法
- 安装:sudo yum install -y trash-cli
- 常用命令:trash 文件路径(移入回收站)、trash-list(查看)、trash-empty(清空)
- 容量控制思路
- trash-cli 本身不提供“最大容量”配置项,通常通过“用户配额”或“定时清理脚本”来限制回收站目录大小。
- 方式 A:用磁盘配额限制回收站可用空间
- 适用场景:需要对某个用户(含其回收站)设定硬性上限。
- 简要步骤(以 /home 分区为例):
- 编辑 /etc/fstab,为分区添加配额选项:/dev/sdaX /home ext4 defaults,usrquota,grpquota 1 2
- 重新挂载:mount -o remount /home
- 初始化配额数据库:quotacheck -cum /home
- 启用配额:quotaon -vug /home
- 为用户设置配额:edquota -u username(设置 blocks 的软/硬限制)
- 方式 B:用脚本 + cron 按容量自动清理最旧文件
- 思路:当回收站目录超过阈值时,按修改时间删除最旧文件,直到低于阈值。
- 示例脚本(保存为 /usr/local/bin/cleanup-trash.sh):
#!/usr/bin/env bash TRASH="$HOME/.local/share/Trash/files" MAX_BYTES=$((100 * 1024 * 1024)) # 100MB,可按需调整 [[ ! -d "$TRASH" ]] & & exit 0 cur=$(du -sb "$TRASH" 2> /dev/null | awk '{ print $1} ') (( cur < = MAX_BYTES )) & & exit 0 # 按 mtime 升序删除最旧文件,直到低于阈值 find "$TRASH" -mindepth 1 -printf '%T@ %p\n' | sort -n | cut -d' ' -f2- | while IFS= read -r f; do rm -rf "$f" cur=$(du -sb "$TRASH" 2> /dev/null | awk '{ print $1} ') (( cur < = MAX_BYTES )) & & break done - 赋权并加入定时任务(例如每天清理一次):
- chmod +x /usr/local/bin/cleanup-trash.sh
- crontab -e 添加:0 0 * * * /usr/local/bin/cleanup-trash.sh
- 说明
- 若系统为 CentOS 8/Stream,可用 dnf 安装:sudo dnf install -y trash-cli。
方案二 自定义回收站目录 + 别名 + 定时清理(轻量可控)
- 适合无桌面、希望简单可控的场景。
- 配置步骤
- 创建回收站目录:mkdir -p ~/.trash
- 在 ~/.bashrc 定义别名与函数(示例):
alias rm='trash' # 将 rm 替换为 trash-cli(若已安装) alias rl='ls ~/.trash' # 查看回收站 alias ur='undelfile' # 恢复文件 undelfile() { mv -i ~/.trash/"$@" ./ ; } cleartrash() { read -p "确定清空回收站吗?(y/N) " c [[ "$c" =~ ^[Yy]$ ]] & & /bin/rm -rf ~/.trash/* } - 使配置生效:source ~/.bashrc
- 按需加入“按容量清理”的 cron(同上脚本,TRASH 改为 ~/.trash)。
- 提示
- 若坚持用原始 rm,可把别名改为自定义函数,将删除动作改为“mv 到 ~/.trash 并加时间戳”,避免误删且便于追溯。
方案三 桌面环境 GNOME 的回收站
- 若使用 GNOME,可用 gvfs-trash 将文件移至桌面回收站(如 gvfs-trash /path/to/file)。
- 容量与保留策略通常由 GNOME 配置 管理,服务器环境一般不涉及;如需容量上限,仍建议采用“配额”或“脚本清理”的方案。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: CentOS回收站怎么设置容量
本文地址: https://pptw.com/jishu/754467.html
