升级到 Stretch 后 Webmin 停止工作

升级到 Stretch 后 Webmin 停止工作

升级到 Stretch 后,尝试webmin通过 进入时www,会出现错误:

Error - Perl execution failed

Can't locate WebminCore.pm in @INC (you may need to install the WebminCore module) (@INC contains: /etc/perl /usr/local/lib/i386-linux-gnu/perl/5.24.1 /usr/local/share/perl/5.24.1 /usr/lib/i386-linux-gnu/perl5/5.24 /usr/share/perl5 /usr/lib/i386-linux-gnu/perl/5.24 /usr/share/perl/5.24 /usr/local/lib/site_perl /usr/lib/i386-linux-gnu/perl-base ..) at /usr/share/webmin/blue-theme/index.cgi line 4.
BEGIN failed--compilation aborted at /usr/share/webmin/blue-theme/index.cgi line 4.

尝试添加PERLLIB=/usr/share/webmin~root/.profile,但没有成功。

有趣的是,当webmin从命令行调用 perl 二进制文件时,它似乎没有抛出任何错误。

怎么了?

答案1

看来在 Stretch 中,需要一个额外的 PERL 库路径。

通过检查webminperl代码,我发现perllib配置文件中接受了configure指令;并且代码将其添加到PERLLIB程序运行期间已配置的内容中。

24 %config = &read_config_file($config_file);
25 if ($config{'perllib'}) {
26         push(@INC, split(/:/, $config{'perllib'}));
27         $ENV{'PERLLIB'} .= ':'.$config{'perllib'};
28         }

因此,我在文件中添加了/etc/webmin/miniserv.conf以下行:

perllib=/usr/share/webmin

webmin开始工作。

PS 如果您在迁移到 Stretch 后由于 Webmin 出现问题而到达这里,另请参阅Webmin 停止打开

相关内容