On Wed, May 03, 2017 at 11:39:48AM +0200, Andreas Kusalananda Kähäri wrote:
> Hi,
>
> syspatch seems to work fine for keeping my ordinary server and router on
> -stable, thanks!
>
> However, on my diskless workstation it doesn't work so well:
>
> Get/Verify syspatch61-001_dhcpd.tgz 100% |*****************| 71733 00:00
> Installing patch 001_dhcpd
> /usr/sbin/syspatch: ??=1147776: not found
The error message could be improved but syspatch does the right thing here.
It properly aborts because it's not designed to work on a diskless system.
> This is due to stat returning "??" when asking for the device that holds
> the root (?) filesystem in the checkfs shell function. This is with
> "set -x" at the start of that function:
>
> Get/Verify syspatch61-001_dhcpd.tgz 100% |*****************| 71733 00:00
> Installing patch 001_dhcpd
> + typeset _d _df _dev _files=./usr/sbin/dhcpd
> ./usr/share/man/man5/dhcpd.conf.5
> ./var/syspatch/61-001_dhcpd/001_dhcpd.patch.sig _sz
> + echo ./usr/sbin/dhcpd ./usr/share/man/man5/dhcpd.conf.5
> ./var/syspatch/61-001_dhcpd/001_dhcpd.patch.sig
> + grep -qw bsd
> + cd /
> + stat -qf _dev="${_dev} %Sd" %Sd="${%Sd:+${%Sd}\+}%Uz" ./usr/sbin/dhcpd
> ./usr/share/man/man5/dhcpd.conf.5
> ./var/syspatch/61-001_dhcpd/001_dhcpd.patch.sig
> + eval _dev="${_dev} ??" ??="${??:+${??}\+}147776" _dev="${_dev} ??"
> ??="${??:+${??}\+}29070"
> + ??=1147776 _dev= ?? ??=129070
> + _dev= ??
> /usr/sbin/syspatch: ??=1147776: not found
> + set +e
> + rm -rf /tmp/syspatch.vlGsTTUac6
>
>
> How may I apply the binary patch on the diskless system, alternatively,
> how do I apply it to the diskless system's files on its file server?
>
> Regards,
> Kusalananda
>
--
Antoine