Package: mdadm Version: 3.4-1 Severity: important Because of a peculiar bug in dash (0.5.8-2.2) reading from sysfs using the read command, on my sysstem, line 145 of checkarray always fails with status 1, thus ending the script (set -e) and providing no hint to the administrator (via cronjob output mail) that checks are not actually being performed on schedule. Assuming it affects others, this is of course very serious.
I can reproduce the shell bug easily enough at a /bin/sh prompt: $ MDBASE=/sys/block/md126/md $ cat $MDBASE/sync_ation idle $ read cur_status < $MDBASE/sync_ation $ echo $? 1 $ echo $cur_status i The workaround for me is to use bash (start the script from the crontab using bash). It works perfectly then. -- System Information: Debian Release: stretch/sid APT prefers unstable APT policy: (500, 'unstable') Architecture: amd64 (x86_64) Kernel: Linux 4.6.0-1-amd64 (SMP w/8 CPU cores) Locale: LANG=C, LC_CTYPE=C (charmap=ANSI_X3.4-1968) Shell: /bin/sh linked to /bin/dash Init: sysvinit (via /sbin/init)

