Nicht erfüllte Abhängigkeiten können nicht gelöst werden: Initscripts

Nicht erfüllte Abhängigkeiten können nicht gelöst werden: Initscripts

Ich habe versucht, die stabile/xeniale Version von OpenVPN zu installieren, indem ich diese kleineFührungauf meinem Ubuntu 16.10. Allerdings erhalte ich diesen Fehler jedes Mal, wenn ich „sudo apt-get install openvpn“ ausführe:

Die folgenden Pakete weisen nicht erfüllte Abhängigkeiten auf:

openvpn: Hängt ab von: Initscripts (>= 2.88dsf-13.3)

E: Probleme konnten nicht behoben werden, Sie haben beschädigte Pakete zurückgehalten.

und da ich absolut keine Ahnung habe, wie ich es lösen soll, wäre ich für Ihre Hilfe sehr dankbar.

Antwort1

Beachten Sie, dass Sie Ubuntu 16.10 verwenden, also Yakkety. Die OpenVPN-Repos unterstützen nur bis 16.04, Xenial. Wenn Sie einen apt-get install initscriptsBefehl ausführen, bietet das Ergebnis einige Hilfestellungen:

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

Das Problem hier ist, dass das OpenVPN-Paket nicht weiß, dass seine Abhängigkeiten in Yakkety keinen Sinn ergeben. Also entweder

  • aus dem Quellcode kompilieren, um die neueste Version von OpenVPN zu erhalten,
  • warten, bis sie ihr Repo aktualisieren, oder
  • Installieren Sie das ältere OpenVPN, das in den Yakkety-Repos verfügbar ist.

Fortschrittlich

Wenn Sie das Paket für Yakkety ändern möchten, können Sie Folgendes versuchen. Ich kann nicht garantieren, dass dies bei Ihnen gut funktioniert und keine Probleme verursacht. Ich habe Hilfe vonHier.

Ein Problem, das meiner Meinung nach bei dieser Installationsmethode auftritt, ist, dass der GUI-Netzwerkmanager keine VPN-Verbindung hinzufügen kann, nachdem ich OpenVPN mit dieser Methode installiert habe. VPN-Verbindungen über die Befehlszeile funktionieren einwandfrei. Bleiben Sie bei der Ubuntu-Paketversion für einfachstes VPNing.

Holen Sie sich die Deb-Datei, entpacken Sie den Inhalt und steuern Sie:

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

Bearbeiten Sie nun die Steuerdatei:

nano DEBIAN/control

Ändern:

Version: 2.4.0-xenial0

Zu

Version: 2.4.0-yakkety0

Und ändern:

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

Zu:

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

Erstellen Sie nun das neue Paket:

dpkg -b openvpn openvpn_2.4.0-yakkety0_amd64.deb

und installieren:

sudo dpkg -i openvpn_2.4.0-yakkety0_amd64.deb

Antwort2

Das openvpnPaket teilte dem Verpackungssystem mit, dass openvpndie Version 2.88dsf-13.3oder höher des initscriptsPakets erforderlich sei. Das Verpackungssystem glaubt, dass diese Bedingung nicht erfüllt ist, und lehnt die Installation ab openvpn.

Ich bin ziemlich sicher, dass das initscriptsTeil von Ubuntu ist. Auf meinem 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

Ich habe eine Version 2.88dsf-59.3ubuntu2, die viel neuer ist als die erforderliche Version 2.88dsf-13.3, die Sie, wie Sie sich erinnern, nicht hatten.

Gibt es etwas zu Ihrem System oder Ihrer Umgebung, das Sie nicht erwähnt haben?

sudo apt-get --dry-run install initscripts

Ich lasse Sie meine vorgeschlagene Reparatur für dieses einzelne Problem testen. Ich vermute, Sie haben Ihr System mit einem Sudo-Stick umgerührt.

verwandte Informationen