Hello, Andreas,

Thanks for your reply.

But I think that invoke-rc.d has strange behavior. Is it OK that it starts
disabled service?

# systemctl is-enabled ipmi_port
disabled

# invoke-rc.d ipmi_port start
Job for ipmi_port.service failed. See 'systemctl status ipmi_port.service'
and 'journalctl -xn' for details.
invoke-rc.d: initscript ipmi_port, action "start" failed.
● ipmi_port.service - ipmiutil ipmi_port service
   Loaded: loaded (/lib/systemd/system/ipmi_port.service; disabled)
   Active: failed (Result: exit-code) since Tue 2016-12-20 15:27:52 +03;
5ms ago
  Process: 786 ExecStart=/usr/share/ipmiutil/ipmiutil.setup >/dev/null &&
/usr/sbin/ipmi_port -b || : (code=exited, status=6)

Dec 20 15:27:52 debian systemd[1]: Starting ipmiutil ipmi_port service...
Dec 20 15:27:52 debian systemd[1]: ipmi_port.service: control process
exited, code=exited status=6
Dec 20 15:27:52 debian systemd[1]: Failed to start ipmiutil ipmi_port
service.
Dec 20 15:27:52 debian systemd[1]: Unit ipmi_port.service entered failed
state.


2016-12-20 13:21 GMT+03:00 Andreas Henriksson <andr...@fatal.se>:

> Control: reassign -1 ipmiutil 3.0.0-2
> Control: severity -1 serious
>
> Hello Artur Molchanov,
>
> Thanks for your bug report.
>
> On Tue, Dec 20, 2016 at 12:48:25PM +0300, Artur Molchanov wrote:
> > Package: init-system-helpers
> > Version: 1.46
> > Severity: important
> >
> > Dear Maintainer,
> >
> > invoke-rc.d from init-system-helpers 1.46 starts a systemd service (e.g.
> ipmi_port.service) if it is not enabled but there are init.d
> > scripts with the same name (e.g. /etc/rc2.d/S01ipmi_port
> /etc/rc3.d/S01ipmi_port /etc/rc4.d/S01ipmi_port /etc/rc5.d/S01ipmi_port).
> >
> > It causes inability to install ipmiutil 3.0.0-2.
>
> You seem to be confused about the cause. This is simply a bug in the
> ipmiutil packaging and doesn't really have anything special to do
> with invoke-rc.d/init-system-helpers.
>
> For the record here's the output of trying to install ipmiutil on
> Debian Stretch:
>
> $ sudo apt install ipmiutil
> Reading package lists... Done
> Building dependency tree
> Reading state information... Done
> The following packages were automatically installed and are no longer
> required:
>   libmimic0 libopencv-contrib2.4v5 libopencv-legacy2.4v5 libopencv-ml2.4v5
>   libschroedinger-1.0-0 libspeechd2
> Use 'sudo apt autoremove' to remove them.
> The following additional packages will be installed:
>   rpcbind
> The following NEW packages will be installed:
>   ipmiutil rpcbind
> 0 upgraded, 2 newly installed, 0 to remove and 0 not upgraded.
> Need to get 515 kB of archives.
> After this operation, 1 474 kB of additional disk space will be used.
> Do you want to continue? [Y/n]
> Get:1 http://deb.debian.org/debian stretch/main amd64 rpcbind amd64
> 0.2.3-0.5 [45,0 kB]
> Get:2 http://deb.debian.org/debian stretch/main amd64 ipmiutil amd64
> 3.0.0-2 [470 kB]
> Fetched 515 kB in 0s (1 097 kB/s)
> Selecting previously unselected package rpcbind.
> (Reading database ... 298418 files and directories currently installed.)
> Preparing to unpack .../0-rpcbind_0.2.3-0.5_amd64.deb ...
> Unpacking rpcbind (0.2.3-0.5) ...
> Selecting previously unselected package ipmiutil.
> Preparing to unpack .../1-ipmiutil_3.0.0-2_amd64.deb ...
> Unpacking ipmiutil (3.0.0-2) ...
> Processing triggers for systemd (232-7) ...
> Processing triggers for man-db (2.7.5-2) ...
> Setting up rpcbind (0.2.3-0.5) ...
> Created symlink /etc/systemd/system/multi-user.target.wants/rpcbind.service
> → /lib/systemd/system/rpcbind.service.
> Created symlink /etc/systemd/system/sockets.target.wants/rpcbind.socket →
> /lib/systemd/system/rpcbind.socket.
> Setting up ipmiutil (3.0.0-2) ...
> Job for ipmi_port.service failed because the control process exited with
> error code.
> See "systemctl status ipmi_port.service" and "journalctl -xe" for details.
> invoke-rc.d: initscript ipmi_port, action "start" failed.
> ● ipmi_port.service - ipmiutil ipmi_port service
>    Loaded: loaded (/lib/systemd/system/ipmi_port.service; disabled;
> vendor preset: enabled)
>    Active: failed (Result: exit-code) since Tue 2016-12-20 11:00:57 CET;
> 5ms ago
>   Process: 18508 ExecStart=/usr/share/ipmiutil/ipmiutil.setup >/dev/null
> && /usr/sbin/ipmi_port -b || : (code=exited, status=6)
>       CPU: 18ms
>
> dec 20 11:00:57 mbpah systemd[1]: Starting ipmiutil ipmi_port service...
> dec 20 11:00:57 mbpah ipmiutil.setup[18508]: Can't find SMBIOS address
> entry…nt.
> dec 20 11:00:57 mbpah ipmiutil.setup[18508]: Cannot open an IPMI driver:
> /de…/0,
> dec 20 11:00:57 mbpah ipmiutil.setup[18508]:          or direct driverless.
> dec 20 11:00:57 mbpah systemd[1]: ipmi_port.service: Control process
> exited…us=6
> dec 20 11:00:57 mbpah systemd[1]: Failed to start ipmiutil ipmi_port
> service.
> dec 20 11:00:57 mbpah systemd[1]: ipmi_port.service: Unit entered failed
> state.
> dec 20 11:00:57 mbpah systemd[1]: ipmi_port.service: Failed with result
> 'ex…de'.
> Hint: Some lines were ellipsized, use -l to show in full.
> dpkg: error processing package ipmiutil (--configure):
>  subprocess installed post-installation script returned error exit status 1
> Processing triggers for systemd (232-7) ...
> Errors were encountered while processing:
>  ipmiutil
> E: Sub-process /usr/bin/dpkg returned an error code (1)
>
>
> The service is first enabled and then (attempt to get) started
> because that's what the packages maintainer script says should
> happen. If the maintainer didn't want something to be enabled/started
> he would pass the --no-enable or --no-start arguments respectively.
> This is not done...
>
> The real reason the start fails (and thus the package configuration
> and thus installation fails) is because the executed process
> exits with a failure code. It seems atleast on my system the
> reason for that is that my system simply isn't IPMI capable.
>
>
> Also the service files shipped by the debian package seems to have
> fundamental flaws. These files are declarative format and *not*
> shell scripts! (if you want to run shell script stuff, just invoke
> /bin/sh -c '....' from your service file, or put the commands
> in an actuall shell script file and execute the shell script.)
>
> ah@mbpah:/tmp/ipmiutil-3.0.0$ grep ExecStart debian/*ipmi_port.service
> ExecStart=/usr/share/ipmiutil/ipmiutil.setup >/dev/null &&
> /usr/sbin/ipmi_port -b || :
>
> (Preferably service files should come directly from upstream
> rather than being debian-specific.)
>
>
> As there seems to multiple serious packaging issues here I'm raising
> the severity accordingly.
>
> > As a result users cannot install ipmiutil in Ubuntu 16.10+.
> >
> > There is existed bug in Ubuntu bugtracker.
> > https://bugs.launchpad.net/ubuntu/+source/init-system-
> helpers/+bug/1651111
>
> Thanks for the cross-reference. You might want to add a link to
> this bug report on the ubuntu side.
> https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=848861
>
> >
> > -- System Information:
> > Debian Release: 8.6
> >   APT prefers stable-updates
> >   APT policy: (500, 'stable-updates'), (500, 'testing'), (500, 'stable')
> > Architecture: amd64 (x86_64)
> >
> > Kernel: Linux 3.16.0-4-amd64 (SMP w/1 CPU core)
> > Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
> > Shell: /bin/sh linked to /bin/dash
> > Init: systemd (via /run/systemd/system)
> >
> > Versions of packages init-system-helpers depends on:
> > ii  perl-base  5.20.2-3+deb8u6
> >
> > init-system-helpers recommends no packages.
> >
> > init-system-helpers suggests no packages.
> >
> > Versions of packages init-system-helpers is related to:
> > ii  insserv  1.14.0-5
> >
> > -- no debconf information
> >
>
> Regards,
> Andreas Henriksson
>

Reply via email to