CentOS系统回收站如何设置权限
导读:CentOS 回收站权限设置指南 一 权限设置总览 推荐将回收站目录放在用户主目录下(如:~/.trash 或 ~/.local/share/Trash),并设置仅所有者可读写执行,避免其他用户访问。 回收站脚本(如:~/bin/tras...
CentOS 回收站权限设置指南
一 权限设置总览
- 推荐将回收站目录放在用户主目录下(如:~/.trash 或 ~/.local/share/Trash),并设置仅所有者可读写执行,避免其他用户访问。
- 回收站脚本(如:~/bin/trash.sh)应仅对所有者可执行,防止被他人滥用。
- 若启用 SELinux,必要时校正回收站目录的 SELinux 上下文,避免策略拦截。
- 为降低风险,建议保留真正的 /bin/rm 可用,并通过别名或包装脚本调用回收站逻辑。
二 用户级回收站权限配置步骤
- 创建回收站目录并设置权限
- 方案A(隐藏目录):
mkdir -p ~/.trash & & chmod **700** ~/.trash - 方案B(遵循 XDG):
mkdir -p ~/.local/share/Trash & & chmod **700** ~/.local/share/Trash
- 方案A(隐藏目录):
- 创建回收站脚本(示例:~/bin/trash.sh)
- 核心逻辑:将文件移动到回收站,并为同名文件添加时间戳避免覆盖。
- 权限:
chmod **700** ~/bin/trash.sh
- 配置别名与函数(写入 ~/.bashrc 或 ~/.zshrc)
- 示例:
alias rm='~/bin/trash.sh' alias rl='ls -l ~/.trash' alias ur='mv -i ~/.trash/$@ ./' cleartrash() { read -p "clear sure? [n]" c; [[ $c =~ ^[yY]$ ]] & & /bin/rm -rf ~/.trash/*; } - 使配置生效:
source ~/.bashrc
- 示例:
- 使用与绕过说明
- 正常使用
rm 文件名会进入回收站;需要真正删除时使用绝对路径:/bin/rm 文件名。
- 正常使用
三 多用户或系统级部署与权限
- 全局启用:将创建目录与别名写入 /etc/profile 或 /etc/profile.d/trash.sh,各用户登录时自动创建自己的 ~/.trash 并生效。
- 示例(/etc/profile.d/trash.sh):
mkdir -p ~/.trash alias rm='$HOME/bin/trash.sh' alias rl='ls -l ~/.trash' alias ur='mv -i ~/.trash/$@ ./' cleartrash() { read -p "clear sure? [n]" c; [[ $c =~ ^[yY]$ ]] & & /bin/rm -rf ~/.trash/*; } - 权限建议:
chmod **755** /etc/profile.d/trash.sh
- 示例(/etc/profile.d/trash.sh):
- 共享回收站(不推荐,除非明确需要)
- 目录示例:/data/.trash
- 权限示例:
chmod **777** /data/.trash(所有用户可写,风险高,需配合清理与审计)
四 定时清理与保留策略
- 按时间清理脚本(示例:清理 30 天前文件)
#!/bin/bash TRASH_DIR="$HOME/.trash" find "$TRASH_DIR" -type f -mtime +30 -delete- 加入 crontab(每天 0 点执行):
0 0 * * * /home/用户名/bin/clear_trash.sh
- 加入 crontab(每天 0 点执行):
- 并发安全(避免多实例同时清理)
1 3 * * * flock -xn /tmp/trash.lock -c 'find /data/.trash -mtime +7 -type f -delete' - 保留策略建议:结合业务选择 7–30 天;清理前可先列出将被删除的文件做复核。
五 安全加固与注意事项
- 避免使用过于宽松的权限(如回收站目录 777),优先采用 700 并仅所有者可写。
- 保留真正的 /bin/rm,在脚本或别名中调用,防止绕过回收站执行强制删除。
- 若系统启用 SELinux,可用
ls -Z查看上下文,必要时用chcon修正,确保回收站读写不被策略拒绝。 - 重要操作前先备份;清理脚本建议先试运行或先列出匹配文件再删除。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: CentOS系统回收站如何设置权限
本文地址: https://pptw.com/jishu/772325.html
