Linux
yum 更新崩潰後未解決的依賴關係(斷開 ssh 連接)
今天我正在更新一台生產伺服器(其中一個測試更新,然後更新其餘的電腦)。
yum update
執行ssh 連接後不久:/ 。這次使用螢幕會話再次登錄後,我執行yum-complete-transaction
但它有問題,所以我使用--skip-broken
參數執行它。這對於未完成的事務工作得很好,但 perl 依賴問題仍然存在。我試圖重新安裝 perl 包,但它給了我一個錯誤:Loaded plugins: langpacks, presto, refresh-packagekit Installed package 4: perl-5.14.2-201.fc16.x86_64 (with updates) is not available. Error: There is nothing to be done
這個錯誤我嘗試 yum 更新:
Loaded plugins: langpacks, presto, refresh-packagekit Dependency resolution -> Running transaction check ---> Package perl.x86_64 4:5.14.2-201. FC16 is updated -> Processing Dependency: perl = 4:5.14.2-201. FC16 for package: 1: perl-Pod-Escapes-1.04-201.fc16.noarch -> Processing Dependency: perl = 4:5.14.2-201. FC16 for package: 4: perl-libs-5.14.2-201.fc16.x86_64 -> Processing Dependency: perl = 4:5.14.2-201. FC16 for package: perl-threads-1.83-201.fc16.x86_64 ---> Package perl.x86_64 4:5.14.3-202. FC16 is updated ---> Package perl-CGI.noarch 0:3.52-201. FC16 is updated ---> Package perl-CGI.noarch 0:3.52-202. FC16 is updated ---> Package perl-Module-Pluggable.noarch 1:3.90-201. FC16 is updated ---> Package perl-Module-Pluggable.noarch 1:3.90-202. FC16 is updated ---> Package perl-PathTools.x86_64 0:3.33-201. FC16 is updated ---> Package perl-PathTools.x86_64 0:3.33-202. FC16 is updated ---> Package perl-Pod-Simple.noarch 1:3.16-201. FC16 is updated ---> Package perl-Pod-Simple.noarch 1:3.16-202. FC16 is updated ---> Package perl-macros.x86_64 4:5.14.2-201. FC16 is updated ---> Package perl-macros.x86_64 4:5.14.3-202. FC16 is updated ---> Package perl-parent.noarch 1:0.225-201. FC16 is updated ---> Package perl-parent.noarch 1:0.225-202. FC16 is updated ---> Package perl-threads-shared.x86_64 0:1.37-201. FC16 is updated ---> Package perl-threads-shared.x86_64 0:1.37-202. FC16 is updated ---> Package perl-version.noarch 3:0.88-201. FC16 is updated ---> Package perl-version.noarch 3:0.88-202. FC16 is updated -> Complete dependency resolution Error: package: 4: perl-libs-5.14.2-201.fc16.x86_64 (@ updates) Requires: perl = 4:5.14.2-201. FC16 Removing: 4: perl-5.14.2-201.fc16.x86_64 (@ updates) perl = 4:5.14.2-201. FC16 Updated by: 4: perl-5.14.3-202.fc16.x86_64 (updates) perl = 4:5.14.3-202. FC16 Available: 4: perl-5.14.1-188.fc16.x86_64 (fedora) perl = 4:5.14.1-188. FC16 Error: Package: perl-threads-1.83-201.fc16.x86_64 (@ updates) Requires: perl = 4:5.14.2-201. FC16 Removing: 4: perl-5.14.2-201.fc16.x86_64 (@ updates) perl = 4:5.14.2-201. FC16 Updated by: 4: perl-5.14.3-202.fc16.x86_64 (updates) perl = 4:5.14.3-202. FC16 Available: 4: perl-5.14.1-188.fc16.x86_64 (fedora) perl = 4:5.14.1-188. FC16 Error: Package: 1: perl-Pod-Escapes-1.04-201.fc16.noarch (@ updates) Requires: perl = 4:5.14.2-201. FC16 Removing: 4: perl-5.14.2-201.fc16.x86_64 (@ updates) perl = 4:5.14.2-201. FC16 Updated by: 4: perl-5.14.3-202.fc16.x86_64 (updates) perl = 4:5.14.3-202. FC16 Available: 4: perl-5.14.1-188.fc16.x86_64 (fedora) perl = 4:5.14.1-188. FC16 You could try using - skip-broken to work around the problem ** Found 6 pre-existing problems of the RPM database. The result of the command "yum check": 1: perl-Pod-Escapes-1.04-202.fc16.noarch is a duplicate 1: perl-Pod-Escapes-1.04-201.fc16.noarch 1: perl-Pod-Escapes-1.04-202.fc16.noarch has missing requirements perl = ('4 ', '5 .14.3', '202. FC16 ') 4: perl-libs-5.14.3-202.fc16.x86_64 is a duplicate 4: perl-libs-5.14.2-201.fc16.x86_64 4: perl-libs-5.14.3-202.fc16.x86_64 has missing requirements perl = ('4 ', '5 .14.3', '202. FC16 ') perl-threads-1.83-202.fc16.x86_64 is a duplicate perl-threads-1.83-201.fc16.x86_64 perl-threads-1.83-202.fc16.x86_64 has missing requirements perl = ('4 ', '5 .14.3', '202. FC16 ')
(這是從我的母語翻譯成英文的)
如何處理?(下次我將使用螢幕更新系統)
我的系統是帶有 3.2.3-2.fc16.x86_64 核心的 Fedora 16。
我設法通過刪除 perl-libs、perl-threads、perl-Pod-Escapes 來解決 deps。刪除此應用程序很容易(無依賴性)。在那之後,
yum update
一切都很好,甚至更新了刪除的應用程序(我認為某些重複存在問題)。我的課使用螢幕:)
快速執行一個
yum clean all
,然後是一個 RPM 數據庫檢查 -rpm --rebuilddb
- 然後再試一次。你是對的……
screen
下次在遠端會話的前台執行關鍵或重要係統程序時,一定要使用。