
我在 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 伺服器 100% 無關。這是一個簡單但仍然複雜的問題,因為 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 作業系統。