在 QNAP(威联通)NAS 上自动查找和删除 重复文件 的方法

本文介绍如何在QNAP NAS上使用fdupes工具自动查找并删除重复文件。通过SSH连接和命令行操作,用户可以轻松地对指定目录进行去重处理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Qidi 2020.12.12


0. 前言

看到很多人说在 QNAP NAS 上使用 fdupes 工具只能实现查找重复文件的效果,要删除文件只能对照生成的重复文件列表手动操作。这个说法其实是不对的,fdupes 完全支持自动去重功能。

以下正文说明了使用 fdupes 工具自动查找并删除重复文件的详细步骤。


1. 安装 fdupes

QNAP NAS 没有官方的去重工具,需要先手动下载并安装 fdupes 软件。

fdupes 是一款用于文件去重的开源工具(代码仓库)。喜欢折腾的小伙子可以把代码拉到本地,自己编译安装包;和我一样懒得动的朋友可以直接到 QNAPClub.eu(点我) 下载。

网站上提供了不同的软件版本,请根据自己的 NAS 机型选择对应的版本进行下载:
软件版本

我的 NAS 机型使用的 CPU 是 x86_64 架构,所以选择上图所示的 “TS-NASX86_64” 这项。截至写作本文时,能下载到的最新版安装包为 Fdupes_1.61_x86_64.qpkg

下载完成后,需要进入 NAS 的 App Center 中手动加载安装包进行安装:
手动安装 fdupes
点击上图所示带 +号 的按钮后,会弹出一个会话框让你选择安装包的路径。找到你刚刚下载的安装包,点击 安装 按钮就可以了。


2. 为 NAS 开启 SSH 连接

fdupes 的图形化操作界面既丑陋又不好用,所以请和我一样,使用命令行方式来操作。

先检查 NAS 是否允许 SSH 连接。如果你不清楚,请先到控制台中检查并确保这个功能已经启用。见下图:
启用SSH
如果你觉得一直开着 SSH 端口不安全,那么在完成文件查重和删除后,再禁用 SSH 连接即可。

QNAP 的 NAS 只允许以管理员身份使用 SSH,所以我们需要在登录时指明身份。在本地打开一个 cmd 窗口,并执行如下命令(记得替换成你自己的 NAS 的 IP 地址):

ssh admin@192.168.1.24

之后请根据提示,输入你的 NAS 的管理员密码。

至此,我们就通过 SSH 登录到 NAS 上了。


3. 使用 fdupes 查找并删除重复文件

别急,先检查下 fdupes 是否已正确安装。

执行 fdupes --help 命令,如果看到下面这些打印,就说明 fdupes 已经安装就绪了。否则,请检查你下载的软件版本是否有误,并重新安装:

[/share/CACHEDEV1_DATA/myPhotos] # fdupes --help
Usage: fdupes [options] DIRECTORY...

 -r --recurse           for every directory given follow subdirectories
                        encountered within
 -R --recurse:          for each directory given after this option follow
                        subdirectories encountered within (note the ':' at
                        the end of the option, manpage for more details)
 -s --symlinks          follow symlinks
 -H --hardlinks         normally, when two or more files point to the same
                        disk area they are treated as non-duplicates; this
                        option will change this behavior
 -n --noempty           exclude zero-length files from consideration
 -A --nohidden          exclude hidden files from consideration
 -f --omitfirst         omit the first file in each set of matches
 -1 --sameline          list each set of matches on a single line
 -S --size              show size of duplicate files
 -m --summarize         summarize dupe information
 -q --quiet             hide progress indicator
 -d --delete            prompt user for files to preserve and delete all
                        others; important: under particular circumstances,
                        data may be lost when using this option together
                        with -s or --symlinks, or when specifying a
                        particular directory more than once; refer to the
                        fdupes documentation for additional information
 -N --noprompt          together with --delete, preserve the first file in
                        each set of duplicates and delete the rest without
                        prompting the user
 -I --immediate         delete duplicates as they are encountered, without
                        grouping into sets; implies --noprompt
 -p --permissions       don't consider files with different owner/group or
                        permission bits as duplicates
 -o --order=BY          select sort order for output and deleting; by file
                        modification time (BY='time'; default), status
                        change time (BY='ctime'), or filename (BY='name')
 -i --reverse           reverse order while sorting
 -v --version           display fdupes version
 -h --help              display this help message

[/share/CACHEDEV1_DATA/myPhotos] #

通过上面的帮助信息可以看到,我们能够以 交互方式 或者 静默方式 执行重复文件查找和删除。

当检测到重复文件时,交互方式 会给出提示信息,等待用户(也就是你)自己来决定保留重复文件中的哪一个;静默方式 则会按照预先给定的策略自动删除重复的文件。


现在可以真正开始查找和删除重复文件了。

不想读 fdupes帮助信息 的朋友可以直接用我下面给出的几组命令:

要查看指定目录下的文件重复情况,执行命令 fdupes -m -A -R myPhotos(myPhotos 是要进行查重的目标目录名,需要替换成你自己的)。输出信息如下,可以看到重复文件数量及其占用的磁盘空间:

[/share/CACHEDEV1_DATA] # fdupes -A -m -R myPhotos
247 duplicate files (in 247 sets), occupying 441.31 megabytes

[/share/CACHEDEV1_DATA] #

-A 参数的含义是不对隐藏文件进行检查。如果你希望对隐藏文件也进行检查,将命令中的 -A 参数删去即可。

交互方式 去重,执行命令 fdupes -d -A -R myPhotos (同上,请替换目标目录名为你自己的)。输出信息如下。每找到一组重复文件,软件都会打印提示,然后等待用户指定一个文件进行保留:

[/share/CACHEDEV1_DATA] # fdupes -d -A -R myPhotos
[1] myPhotos/2019-12-15上传/IMG_3141.JPG
[2] myPhotos/2019-12-15上传/IMG_0398.JPG

Set 1 of 247, preserve files [1 - 2, all]: 1

   [+] myPhotos/2019-12-15上传/IMG_3141.JPG
   [-] myPhotos/2019-12-15上传/IMG_0398.JPG

[1] myPhotos/2019-12-15上传/IMG_0042.JPG
[2] myPhotos/20200807上传/IMG_2557.JPG

Set 2 of 247, preserve files [1 - 2, all]: 1

   [+] myPhotos/2019-12-15上传/IMG_0042.JPG
   [-] myPhotos/20200807上传/IMG_2557.JPG

[1] myPhotos/20200807上传/IMG_4212.JPG
[2] myPhotos/Xiaomi_Pic_Backup/20201009/mmexport1600648565483.jpg

......

使用交互方式的好处是,可以对软件提示的重复文件进行核对后再删除。

静默方式 去重,执行命令 fdupes -d -N -A -R myPhotos (同上,请替换目标目录名为你自己的)。输出信息如下。软件默认策略为保留每组重复文件中的第一个,并删除其它项:

[/share/CACHEDEV1_DATA] # fdupes -d -N -A -R myPhotos

   [+] myPhotos/20200807上传/IMG_4218.JPG
   [-] myPhotos/Xiaomi_Pic_Backup/20201009/mmexport1600648483613.jpg


   [+] myPhotos/20200807上传/IMG_2495.JPG
   [-] myPhotos/20200807上传/IMG_2496.JPG


   [+] myPhotos/20200807上传/IMG_1780.JPG
   [-] myPhotos/20200807上传/IMG_1779.JPG

......

无论使用哪种方式去重,最后的结果都是彻底清除了指定目录下的重复文件。为了确认这一事实,我们可以再次执行命令 fdupes -m -A -R myPhotos 进行检查。输出如下:

[/share/CACHEDEV1_DATA] # fdupes -m -A -R myPhotos
No duplicates found.

[/share/CACHEDEV1_DATA] #

可以看到目标目录下已经清理干净。

重复文件查找王”,一款为您以最快的速度找出指定目录中内容复的文件列表,便于您据此清理文件,减少重复文件对磁盘空间的占用。本工具的主要功能: 提供8种匹配方法,我们称之为匹配准确度的8层,它们是: 第0层,文件名中包含指定的文字 第1层,文件名相同,文件后缀名可以不同 第2层,文件名相同,文件后缀名也必须相同 第3层,文件名相同,文件后缀名相同,文件大小也必须相同 第4层,文件的大小相同,CRC校验值也必须相同 第5层,文件名相同,文件的大小相同,CRC校验值也必须相同 第6层,文件的MD5校验值必须相同 第7层,文件名相同,文件的MD5校验值必须相同 这些匹配算法,已经能够满足绝大多数的用户的日常需要了。在查找文件总数及内容完全相同的情况下,这7种算法,按照从小到大的顺序,查找速度递减(即占用的时间递增),但是查找的准确度递增。默认的查找方式是第4层。设置方法:“高级设置” --> “搜索方式”。 本软件的搜索算法经过了精心的整理优化,在国内外已有的、号称最优秀的同类软件相比时,本软件的速度仍然是最快的。 对于硬盘空间快速增加的今天,查找速度的优化是极其要的。 在信息爆炸的年代,您有没有觉得"垃圾信息"也在同样地爆炸式增长呢?在一台计算机上的重复文件,基本上也可以认为是垃圾信息,因为它们一方面占用了您宝贵的IT投资资源,另一方面,对于您进行文件版本控制也是极端的不利。本软件就能为您解决这些头疼的问题。
### 如何解决未授权的Photoshop应用程序被禁用问题 当遇到未授权的Adobe Photoshop应用程序被禁用的情况时,可以采取特定措施来解决问题。一种常见的临时解决方案涉及调整系统的防火墙设置以阻止Photoshop访问网络验证服务器[^4]。 #### 修改Windows Defender防火墙设置 为了防止Photoshop因无法通过激活验证而被禁用,可以通过创建一个新的出站规则来阻止其尝试连接到互联网: 1. 右键点击【此电脑】→【属性】,随后在弹出的窗口中点击左上角的【控制面板主页】。 2. 在【控制面板】窗口选择并点击【Windows Defender 防火墙】-【高级设置】。 3. 在【高级安全Windows Defender防火墙】界面左上角点击【出站规则】,之后在新页面右上角点击【新建规则】按钮。 4. 默认选择【程序】选项并继续点击【下一步】。 5. 点击【浏览】并在新窗口中定位至Photoshop安装路径,选中【Photoshop.exe】文件后点击【打开】。 6. 返回【新建出站规则向导】窗口确认所选程序无误后点击【下一步】。 7. 选择【阻止连接】作为操作方式再连续两次点击【下一步】。 8. 给这条规则起个名字最后点击【完成】结束配置过程。 这一步骤能够有效避免由于缺少有效的许可证而导致的应用程序停用现象发生。不过需要注意的是这种方法仅适用于短期应急处理,并不推荐长期使用未经许可的产品副本。 ### 获取正版Adobe应用的方法 对于希望合法合规地使用Adobe产品的用户来说,最直接的方式是从官方渠道购买订阅服务。Adobe提供了多种订购计划供个人或企业客户按需选购,包括但不限于月度、年度以及团队套餐等形式。此外还有教育机构专享折扣可供符合条件的学生教职员工申请享受优惠价格。 一旦成功注册成为付费会员,则可以在Creative Cloud平台上下载最新版本的全部创意套件组件,其中包括完整的Photoshop功能集以及其他诸如Illustrator、InDesign等专业级创作工具。同时还将获得云存储空间支持及其他增值服务项目。 ```bash # 访问Adobe官方网站了解更多信息 https://www.adobe.com/cn/creativecloud/plans.html ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值