無法解決未滿足的依賴關係:initscripts

無法解決未滿足的依賴關係:initscripts

我一直在嘗試按照這個小步驟安裝穩定/xenial 版本的 openvpn指導在我的 Ubuntu 16.10 上。但是,每次執行“sudo apt-get install openvpn”時,我都會收到此錯誤:

以下軟體包具有未滿足的依賴關係:

openvpn :取決於:initscripts (>= 2.88dsf-13.3)

E:無法修正問題,您持有破損的包裹。

由於我完全不知道如何解決它,我非常感謝您的幫助。

答案1

請注意,您使用的是 Ubuntu 16.10,即 Yakkety。 OpenVPN 儲存庫僅支援最高 16.04、Xenial。如果您執行apt-get install initscripts命令,結果會提供一些幫助:

However the following packages replace it:
  util-linux:i386 util-linux sysvinit-utils:i386 sysvinit-utils

這裡的問題是 openvpn 套件不知道它的依賴項在 Yakkety 中沒有任何意義。所以現在,要么

  • 從原始碼編譯以獲得最新版本的 OpenVPN,
  • 等到他們更新他們的倉庫,或者
  • 安裝 Yakkety 儲存庫中提供的舊版 OpenVPN。

先進的

如果你想修改 Yakkety 的包,你可以嘗試以下操作。我不能保證這對您有效並且不會引起問題。我得到了幫助這裡

我認為這種安裝方法帶來的一個問題是,在我使用這種方法安裝 OpenVPN 後,GUI 網路管理器無法新增 VPN 連線。命令列 VPN 連線工作得很好。堅持使用 Ubuntu 打包版本以實現最簡單的 VPN。

取得deb文件,解壓縮內容並控制:

mkdir /tmp/debwork
cd /tmp/debwork
apt-get download openvpn
dpkg-deb -x openvpn_2.4.0-xenial0_amd64.deb openvpn
dpkg-deb --control openvpn_2.4.0-xenial0_amd64.deb openvpn/DEBIAN

現在,編輯控制檔:

nano DEBIAN/control

改變:

Version: 2.4.0-xenial0

Version: 2.4.0-yakkety0

並改變:

Depends: debconf (>= 0.5) | debconf-2.0, libc6 (>= 2.15), liblzo2-2, libpam0g (>= 0.99.7.1), libpkcs11-helper1 (>= 1.11), libssl1.0.0 (>= 1.0.2~beta3), libsystemd0, init-system-helpers (>= 1.18~), initscripts (>= 2.88dsf-13.3), iproute2

到:

Depends: debconf (>= 0.5) | debconf-2.0, libc6 (>= 2.15), liblzo2-2, libpam0g (>= 0.99.7.1), libpkcs11-helper1 (>= 1.11), libssl1.0.0 (>= 1.0.2~beta3), libsystemd0, init-system-helpers (>= 1.18~), sysvinit-utils (>= 2.88dsf-13.3), util-linux, iproute2

現在建立新包:

dpkg -b openvpn openvpn_2.4.0-yakkety0_amd64.deb

並安裝:

sudo dpkg -i openvpn_2.4.0-yakkety0_amd64.deb

答案2

openvpn包告訴打包系統openvpn需要2.88dsf-13.3該包的版本或更高版本initscripts。打包系統認為不符合這個條件,拒絕安裝openvpn

我很確定那initscripts是 Ubuntu 的一部分。在我的 Ubuntu 16.04.1 LTS 上,

$ dpkg -l initscripts
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name                                   Version                  Architecture             Description
+++-======================================-========================-========================-=================================================================================
ii  initscripts                            2.88dsf-59.3ubuntu2      amd64                    scripts for initializing and shutting down the system

我的版本2.88dsf-59.3ubuntu2比所需的版本更新得多2.88dsf-13.3,請記住,您沒有。

您的系統或環境是否還有什麼未提及的地方?

sudo apt-get --dry-run install initscripts

將讓您測試我對這個問題的建議修復。我懷疑你用 sudo 棒攪動了你的系統。

相關內容