Ok, para qualquer outra pessoa que aparecer nesse problema, meu chefe conseguiu descobrir:
Eu tinha a versão errada do Python em execução. Depois de voltar do Python 3.4 para o Python 2.7.8, o problema foi corrigido.
Vou começar com alguns detalhes sobre o que levou a isso:
Agora estou tendo problemas para consertar ou até mesmo remover o pacote. Por uma questão de brevidade, não incluirei a saída completa do console aqui - apenas os erros. Eu certamente posso adicionar mais, se necessário.
Primeiramente, eu fiz uma atualização do apt-get e consegui isto:
You might want to run 'apt-get -f install' to correct these.
The following packages have unmet dependencies:
virtualbox-dkms : Depends: virtualbox (>= 4.3.18-dfsg-2ubuntu1) but 4.3.18-dfsg-1 is installed
virtualbox-qt : Depends: virtualbox (= 4.3.18-dfsg-2ubuntu1) but 4.3.18-dfsg-1 is installed
De acordo com a saída de recomendação do apt-get, eu fiz isso:
apt-get -f install
E tenho:
Correcting dependencies... Done
The following packages were automatically installed and are no longer required:
linux-headers-3.16.0-23 linux-headers-3.16.0-23-generic
linux-image-3.16.0-23-generic linux-image-extra-3.16.0-23-generic
Use 'apt-get autoremove' to remove them.
The following extra packages will be installed:
virtualbox
Suggested packages:
vde2 virtualbox-guest-additions-iso
The following packages will be upgraded:
virtualbox
...
Preparing to unpack .../virtualbox_4.3.18-dfsg-2ubuntu1_amd64.deb ...
File "/usr/bin/pyclean", line 63
except (IOError, OSError), e:
^
SyntaxError: invalid syntax
dpkg: warning: subprocess old pre-removal script returned error exit status 1
dpkg: trying script from the new package instead ...
File "/usr/bin/pyclean", line 63
except (IOError, OSError), e:
^
SyntaxError: invalid syntax
dpkg: error processing archive /var/cache/apt/archives/virtualbox_4.3.18-dfsg-2ubuntu1_amd64.deb (--unpack):
subprocess new pre-removal script returned error exit status 1
Traceback (most recent call last):
File "/usr/bin/pycompile", line 35, in <module>
from debpython.version import SUPPORTED, debsorted, vrepr, \
File "/usr/share/python/debpython/version.py", line 24, in <module>
from ConfigParser import SafeConfigParser
ImportError: No module named 'ConfigParser'
dpkg: error while cleaning up:
subprocess installed post-installation script returned error exit status 1
Errors were encountered while processing:
/var/cache/apt/archives/virtualbox_4.3.18-dfsg-2ubuntu1_amd64.deb
Agora, eu não sou um cara do Python, mas pensei em pelo menos tentar ver se eu poderia corrigir esses erros de sintaxe movendo o ", e" entre parênteses nessas linhas. Quando eu mudei o acima mencionado, eu recebi o mesmo erro em uma linha em /usr/share/python/debpython/namespace.py. Eu mudei também e então recebi este erro:
root@gonzo:~# apt-get -f remove
Reading package lists... Done
Building dependency tree
Reading state information... Done
Correcting dependencies... Done
The following packages were automatically installed and are no longer required:
dkms linux-headers-3.16.0-23 linux-headers-3.16.0-23-generic
linux-image-3.16.0-23-generic linux-image-extra-3.16.0-23-generic
virtualbox-dkms
Use 'apt-get autoremove' to remove them.
The following extra packages will be installed:
virtualbox
Suggested packages:
vde2 virtualbox-guest-additions-iso
The following packages will be upgraded:
virtualbox
1 upgraded, 0 newly installed, 0 to remove and 98 not upgraded.
129 not fully installed or removed.
Need to get 0 B/15.9 MB of archives.
After this operation, 17.4 kB disk space will be freed.
Do you want to continue? [Y/n] y
(Reading database ... 209565 files and directories currently installed.)
Preparing to unpack .../virtualbox_4.3.18-dfsg-2ubuntu2_amd64.deb ...
Traceback (most recent call last):
File "/usr/bin/pyclean", line 32, in <module>
from debpython.namespace import add_namespace_files
File "/usr/share/python/debpython/namespace.py", line 28, in <module>
from debpython.pydist import PUBLIC_DIR_RE
File "/usr/share/python/debpython/pydist.py", line 27, in <module>
from string import maketrans
ImportError: cannot import name 'maketrans'
dpkg: warning: subprocess old pre-removal script returned error exit status 1
dpkg: trying script from the new package instead ...
Traceback (most recent call last):
File "/usr/bin/pyclean", line 32, in <module>
from debpython.namespace import add_namespace_files
File "/usr/share/python/debpython/namespace.py", line 28, in <module>
from debpython.pydist import PUBLIC_DIR_RE
File "/usr/share/python/debpython/pydist.py", line 27, in <module>
from string import maketrans
ImportError: cannot import name 'maketrans'
dpkg: error processing archive /var/cache/apt/archives/virtualbox_4.3.18-dfsg-2ubuntu2_amd64.deb (--unpack):
subprocess new pre-removal script returned error exit status 1
Traceback (most recent call last):
File "/usr/bin/pycompile", line 35, in <module>
from debpython.version import SUPPORTED, debsorted, vrepr, \
File "/usr/share/python/debpython/version.py", line 24, in <module>
from ConfigParser import SafeConfigParser
ImportError: No module named 'ConfigParser'
dpkg: error while cleaning up:
subprocess installed post-installation script returned error exit status 1
Errors were encountered while processing:
/var/cache/apt/archives/virtualbox_4.3.18-dfsg-2ubuntu2_amd64.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)
Nesse momento, dei a entender que estava indo pelo caminho errado e reverta minhas alterações nos arquivos mencionados anteriormente.
Eu então (realmente não sabendo o que estava fazendo naquele momento, e adivinhando como as coisas funcionam), tentei mover / var / cache / apt / virtualbox * para outro diretório e executá-lo novamente. Isso, claro, não funcionou, então eu mudei de volta.
Então eu peguei o Synaptic para tentar consertá-lo de lá. Isso não funcionou também. Se eu marcar o pacote para remoção, recebo este erro
E: virtualbox: package is in a very bad inconsistent state; you should reinstall it before attempting a removal
Não consigo seguir essas instruções, pois a opção "Marcar para reinstalação" está desativada.
Toda a saída do console do que o Synaptic tentou é a seguinte:
(synaptic:21937): GLib-CRITICAL **: g_child_watch_add_full: assertion 'pid > 0' failed
dpkg: error processing package virtualbox (--purge):
package is in a very bad inconsistent state; you should
reinstall it before attempting a removal
Errors were encountered while processing:
virtualbox
E: Sub-process /usr/bin/dpkg returned an error code (1)
A package failed to install. Trying to recover:
E neste momento estou com uma perda total. Alguém poderia me tirar daqui?
Ok, para qualquer outra pessoa que aparecer nesse problema, meu chefe conseguiu descobrir:
Eu tinha a versão errada do Python em execução. Depois de voltar do Python 3.4 para o Python 2.7.8, o problema foi corrigido.