5. fdupes 检测和删除重复文件

RHEL 8 使用 fdupes 处理 Samba 共享盘重复文件

fdupes 简介

fdupes 是一个轻量、强大的命令行工具,用于在 Linux 系统(如 RHEL 8)上查找和删除重复文件。它通过哈希校验(默认 MD5,可选 SHA1)比较文件内容,确保准确识别重复文件,避免误删。特点包括:

  • 高效:多线程扫描,适合处理 Samba 共享盘上的海量文件。

  • 灵活:支持递归扫描、交互删除、硬链接替换。

  • 简单:无需复杂配置,开源免费,RHEL 8 兼容。

注册 RHEL 8 系统

在 RHEL 8 上安装软件(如 fdupes)需先注册系统以访问 Red Hat 和 EPEL 仓库。

步骤

  1. 注册系统

    sudo subscription-manager register --name="Server-01-Prod" --username=your_username --password=your_password
  2. 附加订阅

    sudo subscription-manager attach --auto
    • 验证:sudo subscription-manager list --consumed

  3. 启用仓库

    sudo subscription-manager repos --enable=rhel-8-for-x86_64-baseos-rpms
    sudo subscription-manager repos --enable=rhel-8-for-x86_64-appstream-rpms
  4. 故障排除

    • 网络问题:检查 ping google.com 或设置代理 export http_proxy=http://proxy:port

    • 未注册:清理 sudo subscription-manager clean 后重试。

    • 仪表盘未显示:运行 sudo subscription-manager refresh

安装 fdupes

启用 EPEL 仓库并安装 fdupes

  • 验证:fdupes --version

fdupes 操作方法

在 Samba 共享盘(例如 /path/to/samba/share)中查找和删除重复文件。

步骤

  1. 进入共享目录

  2. 预览重复文件

    • -r:递归扫描目录。

    • 输出:列出重复文件组(基于哈希)。

  3. 交互删除

    • -d:提示选择保留的文件(每组保留一个)。

    • 按数字选择(如 1 保留第一个)或 0 跳过。

  4. 自动删除(谨慎):

    • -N:自动保留每组第一个文件,删除其余。

    • 建议:先备份或在小目录测试。

  5. 高级选项

    • 硬链接替换(节省空间):fdupes -rH .

    • 按大小预过滤(加速):fdupes -rS .

注意事项

  • 备份:操作前备份重要数据。

  • 权限:确保对 Samba 路径有读写权限(ls -l 检查)。

  • 性能:大目录扫描可能耗时,视文件量和硬件。

仪表盘管理多台 RHEL 系统

  • 查看系统列表,包含:

    • 系统名称:注册时的 --name 或默认主机名。

    • 系统 ID:唯一 UUID。

    • 订阅状态、硬件事实(CPU、内存)。

  • 搜索/导出 CSV 区分机器,启用 Insights(insights-client --register)增强管理。

最后更新于