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

Reply via email to