Não é possível resolver dependências não atendidas: initscripts

Não é possível resolver dependências não atendidas: initscripts

Tenho tentado instalar a versão estável/xenial do openvpn seguindo este pequenoguiano meu Ubuntu 16.10. No entanto, continuo recebendo esse erro sempre que executo 'sudo apt-get install openvpn':

Os seguintes pacotes têm dependências não atendidas:

openvpn: Depende: initscripts (>= 2.88dsf-13.3)

E: Incapaz de corrigir problemas, você guardou pacotes quebrados.

e como não tenho ideia de como resolver isso, agradeceria muito sua ajuda.

Responder1

Observe que você está usando o Ubuntu 16.10, que é Yakkety. Os repositórios OpenVPN suportam apenas até 16.04, Xenial. Se você executar um apt-get install initscriptscomando, o resultado oferece alguma ajuda:

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

O problema aqui é que o pacote openvpn não sabe que suas dependências não fazem sentido no Yakkety. Então, por enquanto, também

  • compilar a partir do código-fonte para obter a versão mais recente do OpenVPN,
  • espere até que eles atualizem seu repositório ou
  • instale o OpenVPN mais antigo disponível nos repositórios Yakkety.

Avançado

Se quiser modificar o pacote do Yakkety, você pode tentar o seguinte. Não posso garantir que isso funcionará bem para você e não causará problemas. Eu recebi ajuda deaqui.

Um problema que acho que vem desse método de instalação é que o gerenciador de rede GUI não pode adicionar uma conexão VPN depois de instalar o OpenVPN usando esse método. As conexões VPN de linha de comando funcionam perfeitamente. Fique com a versão empacotada do Ubuntu para uma VPN mais fácil.

Obtenha o arquivo deb, descompacte o conteúdo e controle:

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

Agora edite o arquivo de controle:

nano DEBIAN/control

Mudar:

Version: 2.4.0-xenial0

Para

Version: 2.4.0-yakkety0

E mude:

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

Para:

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

Agora construa o novo pacote:

dpkg -b openvpn openvpn_2.4.0-yakkety0_amd64.deb

e instale:

sudo dpkg -i openvpn_2.4.0-yakkety0_amd64.deb

Responder2

O openvpnpacote informava ao sistema de empacotamento que openvpnprecisava de uma versão 2.88dsf-13.3ou posterior do initscriptspacote. O sistema de empacotamento considera que esta condição não foi atendida e se recusa a instalar openvpn.

Tenho certeza que isso initscriptsfaz parte do Ubuntu. No meu 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

Eu tenho uma versão 2.88dsf-59.3ubuntu2muito mais recente que a versão necessária 2.88dsf-13.3, que, lembre-se, você não tinha.

Há algo sobre o seu sistema ou ambiente que você não mencionou?

sudo apt-get --dry-run install initscripts

permitirei que você teste meu reparo sugerido para esse único problema. Eu suspeito que você mexeu em seu sistema com um sudo stick.

informação relacionada