Windows XP Windows 7 Windows 2003 Windows Vista Windows 綜合教學 Linux 系統教學
Windows 10 Windows 8 Windows 2008 Windows NT Windows Server 電腦軟體教學
您现在的位置: Windows教程網 >> Windows教程 >  >> Linux 系統教學 >> Linux 教學

64 位 Ubuntu 無法安裝 ia32-libs 解決:軟體源切換至主伺服器

編輯:Linux 教學

64 位 Ubuntu 執行 sudo apt-get install ia32-libs* 報錯「無法安裝」,主因是**本地鏡像源與官方不同步**,導致套件缺失或相依關係斷裂。解決方法是將軟體源切換至官方主伺服器。

錯誤現象

E: 有一些軟體包無法被安裝...
E: Sub-process /usr/bin/dpkg returned an error code (1)

根本原因

  • 國內鏡像站(如阿里雲、清華、中科大)同步延遲,ia32-libs 等舊套件可能已從鏡像移除或版本不匹配。
  • Ubuntu 13.10+ 已移除 ia32-libs 元套件,改用 multiarch 機制:dpkg --add-architecture i386 + apt-get install libstdc++6:i386 等具體庫。

解決步驟

  1. 切換至主伺服器源:
    • 圖形介面:軟體與更新 → Ubuntu 軟體 → 下載自 → 選 主伺服器。
    • 命令列:編輯 /etc/apt/sources.list,將鏡像域名替換為 archive.ubuntu.com 或 https://archive.ubuntu.com/ubuntu。
  2. 更新索引並安裝:
    sudo apt-get update
    sudo apt-get install -f
    # Ubuntu 14.04+ 使用 multiarch
    sudo dpkg --add-architecture i386
    sudo apt-get update
    sudo apt-get install libstdc++6:i386 libgcc1:i386 zlib1g:i386 libc6:i386

驗證 32 位相容性

# 測試執行 32 位程式
file /bin/ls
# 輸出應含 ELF 64-bit
# 編譯測試
gcc -m32 test.c -o test32
./test32

補充:舊版 Ubuntu (12.04/13.04) 仍可用 ia32-libs

若必須使用舊版,確保 sources.list 指向 old-releases.ubuntu.com。

最佳實踐建議

  • 生產環境**鎖定特定鏡像快照**,避免自動同步導致套件突變。
  • 使用 apt-cache policy ia32-libs 檢查可用版本來源。
  • 容器化 32 位應用:docker run --rm -v $(pwd):/src i386/ubuntu:20.04 隔離執行,不污染宿主機。
Copyright © Windows教程網 All Rights Reserved