p7zip 卡在压缩状态(警告:没有此文件或目录)

p7zip 卡在压缩状态(警告:没有此文件或目录)

基本上,我发现p7zip首先扫描要压缩的目录,然后以单个 zip 格式压缩这些文件。

考虑以下场景,我有数百 GB 的文件和文件夹,它们首先被扫描以进行压缩。假设我在扫描完成后删除了一个文件。我不知道文件在扫描完成时怎么会丢失,但这种行为在生产中是见过的,所以在我的本地机器上,我自己删除了它。在这种情况下,它会抛出以下错误并无限期地卡住。

7-Zip (a) [64] 16.02 : Copyright (c) 1999-2016 Igor Pavlov : 2016-05-21                                                                                       
p7zip Version 16.02 (locale=en_US.UTF-8,Utf16=on,HugeFiles=on,64 bits,6 CPUs Intel(R) Core(TM) i5-9500T CPU @ 2.20GHz (906EA),ASM,AES-NI)                     
                                                                                                                                                              
Scanning the drive:                                                                                                                                           
29741 folders, 48865 files, 5035919485 bytes (4803 MiB)                                                                                                       
                                                                                                                                                              
Creating archive: /home/mymachine/Downloads.zip                                                                                                               
                                                                                                                                                              
Items to compress: 78606                                                                                                                                      
                                                                                                                                                              
                                                                                                                                                              
WARNING: No such file or directory                                                                                                                            
/var/webarch/data/fs-root/538/2022/05/20/19964 

那么,p7zip 或 hack 中是否有任何标志可用于忽略这些警告并继续压缩?例如,我们可以忽略扫描后丢失的一些文件,而不是在生产中抛出超时错误。

答案1

错误报告中提到了这一点 #2099 如果在创建 zip 存档时删除文件,7z 会挂起 从 2017 年开始。

开发人员承诺修复该问题,但是没有。

他确实提供了一个解决方法,即添加开关-mmt1,将线程数设置为一 (1)。显然,挂起是由于其中一个线程找不到文件时发生的多线程冲突引起的,而只有一个线程可以避免这种情况。

相关内容