如果发生 VM 硬件升级,已安装的 Perl 模块将被清除

vin*_*k89 1 perl redhat

我的 VM 版本是:Red Hat Enterprise Linux 6而 Perl 版本是This is perl, v5.10.1 (*) built for x86_64-linux-thread-multi.

由于我必须执行一些使用模块的 Perl 脚本,例如Time::PieceTime::Seconds我的 VM 不断抛出错误消息,模块尚未安装。错误信息是:

$ perl -MTime::Piece -e 1
Can't locate Time/Piece.pm in @INC (@INC contains: /usr/local/lib64/perl5 /usr/local/share/perl5 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5 .).
Run Code Online (Sandbox Code Playgroud)

所以正如文档中提到的,我执行了sudo yum install perl-core解决我在 VM 中的模块依赖问题的命令。

现在我的问题是,如果假设虚拟机升级到最新的硬件版本(例如,升级RHEL 6RHEL 7),使用的模块perl-core是否会被删除。

这个问题与VM更相关,因此也包括Linux标签。

小智 5

对于 VM,您最好在最新版本的新 VM 中创建新的 RHEL 实例,而不是尝试升级,如果需要,您可以在安装时加载 Perl-Core。

迁移时,Perl 是您最不担心的。虚拟机的美妙之处在于它很容易尝试并查看您会遇到什么问题。

阅读 RedHat 的迁移文档。6 和 7 之间有显着变化,值得你花时间。

  • 这。始终将虚拟机视为一次性的,并在虚拟机之外跟踪其设置方式;不一定是 ansible/chef/puppet/任何东西,甚至只是一个 bash 脚本。关键是“一次性”;您应该能够扔掉您的虚拟机并轻松构建一个可以正常工作的新虚拟机。那么您的升级担忧仅限于弄清楚您需要进行哪些配置更改,并确保您的实际代码适用于它所使用的所有内容的新版本 (3认同)