诊断 Cobian Backup 到网络共享的权限问题

诊断 Cobian Backup 到网络共享的权限问题

我正在运行最新的 Cobian 11。我有一台 Synology DS412 NAS。当我登录并手动浏览时,我的所有机器(Mac 和 Windows)都可以正常访问它。

我在两台 Windows 机器上安装了 Cobian 作为服务:WinXP SP3 和 Win7 x64。在这两台机器上,服务都设置为使用我的用户帐户登录,该帐户属于 Windows 管理员组。两台机器上的备份均失败,并显示消息“无法创建目标目录“\\nas1\backups\foo\bar\”:文件名、目录名或卷标语法不正确”。

  • 我尝试过将 NAS 的共享设置为允许匿名读/写访问,但没有什么效果。虽然我希望备份在半夜无人值守的情况下运行,但我已在登录时手动运行备份,但还是没有成功。
  • 在开始之前,我确保我可以使用 Explorer 浏览 NAS,以确保与 Windows 和 NAS 的任何身份验证会话均未过期。但仍然没有成功。
  • 我曾尝试在备份之前在 NAS 上创建该目标目录并将其删除,以便备份作业可以使用客户端的凭据创建它,但没有成功。

Cobian 支持论坛中通常的答案是存在权限问题。我同意。但此时,我能做些什么来进一步诊断这个问题?

答案1

这是因为您正在以服务方式运行该程序。默认情况下,Cobian 作为服务安装。将该程序重新安装为应用程序,问题就会消失。

注意:如果您创建了一些任务,请确保在卸载 Cobian 之前从文件菜单中保存/导出它们,以便您可以在卸载重新安装后重新导入它们。

答案2

我遇到了同样的问题。我找到了一个不太好的解决方法,但对我来说很管用。
如果有人感兴趣的话,下面就是从这里复制的。

你好 !

为了规避 Cobian 行为 [用目标的 UNC 表示替换文件夹名称],可以这样做:

第一部分,一些配置:

  • CD 进入 Cobian 安装文件夹

  • 创建一个目录,例如 mnt [类似 unix mount]

  • 使用 Cobian,打开一个任务并像往常一样更改/创建目标,到“C:\Program Files (x86)\Cobian Backup 11\mnt\toBackup” [不用担心 ;-)]

  • 此后,删除 Windows 资源管理器中的“toBackup”文件夹

第 2 部分,为任务创建前期/后期作业。

a) 活动前

  • 映射网络驱动器,但仅映射 UNC 名称,不映射目录,如下所示:

    net use \remServer\remShare /user:用户名密码 [可以通过 >net use 验证]

  • 使用 LINKD 将此网络连接映射到之前创建的子目录 [mnt]:

    mklink /d "C:\Program Files (x86)\Cobian Backup 11\mnt\toBackup" \remServer\remShare [将“toBackup”目标视为相同的名称]

如果这在预先事件中已经执行,Cobian 会在本地子文件夹中看到远程驱动器(已为其配置)。

b) 活动后

  • rd /s /q "C:\Program Files (x86)\Cobian Backup 11\mnt\toBackup" [别担心:这不会删除您的文件!{1}]
  • 净使用 \remServer\remShare /d /y

严格按照此顺序保存这些命令。

这样一切都运行良好,因为 cobian 进程不需要身份验证。注意:这需要 Windows7 或 Windows Server 2008 R2。

这是一个丑陋的解决方法,但可以完成工作。我不明白为什么 Cobian 不能直接打开与特定用户名下的服务器的网络连接。其实没那么复杂。

此致,

++马布拉

{1} 进行适当的测试。我不会在这里提供任何保证。它对我来说运行正常。

答案3

如果您使用的是云存储设备(如 WD Cloud),而不是域相关服务器,那么您只需确保在两个系统上匹配相同的用户名和密码。也就是说,创建一个本地用户(如“BackupUser”)并设置密码,将其设置为 Cobian 服务的登录用户,然后转到云设备并在保护云共享文件夹时在那里配置相同的用户名和密码。这允许 Cobian 作为 Windows 服务运行,这更好,因为本地用户无需登录即可备份您的机器。

答案4

我在 Cobian Backup 论坛上找到了解决方案: 无法创建目标目录 - 导致“文件名、目录名或卷标语法不正确”

让 Windows 使用具有写入权限的凭据打开共享。这可以作为 Cobian 备份任务定义中的预备份事件来完成。

为此,打开命令提示符并键入以下字符串 - 注意 <> 中括起来的值需要进行修改以满足您的需要:

net use </PERSISTENT:YES> \\<SERVERNAME>\<SHARENAME> /user:<USERNAME> <PASSWORD_OR_*_FOR_PROMPT>

相关内容