Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/powershell/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Powershell 复制项错误:符号链接的类型已禁用,因此无法跟随符号链接_Powershell - Fatal编程技术网

Powershell 复制项错误:符号链接的类型已禁用,因此无法跟随符号链接

Powershell 复制项错误:符号链接的类型已禁用,因此无法跟随符号链接,powershell,Powershell,我的脚本将一个目录(以及所有子目录)复制到一个名为今天日期的新目录,并复制到10个不同的服务器 $ServerList = Get-Content 'C:\Users\test\Powershellskript\testservrar.txt' ForEach ($Server in $ServerList) { $source = "\\$Server\C$\Java\testIX" $distanation = "\\$Server\C$\Backup" $today

我的脚本将一个目录(以及所有子目录)复制到一个名为今天日期的新目录,并复制到10个不同的服务器

$ServerList = Get-Content 'C:\Users\test\Powershellskript\testservrar.txt'
ForEach ($Server in $ServerList)
{
    $source = "\\$Server\C$\Java\testIX"
    $distanation = "\\$Server\C$\Backup"
    $today = (Get-Date).ToString('YY-MM-DD')
    $location = New-Item -Path $distanation -Type Directory -Name $today
    Copy-Item $source -Destination $location -recurse
}
但是我得到了下面的两个错误,我如何修复它

Copy-Item : The symbolic link cannot be followed because its type is disabled. At C:\Users\baa065sa\Powershell skript\Untitled1.ps1:9 char:1 复制项:符号链接的类型已禁用,因此无法跟随符号链接。 在C:\Users\baa065sa\Powershell skcript\Untitled1.ps1:9 char:1 复制项:指定的路径、文件名或两者都太长。完全限定文件名必须少于260个字符,目录名必须少于248个字符。 在C:\Users\baa065sa\Powershell skcript\Untitled1.ps1:9 char:1
第一个错误是因为默认情况下禁用了远程到远程符号链接

您可以通过运行以下命令(使用提升的命令提示符)来检查这一点:

fsutil behavior query SymlinkEvaluation
然后将返回您的状态:

Local to local symbolic links are enabled.
Local to remote symbolic links are enabled.
Remote to local symbolic links are disabled.
Remote to remote symbolic links are disabled.
并使用以下方法更改此行为:

fsutil behavior set SymlinkEvaluation R2R:1
然后再次查询以查看新状态:

> fsutil behavior query SymlinkEvaluation

Local to local symbolic links are enabled.
Local to remote symbolic links are enabled.
Remote to local symbolic links are disabled.
Remote to remote symbolic links are enabled.
您的第二个错误正是它所说的:

指定的路径、文件名或两者都太长。完全限定文件名必须少于260个字符,目录名必须少于248个字符


您的目标路径(
\MyServerName\C$\Backup\Folder\Folder\…\file.txt
)超出了错误消息中的限制。

为什么?!我如何解释错误?很抱歉,我发布时代码没有格式化,没有提供任何解释,我删除了以前的评论。这里似乎有一个解决方案:第一个错误:我应该在要备份的计算机中运行fsutile行为集symlinker2r:1吗?还是运行脚本的机器?其他错误:我知道有些文件的名称太长,但是如何在没有powershell的情况下备份文件呢!
> fsutil behavior query SymlinkEvaluation

Local to local symbolic links are enabled.
Local to remote symbolic links are enabled.
Remote to local symbolic links are disabled.
Remote to remote symbolic links are enabled.