温馨提示×

Linux磁盘清理:查找并删除重复文件

小樊
41
2025-10-06 16:14:50
栏目: 智能运维

在Linux系统中,查找并删除重复文件是一个常见的任务,可以帮助释放磁盘空间。以下是一些常用的方法和工具来实现这一目标:

方法一:使用fdupes工具

fdupes是一个专门用于查找和删除重复文件的工具。

  1. 安装fdupes

    sudo apt-get install fdupes  # Debian/Ubuntu
    sudo yum install fdupes      # CentOS/RHEL
    sudo dnf install fdupes      # Fedora
    
  2. 查找重复文件

    fdupes -r /path/to/search
    

    -r选项表示递归搜索子目录。

  3. 删除重复文件

    fdupes -r -N /path/to/search
    

    -N选项表示删除重复文件,但保留最新的一个。

方法二:使用findmd5sum

这种方法不依赖于外部工具,但需要一些手动操作。

  1. 查找并计算文件的MD5哈希值

    find /path/to/search -type f -exec md5sum {} \; | sort | uniq -w 32 -d
    

    这条命令会列出所有重复的文件路径。

  2. 手动删除重复文件: 根据输出结果,手动删除重复文件,保留一个。

方法三:使用rdupes工具

rdupes是另一个查找和删除重复文件的工具,功能比fdupes更强大。

  1. 安装rdupes

    sudo apt-get install rdupes  # Debian/Ubuntu
    sudo yum install rdupes      # CentOS/RHEL
    sudo dnf install rdupes      # Fedora
    
  2. 查找重复文件

    rdupes -r /path/to/search
    
  3. 删除重复文件

    rdupes -r -n /path/to/search
    

    -n选项表示列出重复文件,但不删除。

方法四:使用duplicity工具

duplicity是一个备份工具,但它也可以用来查找和删除重复文件。

  1. 安装duplicity

    sudo apt-get install duplicity  # Debian/Ubuntu
    sudo yum install duplicity      # CentOS/RHEL
    sudo dnf install duplicity      # Fedora
    
  2. 查找重复文件

    duplicity collect-statistics /path/to/search
    
  3. 删除重复文件

    duplicity remove-all-but-n-full 2 /path/to/search
    

    这条命令会删除所有重复文件,只保留最新的两个。

注意事项

  • 在删除文件之前,请确保备份重要数据。
  • 使用这些工具时要小心,避免误删重要文件。
  • 可以先使用-n-N选项进行测试,确认无误后再进行删除操作。

通过以上方法,你可以有效地查找并删除Linux系统中的重复文件,释放磁盘空间。

0