2

On a Ubuntu 14.04 system we had installed elasticsearch 2.3.4.

The system was upgraded to 16.04

An apt-get update & upgrade tried to upgrade to elasticsearch 2.4.4.

But, we're now getting this error:

Preparing to unpack .../elasticsearch_2.4.4_all.deb ...
/var/lib/dpkg/tmp.ci/preinst: 43: /etc/default/elasticsearch: SysV: not found
dpkg: error processing archive /var/cache/apt/archives/elasticsearch_2.4.4_all.deb (--unpack):
 subprocess new pre-installation script returned error exit status 127
/var/lib/dpkg/tmp.ci/postrm: 43: /etc/default/elasticsearch: SysV: not found
dpkg: error while cleaning up:
 subprocess new post-removal script returned error exit status 127
...
Errors were encountered while processing:
 /var/cache/apt/archives/elasticsearch_2.4.4_all.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)

I have tried:

  • apt-get install -f

    dpkg: error processing package elasticsearch (--configure):
     package elasticsearch is not ready for configuration
     cannot configure (current status 'half-installed')
    Processing triggers for libc-bin (2.23-0ubuntu5) ...
    Errors were encountered while processing:
     elasticsearch
    E: Sub-process /usr/bin/dpkg returned an error code (1)
    
  • dpkg --configure -a

    no output
    
  • apt-get install --reinstall elasticsearch

    Preparing to unpack .../elasticsearch_2.4.4_all.deb ...
    /var/lib/dpkg/tmp.ci/preinst: 43: /etc/default/elasticsearch: SysV: not found
    dpkg: error processing archive /var/cache/apt/archives/elasticsearch_2.4.4_all.deb (--unpack):
     subprocess new pre-installation script returned error exit status 127
    /var/lib/dpkg/tmp.ci/postrm: 43: /etc/default/elasticsearch: SysV: not found
    dpkg: error while cleaning up:
     subprocess new post-removal script returned error exit status 127
    Errors were encountered while processing:
     /var/cache/apt/archives/elasticsearch_2.4.4_all.deb
    E: Sub-process /usr/bin/dpkg returned an error code (1)
    
  • dpkg --remove --force-remove-reinstreq elasticsearch

    dpkg: warning: overriding problem because --force enabled:
    dpkg: warning: package is in a very bad inconsistent state; you should
     reinstall it before attempting a removal
    (Reading database ... 157552 files and directories currently installed.)
    Removing elasticsearch (2.3.4) ...
    /var/lib/dpkg/info/elasticsearch.postrm: 43: /etc/default/elasticsearch: SysV: not found
    dpkg: error processing package elasticsearch (--remove):
     subprocess installed post-removal script returned error exit status 127
    Errors were encountered while processing:
     elasticsearch
    
  • dpkg --remove --force-all elasticsearch

    elasticsearch
    dpkg: warning: overriding problem because --force enabled:
    dpkg: warning: package is in a very bad inconsistent state; you should
     reinstall it before attempting a removal
    (Reading database ... 157552 files and directories currently installed.)
    Removing elasticsearch (2.3.4) ...
    /var/lib/dpkg/info/elasticsearch.postrm: 43: /etc/default/elasticsearch: SysV: not found
    dpkg: error processing package elasticsearch (--remove):
     subprocess installed post-removal script returned error exit status 127
    Errors were encountered while processing:
     elasticsearch
    
  • dpkg --purge elasticsearch

    dpkg: error processing package elasticsearch (--purge):
     package is in a very bad inconsistent state; you should
     reinstall it before attempting a removal
    Errors were encountered while processing:
     elasticsearch
    

I've even tried switching back from systemd to upstart-sysv, but after a reboot nothing has changed.

Any ideas would be welcome.

pa4080
  • 29,351
  • 10
  • 85
  • 161
eugenevd
  • 206
  • 1
  • 8
  • 2
    https://discuss.elastic.co/t/cant-start-elasticsearch-with-ubuntu-16-04/48730/8 ? – Rinzwind Jan 25 '17 at 21:24
  • I have no trouble starting or stopping the service using "service elasticsearch stop" , but this pointed me towards the /etc/default/elasticsearch file, that contained the SysV config. Thanks – eugenevd Jan 26 '17 at 09:21

1 Answers1

1

In /etc/default/elasticsearch there is a section

SysV init.d
# When executing the init script, this user will be used to run the elasticsearch service.
# The default value is 'elasticsearch' and is declared in the init.d file.
# Note that this setting is only used by the init script. If changed, make sure that
# the configured user can read and write into the data, work, plugins and log directories.
# For systemd service, the user is usually configured in file /usr/lib  /systemd/system/elasticsearch.service
ES_USER=elasticsearch
ES_GROUP=elasticsearch

I commented the entire section.

The installation was then able to proceed.

It actually prompted me with the "Install package maintainer version / Keep system version" question, which in the diff showed that the intention of the installation is to comment out that section anyways.

eugenevd
  • 206
  • 1
  • 8