在 Amazon EC2 上全新安装 CentOS 7.1 时安装 x2goserver-xsession 时出现问题

在 Amazon EC2 上全新安装 CentOS 7.1 时安装 x2goserver-xsession 时出现问题

我在 Amazon EC2 上全新安装了 CentOS 7.1。启动后我执行了:

yum update

然后我使用以下命令启用了 EPEL:

rpm -Uvh https://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-5.noarch.rpm

很好。之后我尝试安装x2go使用以下命令行:

yum -y install x2goserver-xsession

我收到很多行,底部写着:

--> Finished Dependency Resolution
Error: Package: x2goserver-4.0.1.19-3.el7.x86_64 (epel)
           Requires: perl(File::Which)
Error: Package: x2goserver-4.0.1.19-3.el7.x86_64 (epel)
           Requires: perl(Config::Simple)
Error: Package: x2goserver-4.0.1.19-3.el7.x86_64 (epel)
           Requires: perl(Capture::Tiny)
 You could try using --skip-broken to work around the problem
 You could try running: rpm -Va --nofiles --nodigest

真正奇怪的是,在全新安装 CentOS 7.0 的 Linode 上,同样的程序完全可以正常工作。为什么 Amazon EC2 无法安装 x2go?有什么想法可以解决这个问题吗?

答案1

首先,这与 Amazon EC2 服务器和 Linode 服务器完全无关。这是一个简单但仍然很复杂的问题,即 am RPM 需要系统上未安装的依赖项。清除这些依赖项,一切就都好了。

首先,看一下返回的错误:

--> Finished Dependency Resolution
Error: Package: x2goserver-4.0.1.19-3.el7.x86_64 (epel)
           Requires: perl(File::Which)
Error: Package: x2goserver-4.0.1.19-3.el7.x86_64 (epel)
           Requires: perl(Config::Simple)
Error: Package: x2goserver-4.0.1.19-3.el7.x86_64 (epel)
           Requires: perl(Capture::Tiny)
 You could try using --skip-broken to work around the problem
 You could try running: rpm -Va --nofiles --nodigest

问题是您只需要在主命令之前安装Requires: perl(File::Which),Requires: perl(Config::Simple)和。那些是Requires: perl(Capture::Tiny)Perl CPAN 模块。显然 RPM 不处理那些 Perl 特定的依赖项。

虽然我不熟悉x2go,这应该适用于安装 Perl CPAN 模块。

首先,进入服务器上的主目录:

cd ~/

接下来,在你的系统上安装 Perl,如下所示:

sudo yum install perl

或者您可能需要运行此命令来安装 Perl 和 CPAN:

sudo yum install perl-SPAN

但完成后,运行cpan像这样通过sudo

sudo cpan

现在为 CPAN 设置安装 YAML:

install YAML

最后,像这样安装实际的 CPAN 模块:

install File::Which Config::Simple Capture::Tiny

完成后退出:

quit

现在yum再次运行该命令:

yum -y install x2goserver-xsession

希望一切顺利。但如果所有这些都不起作用——或者出现更多错误——这可能意味着您需要在 Amazon EC2 实例上明确使用 CentOS 7.0 操作系统。

相关内容