tags 546743 +help thanks Hi Colin and Bastian,
Le 15.09.2009 17:21, Colin Watson a écrit : > On Tue, Sep 15, 2009 at 04:47:24PM +0200, Bastian Blank wrote: >> On Tue, Sep 15, 2009 at 03:16:53PM +0100, Colin Watson wrote: >>>> The ssh init script fails to do anything useful of echo fails with EIO >>>> because of the set -e. Standard output is /dev/console during the >>>> initial startup. >>>> >>>> /dev/console is a special device. It may generate EIO on writing if >>>> no backend device is connected to it, aka while the console is >>>> missconfigured or broken. Such a system will boot up normal but the sshd >>>> will be missing, which may be needed to fix things. >>> >>> OK, but /etc/init.d/ssh doesn't echo anything directly; it just uses the >>> LSB init functions. I think they ought to be changed to explicitly >>> discard errors from console writes as appropriate. As I'm not sure I understand the problem correctly, let me try to re-formulate it: the problem is that `echo "Init status"` might fail (and hence stop the execution of an init file because of `set -e`) when it's standard output goes to a /dev/console to which root cannot write (EIO . Would a solution to that issue be a replacement of all `echo "foobar"` by `echo "foobar" || /bin/true` ? >> The LSB init script example explicitely stat that you must not use >> "set -e". > > Obvious nonsense IMO ... I can't find in which file the "must not use set -e" clause is. Thanks in advance, cheers, OdyX
signature.asc
Description: OpenPGP digital signature