Ubuntu: apt-get error: “SysV: not found”



Question:

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.


Solution: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.


Note:If u also have question or solution just comment us below or mail us on toontricks1994@gmail.com
Previous
Next Post »