【问题标题】:Why does WinSCP see remote files as changed/updated when they aren't?为什么 WinSCP 看到远程文件没有更改/更新?
【发布时间】:2021-03-25 11:47:25
【问题描述】:

美好的一天。

我正在使用 WinSCP 将远程服务器上的文件夹同步到我计算机上的文件夹(我的本地文件夹成为副本)。该文件夹包含大量 .TXT 和 .LOG 文件,以及一些子文件夹也包含相同的文件类型。我使用命令 -> 静态自定义命令 -> 保持本地目录最新 功能来保持本地文件夹同步。此功能会生成一个 PowerShell 脚本,该脚本每 30 秒检查一次远程文件夹。如果有任何新的/更改的文件,它会将它们下载到我的本地文件夹。这工作了几个月,但突然间它发现许多旧文件没有被“更改”。每次 WinSCP 检查远程文件夹时,它都会检测到 1200 多个更改的文件,而实际上只有 3 个左右发生了更改。它将下载所有这 1200 个,然后再次检查远程文件夹并检测文件数量为“已更改”,然后再次下载它们。请注意,每次远程检查的“错误更改”文件的数量可能不同,在 ~900 到 ~1300 个文件之间变化。远程目录中的文件 + 文件夹总数约为 2470。这种误报更改检测循环无休止地继续,下载数千个文件,而不是它应该下载的 2 个或 3 个。

我尝试重新安装 WinSCP,删除服务器书签并创建一个新书签,然后以管理员身份运行 WinSCP。这些都不起作用。

我通过 FTP 协议连接到远程服务器,没有加密。

--更新到 Martin Prikryl--

已记录两个会话,请下载这些日志here

几点说明:

  • 我尝试在名为“archive-08-2020”的子文件夹上运行此程序以限制日志大小,但无法重现该问题。该子文件夹对其约 800 个文件进行了完全同步,但在第一轮同步后发现没有更改文件。因此,两个 WinSCP 日志来自对我的主要大文件夹的操作。很抱歉给您带来不便。
  • 在两个会话中,日志文件已经多次迭代文件夹中的所有文件,而 PowerShell 屏幕仍在按顺序下载所有文件的第一次运行。
  • 远程文件夹中的文件从 chatlog_2020-09-01_0121.txt 开始,但 PowerShell 窗口每次仅从 chatlog_2020-10-25_0334.txt 开始,即使在同一会话中的连续迭代也是如此。 WinSCP 会话日志也开始于 chatlog_2020-09-01_0121.txt。
  • 远程文件夹有 4 个子文件夹:archive-05-2020archive-08-2020。 archive-08-2020 文件记录在 WinSCP 会话日志中,但没有其他子文件夹。
  • 一个不应该更新但仍然更新的文件示例是 chatlog_2020-11-30_2210.txt

【问题讨论】:

    标签: ftp winscp


    【解决方案1】:

    由于某种原因,您的特定 FTP 服务器的时区偏移自动检测似乎失败了。它可能会在 10 月夏令时结束时开始失败?

    尝试在Environment page of Advanced Site Settings dialog 处禁用时区偏移自动检测。尝试将其设置为0:00

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-06-06
      • 1970-01-01
      • 1970-01-01
      • 2020-10-01
      • 1970-01-01
      相关资源
      最近更新 更多