Não é possível remover / limpar um pacote devido a um erro de script de pós-remoção

0

Por acidente, eu removi anteriormente o Apache de uma instalação, em uma tentativa de remover pacotes desnecessários em um servidor LDAP. O que eu não percebi é que eu também tinha o Fusion Directory instalado, e agora não consigo reinstalar o Apache ou o Fusion Directory, já que recebo um erro sempre que eu tento uma operação com o apt / dpkg:

ckilgore@ubuntu-ldap-server:/etc/apache2/conf-available$ sudo apt install apache2
Reading package lists... Done
Building dependency tree       
Reading state information... Done
apache2 is already the newest version (2.4.18-2ubuntu3.1).
The following packages will be REMOVED:
  fusiondirectory
0 upgraded, 0 newly installed, 1 to remove and 24 not upgraded.
1 not fully installed or removed.
After this operation, 6,822 kB disk space will be freed.
Do you want to continue? [Y/n] y
(Reading database ... 98501 files and directories currently installed.)
Removing fusiondirectory (1.0.8.8-3ubuntu2) ...
apache2_invoke fusiondirectory postrm: No action required
apache2.service is not active, cannot reload.
invoke-rc.d: initscript apache2, action "reload" failed.
dpkg: error processing package fusiondirectory (--remove):
 subprocess installed post-removal script returned error exit status 1
Errors were encountered while processing:
 fusiondirectory
E: Sub-process /usr/bin/dpkg returned an error code (1)

O que eu realmente gostaria de fazer é simplesmente desinstalar completamente o Apache e o Fusion Directory, reinstalar e reimportar minha configuração para o Fusion Directory. No entanto, com este problema em vigor, não posso. Qual é a melhor abordagem para corrigir esse problema?

Abaixo estão as entradas do syslog e do apt log

syslog

Sep 17 09:26:50 ubuntu-ldap-server fusiondirectory: apache2_invoke fusiondirectory postrm: No action required
Sep 17 09:26:50 ubuntu-ldap-server systemd[1]: Reloading.
Sep 17 09:26:51 ubuntu-ldap-server systemd[1]: apt-daily.timer: Adding 8h 34min 29.316164s random time.
Sep 17 09:26:51 ubuntu-ldap-server systemd[1]: Started ACPI event daemon.
Sep 17 09:26:51 ubuntu-ldap-server systemd[1]: apache2.service: Unit cannot be reloaded because it is inactive.
Sep 17 09:29:53 ubuntu-ldap-server fusiondirectory: apache2_invoke fusiondirectory postrm: No action required
Sep 17 09:29:54 ubuntu-ldap-server systemd[1]: Reloading.
Sep 17 09:29:54 ubuntu-ldap-server systemd[1]: apt-daily.timer: Adding 6min 36.572554s random time.
Sep 17 09:29:54 ubuntu-ldap-server systemd[1]: Starting Daily apt activities...
Sep 17 09:29:54 ubuntu-ldap-server systemd[1]: Started ACPI event daemon.
Sep 17 09:29:54 ubuntu-ldap-server systemd[1]: apache2.service: Unit cannot be reloaded because it is inactive.
Sep 17 09:29:55 ubuntu-ldap-server systemd[1]: Started Daily apt activities.
Sep 17 09:29:55 ubuntu-ldap-server systemd[1]: apt-daily.timer: Adding 6h 12min 2.585803s random time.
Sep 17 09:29:55 ubuntu-ldap-server systemd[1]: apt-daily.timer: Adding 9h 49min 31.073000s random time.

term.log

Log started: 2016-09-17  09:29:52
(Reading database ... ^M(Reading database ... 5%^M(Reading database ... 10%^M(Reading database ... 15%^M(Reading database ... 20%^M(Reading database ... 25%^M(Reading database ... 30%^M(Reading database ... 35%^M(Reading database ... 40%^M(Reading database ... 45%^M(Reading database ... 50%^M(Reading database ... 55%^M(Reading database ... 60%^M(Reading database ... 65%^M(Reading database ... 70%^M(Reading database ... 75%^M(Reading database ... 80%^M(Reading database ... 85%^M(Reading database ... 90%^M(Reading database ... 95%^M(Reading database ... 100%^M(Reading database ... 98501 files and directories currently installed.)^M
Removing fusiondirectory (1.0.8.8-3ubuntu2) ...^M
apache2_invoke fusiondirectory postrm: No action required^M
apache2.service is not active, cannot reload.^M
invoke-rc.d: initscript apache2, action "reload" failed.^M
dpkg: error processing package fusiondirectory (--remove):^M
 subprocess installed post-removal script returned error exit status 1^M
Errors were encountered while processing:^M
 fusiondirectory^M
    
por Cameron Kilgore 17.09.2016 / 15:35

1 resposta

0

Você pode editar manualmente o arquivo /var/lib/dpkg/info/fusiondirectory.postrm para corrigir o erro de remoção. Pare o apache se ele ainda estiver rodando e abra o arquivo com privilégios de root e encontre a seção:

if [ -x /usr/sbin/apache2 ]; then
    if [ -x /usr/sbin/invoke-rc.d ]; then
        invoke-rc.d apache2 reload
    else
        /etc/init.d/apache2 reload
    fi
fi

Comente e tente

sudo apt-get install -f

para corrigir erros ou apenas

sudo apt-get remove fusiondirectory

para finalmente remover o diretório de fusão.

    
por Igor Shipenkov 17.09.2016 / 15:57