Debian

升級到 Stretch 後 Webmin 停止工作

  • August 8, 2018

升級到 Stretch 後,在嘗試通過 輸入webminwww,它會給出錯誤:

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 二進製文件時,它似乎沒有拋出任何錯誤。

怎麼了?

似乎在 Stretch 中,需要一個額外的 PERL 庫 PATH。

在檢查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 停止打開

引用自:https://unix.stackexchange.com/questions/328458