A desinstalação do Gdm falha (“script de pré-remoção retornou erro”)

2

Eu instalei o gdm no meu vps e agora quero removê-lo, mas recebo este erro:

root@server2:/etc/init.d# apt-get remove gdm3
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages will be REMOVED:
  gdm3
0 upgraded, 0 newly installed, 1 to remove and 6 not upgraded.
After this operation, 7066 kB disk space will be freed.
Do you want to continue [Y/n]? y
(Reading database ... 119416 files and directories currently installed.)
Removing gdm3 ...
invoke-rc.d: initscript gdm3, action "stop" failed.
dpkg: error processing gdm3 (--remove):
 subprocess installed pre-removal script returned error exit status 127
configured to not write apport reports
                                      invoke-rc.d: initscript gdm3, action "reload" failed.
Errors were encountered while processing:
 gdm3
E: Sub-process /usr/bin/dpkg returned an error code (1)
root@server2:/etc/init.d#
    
por exim 08.10.2013 / 10:56

1 resposta

1

ao remover o pacote, alguns scripts de limpeza são executados. parece que uma delas falha (ou seja, /etc/init.d/gdm3 ), tornando a desinstalação incompleta.

a maneira correta de corrigir isso é verificando por que o script falha. tente executar

/etc/init.d/gdm3 stop

manualmente e veja por que ele falha. corrija o erro subjacente e tente desinstalar novamente.

um hack feio

Se o problema subjacente não puder ser corrigido (por você), talvez você tenha mais sorte com a seguinte correção simples:

primeiro certifique-se de que gdm3 não esteja mais em execução (como um último ressort é possível matá-lo).

adicione a linha exit 0 ao início do arquivo /etc/init.d/gdm3 (em algum momento depois do shebang, mas antes que o script realmente faça alguma coisa; por exemplo, linha 2). isso praticamente desabilitará o script e fará com que ele pretenda sempre ter sucesso.

finalmente execute novamente a desinstalação.

NOTA : este é um hack realmente feio, pois contorna qualquer limpeza que o script init.d possa precisar executar. esteja avisado.

    
por 08.10.2013 / 11:21