小编use*_*586的帖子

为什么 OpenTimeout 选项未应用于 New-PSSession?

在 powershell 中,我试图创建一个远程会话。它失败了(没关系,我知道为什么失败),但问题是我正在尝试设置失败超时。

我创建了一个 New-PSSessionOption 并以毫秒为单位设置了 OpenTimeout,但似乎无论如何它总是花费相同的时间:15 秒。*

$cred = new-object -typename System.Management.Automation.PSCredential -argumentlist $username, $password
$pso = New-PSSessionOption -OpenTimeout 10000
$server = "hostname"
$session = New-PSSession -ComputerName $server -Credential $cred -SessionOption $pso
...
Remove-PSSession $session
Run Code Online (Sandbox Code Playgroud)

New-PSSession 行出现的错误消息(如果与未应用超时的原因相关)是这样的:

连接到远程服务器“主机名”失败,并显示以下错误消息:WinRM 无法完成操作。验证指定的计算机名称是否有效、该计算机是否可通过网络访问、WinRM 服务的防火墙例外是否已启用并允许从此计算机进行访问。默认情况下,公共配置文件的 WinRM 防火墙例外限制对同一本地子网内的远程计算机的访问。有关详细信息,请参阅 about_Remote_Troubleshooting 帮助主题。

编辑: * 当更改 OpenTimeout 值时,它似乎发生了变化,但保持在一定范围内,即 5-20 秒。也许这个参数有一个未记录的最小值和最大值?

powershell powershell-remoting

5
推荐指数
0
解决办法
1081
查看次数

这个错误意味着什么:"导出不是由导出模块导出的"?

正如标题所述,我在尝试使用我的perl模块时遇到此错误,但我不知道这意味着什么,我似乎无法在互联网上找到任何明确的结果.我的代码由3个文件组成:一个脚本(myApp.pl),它使用一个模块(MyLib.pm),后者又使用另一个模块(Secret.pm).在这里他们是完整的:

myApp.pl

#!/path/to/perl

my $version = "1.0.0";

use warnings;
use strict;
use Testing::MyLib;
Run Code Online (Sandbox Code Playgroud)

MyLib.pm

package Testing::MyLib;

use strict;
use warnings;

use Testing::Secret;
Run Code Online (Sandbox Code Playgroud)

Secret.pm

package Testing::Secret;

use strict;
use warnings;

use Exporter qw( import );
our @EXPORT = ();
our %EXPORT_TAGS = (
  'all' => [ qw( MY_CONSTANT )]
);
our @EXPORT_OK = (
  @{ $EXPORT_TAGS{all}}
);

use constant MY_CONSTANT => 'bla bla bla';
Run Code Online (Sandbox Code Playgroud)

它们以此文件结构退出:

/bin/myApp.pl
/lib/perl/Testing/MyLib.pm
/lib/perl/Testing/Secret.pm
Run Code Online (Sandbox Code Playgroud)

错误消息的详细信息是:

[user@pc ~]$ myApp.pl
"import" is not exported by the Exporter module at …
Run Code Online (Sandbox Code Playgroud)

perl

2
推荐指数
1
解决办法
246
查看次数

标签 统计

perl ×1

powershell ×1

powershell-remoting ×1